Visual Studio Codeティップス
今回もPowerShell Coreのソースコードを書いて実行するための環境としてVisual Studio Codeの使い方を紹介する。
Visual Studio Codeを使う場合、PowerShell CoreのインタラクティブシェルやPowerShell Coreシェルスクリプトと同じことを実行するには、そのための設定が必要になる。今回はそういった細かいティップスを紹介しよう。
Visual Studio CodeでPowerShell Coreを編集またはデバッグするにはPowerShellエクステンションが必要だ。前提条件としてPowerShellエクステンションはインストールしておこう。
使用するPowerShell Coreのバージョンを切り替える
PowerShell Coreは複数のバージョンを同時にインストールして使うことができる。現在のリリースバージョンはPowerShell Core 6.2系だが、同時にプレビュー版であるPowerShell 7 Preview版をインストールしておいて利用することもできる。
たとえば次のスクリーンショットはVisual Studio CodeがPowerShell Core 6.2.2を使っていることを示している。
この状態から別のバージョンに切り替えるには、まずF1キーを押してコマンドパレットを表示し、そこに「session」と入力して「PowerShell: Show Session Menu」を表示させてから、「PowerShell: Show Session Menu」を選択する。
すると次はコマンドパレットに「Switch to: PowerShell Core Preview」のようなメニューが表示されるので、これを選択する。このメニューが接続するPowerShell Coreを切り替える操作になっている。
すると次のスクリーンショットのように、Visual Studio Codeが接続する対象がPowerShell Core 6.2からPowerShell 7 Preview版に切り替わることを確認できる。
Visual Studio Codeの右下を確認すると、「□ 6.2」といった表示が「□ 7.0」という表記に変わっていることがわかる。PowerShellエクステンションを使っている場合、ここに接続しているPowerShellのバージョンが表示されるようになる。ここで説明した切り替えはこの右下のバージョン番号をクリックすることからも行うことができる。クリックしたあとの手順は上記と同じだ。
このため、異なるバージョンのPowerShell Coreを同時に使うことも可能だ。上記スクリーンショットはVisual Studio Codeのウィンドウを2つ表示させ、それぞれ異なるバージョンのPowerShell Coreへ接続したものだ。異なるバージョンを同時に使用できることがわかる。
実行前に引数を指定する
シェルからPowerShell Coreのインタラクティブシェルを起動したり、シェルスクリプトにして実行するようなケースであれば、PowerShell Core実行環境にオプションを指定することができる。Visual Studio Codeから同じことをするには、少々別の手順を経る必要がある。
まず、デバッグ実行用の設定ファイル(launch.json)が必要になる。フォルダをオープンしてあればこのファイルは自動的に作成されている。フォルダをオープンしていない場合にはフォルダをオープンするとともに、場合によっては次のスクリーンショットのようにギアのアイコンをクリックして明示的に設定ファイルを作成する必要がある。
この状態でデバッグビューを表示させ、設定を「PowerShell Launch Current File」から「PowerShell Launch Current File w/Args Prompt」に変更する。これで実行前に引数の指定を求められるようになる。
ここまで設定すると、デバッグ実行を開始すると、次のように実行前にランタイムに渡すオプションの指定を求められるようになる。これで任意の引数を指定してデバッグを実施できるようになる。