PowerShell でスクリプトを書く時は、OS 標準で導入されている PowerShell ISE が便利だけど、この前、Ansible を使った時に Ansible レシピとかを書くために Visual Studio Code(以下 VS Code)を使ってみると、だいぶ進化してたので、VS Code に PowerShell の拡張機能を入れて使ってみる。
Visual Studio Code について
VS Code は Microsoft が 2015年に発表したいろんな言語が扱えるエディター。この VS Code は他の Microsoft 製品とは違ってオープンソースとして開発されているので、Windows/Microsoft のスクリプトだけではなく、いろんな言語が扱えるのがいいところ。
VS Code のインストール
VS Code は以下のサイトから行える。
https://code.visualstudio.com/
「Download for Windows」をクリックしてダウンロード。VS Code は macOS と Linux 向けにも提供されてます。
「同意する」を選択して、「次へ」をクリック。
「次へ」をクリック。
「次へ」をクリック。
好みの項目にチェックを付けて、「次へ」をクリック。
「インストール」をクリック。
「完了」をクリックしてインストールは完了です。
VS Code の日本語化
エディタなので、英語のままでもそんなに困ることはないけど、やっぱり日本語になってたほうがいいので、日本語化します。ただ、そんなに面倒ではなく日本語パックをインストールするだけ。
エクステンションの検索から「japanese」と入れると「Japanese Language Pack for Visual Studio Code」が表示されるので「Install」をクリックするだけ。
VS Code の再起動が要求されるので「Restart Now」をクリックしてアプリの再起動。
再起動後、自動的に日本語になってます。
VS Code への PowerShell 拡張機能のインストール
PowerShell 拡張機能のインストールも日本語化と同様に PowerShell で検索すると出てくるのでインストールするだけ。
VS Code で PowerShell を書いてみる
IntelliSense がめっちゃいい
VS Code は ISE と比べても、IntelliSense 機能がワンランク上に位置している。まず、動作がめっちゃ軽い。入力にリアルタイムで候補を出してくれるからストレスがない。
あと、コマンドレット名を入力後にスペースを入力すると自動的に利用できる引数をポップアップで表示してくれる。
で、「-」を入力すると、付ける引数の一覧を表示してくれるのがめっちゃ便利。
デバック時の変数表示が便利
まずはブレークポイントの設定も ISE と同じで F9 キーで可能。ブレークポイントの場所は行数の左横に赤い丸が付きます。で、VS Code だとここの赤い丸をマウスでクリックすることでブレークポイントの On/Off の設定が可能なのも便利。
PowerShell ISE だとデバック時に変数の中を見たい時は変数の上にマウスオーバーしたり、コンソールウィンドウで変数を表示したりしてためど、VS Code だと左側のウィンドウ内に「変数」っていうのが出て、そこに変数の中身が表示される。
あと、いつも Get-Member とかで使えるプロパティとかも確認してたけど、見てのとおり、この例だと $a を開くと使えるプロティのすべて表示されてるのでスクリプトを書く効率は上がりそう。
VS Code + PowerShell 拡張機能 は万能ではない
機能というよりもインフラの管理していると、どのサーバーでも共通して利用できるっていうところが重要なところになるので、やっぱり Windows 標準で導入されている PowerShell ISE は今後も使っていくと思う。
ただ、VS Code + PowerShell 拡張機能の方が効率的にスクリプトを書くことができるので、開発環境でガッツリと書く時飲み使うとかの使い分けは必要になると思う。