tech.guitarrapc.cóm

Technical updates

Visual Studio への Bring PowerShell support to the editor は果てたのか

PowerShellを書く環境として、私は全面的にVisual Studio + PowerShell Tools for Visual Studioを採用しています。

何がいいかというと、なれたVisual Studioの画面でこれまで通りの操作をできる、Visual StudioのIDEサポートを受けられる点です。

少し眺めながら、将来どうなるのか見てみましょう。

Visual Studio adds language support for Powershell in Visual Studio 2012 and 2013

間違いなく現時点ではトップクラスに使いやすいPowerShellのためのVisual Studio Extension(VS拡張)です。

このVS拡張をいれることで、 Visual StudioでPowerShellがかけます。

現在、 Visual Studio 2012 / 2013で、 PowerShell 3.0とv4に対応しています。

ソリューションとプロジェクト

正直、現時点でもすでにISEを凌駕する部分が多いのですが、特にソリューション/プロジェクトはモジュールを書くときにすでに欠かせません。

image

ここにProductivity Power Tools 2013が加わるとますます操作が楽になります。

インテリセンスとシンタックスハイライト

もちろんインテリセンスもサポートしています。 シンタックスハイライトもそれなりにかかります。*1

image

ソリューションを横断した検索など

ソリューション全体を扱えるので検索がはかどるのは目覚ましいものがあります。

image

モジュールの読み込み

もちろんModuleの読み込みも可能です。

image

ただ、Manifestの設定画面はあっても、自動生成にはまだ対応していません。

image

なので、.psd1は自分で出力してあげる必要があります。

image

デバッグ

もちろんデバッグも可能です。デバッグポイントを設定して、ステップ実行も。

image

image

オブジェクトの状態もみれますし、

image

変数に合わせてTipsも。

image

ウォッチウィンドウまで可能です。

image

image

スクリプト実行 に 選択部分の実行

スクリプトとしての実行 (Shit+Alt+F5)も、選択部分の実行(Ctrl+F8) も可能です。

image

まだまだ更新されている

PesterによるUnit TestからやPSateによるテストランナー、Scriptへの引数サポート、 Read-HostやGet-Credentialのサポートなど、インタラクティブな操作にも対応してきています。

printfデバッグじゃないですが、インタラクティブな操作はまだまだPowershell ISEでの実行が勝る部分もあります。

が、スクリプト開発には、もはやISEでは足りずVisual Studioが最高です。

つまりVisual Studioかわいいよ、Visual Studio。

本家 Visual Studio が 標準で PowerShell をサポートしないの

で、これが今回の記事を書くきっかけになった残念な出来事です。

Visual Studio User Voiceで、PowerShellを標準でサポートしてー! っというリクエストがあります。

ここに昨日、2014/3/18にVisual Studio Editor TeamのMarkがコメントしています。

Mark Wilson-Thomas commented · March 18, 2014 07:58

Hi contributors. At this point we don't have any plans to add in-box PowerShell Language support to Visual Studio, since Adam Driscoll's extension covers this requirement well.

https://visualstudiogallery.msdn.microsoft.com/c9eb3ba8-0c59-4944-9a62-6eee37294597

Thanks Mark (Visual Studio Editor Team)

ふぇぇっ..... なんだってー

ということで、 本家ではサポート計画がない.... 逆に

を使えって..... ぐすん。User Voiceしましょう。

GitHub

Adam Driscollせんせー のGitHubでコードみれたりPull Requestだせるのでぜひ!

まだ、自動サインや自動Manifest生成をサポートしていないので、ぐぬぬ。

adamdriscoll / poshtools

まとめ

MVPすごい、はんぱない。Visual Studioかわいいよ

いつまでPowerShell ISEでモジュール開発してるんです?

*1:まだまだISEに及ばないけど、必要十分