トークンカラーを変更してみよう
前景色を変更してもコード見づらい場合が場合があります。そのような場合にはトークンカラーを変更します。トークンの種類には表4に示すように、コメント、文字列、ループラベルなどがあります。
Token名 | 説明 |
Attribute | 属性 |
Command | コマンド |
Command Argument | コマンド引数 |
Command Parameter | コマンドパラメータ |
Comment | コメント |
Group End | グループの終わり |
Group Start | グループの始まり |
Keyword | キーワード |
Line Continuation | 行継続 |
Loop Label | ループラベル |
Member | メンバ |
New Line | 改行 |
Number | 数値 |
Operator | 演算子 |
Statement Separator | ステートメントセパレータ |
String | 文字列 |
Type | 型 |
Unknown phrase | 不明句 |
Variable | 変数 |
トークンカラーを変更するには、$psISE.Options.TokenColors["トークン名"]
を使用します。例えば、文字列のトークンカラーを白に設定する場合は次のようにします。
#トークンカラーを設定する $psISE.Options.TokenColors["String"] = "White"
独自のメニューを追加してみよう
PowerShell ISEでは独自のメニューを追加できます。独自のメニューを追加するには、$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add
メソッドを使用します。
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add(メニュー名, スクリプトブロック, キーボードショートカット)
例えば、メニュー名が「現在日時の取得」、キーボードショートカットが「F2」の場合は
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add("現在日時の取得",{Get-Date}, "F2")
のように記述します。
このコマンドを実行するとメニューに「アドオン」という項目が追加され、その下に作成したメニューが追加されます。
スクリプトブロックにはコマンドレットGet-Date
を記述しているので、[アドオン]-[現在日時の取得]を選択するとGet-Date
コマンドレットが実行され、現在日時が表示されます。
独自のメニューとして追加できるのはコマンドレットだけではありません。自作のスクリプトファイルをメニューに追加することも可能です。次のコードはメニュー名「スクリプトファイルの実行」としてスクリプトファイル「C:\Work\Test.ps1」を登録する例です。
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add("スクリプトファイルの実行",{C:\Work\Test.ps1}, "F12")
また、追加したメニューは削除することも可能で、この場合にはRemoveAt
メソッドを使用します。RemoveAt
メソッドの引数には、削除したいメニューの番号(最初に追加したメニューが0番となる)を指定します。
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.RemoveAt(0)
まとめ
背景色の変更やフォントの変更などは、筆者としては標準で備えておいて欲しいと思った機能です。ここは次期バージョンに期待したいところです。
今回紹介した方法を使用すれば、自分好みのエディタにすることができます。本稿を参考に、ぜひ自分好みにカスタマイズしていただければと思います。