コマンドパレットとAction
v1.2ではコマンドパレットが導入され、その後も強化が進められている。
コマンドパレットは「Ctrl+Shift+P」で開く(VS Codeと同じである)。ここでは、ActionとCommandを検索で呼び出して実行できる。Actionとは、キーに割り当てることができる機能で、Commandは、コマンドラインオプションで指定できるサブコマンドだ。Windows Terminalでは、前者を実行することをActionモード、後者をCommandモードと呼ぶ。
さらにコマンドパレットでは、メニュー構造を実現できる。たとえば、「set color schme」というActionを実行すると、コマンドパレットは、カラースキームの一覧を表示してユーザーがこれを選択して指定が可能になる。キー割り当てでは、“command”キーワードで動作を指定していたが、メニュー構造の場合“commands”キーワードを使って定義する。
こうしたActionは、defaults.jsonのActionsオブジェクトに定義がある。もともとkeybindingsという名前だったが、キー割り当てだけでなく、Actionすべてを定義するようになったことから、名称が変更された。
なお、settings.jsonのkeybindingsにもActionを記述することは可能なようだ。settings.jsonはdefaults.jsonの定義を上書きするようになっているため、こちらで定義したcommandsが有効になる。とはいっても、いまのところdefaults.jsonで必要なものは定義されているためそれほどカスタマイズが可能というわけでもない。実際にやってみたが、独自のメニューを作るとWindows Terminalがエラーで落ちてしまうようだ。
これに対してcommandモードは、wt.exeのコマンドラインオプションを受け付ける。v1.5では、コマンドパレットの先頭に表示されている“>”をバックスペースで消すとcommandモードとなり、wt.exeのコマンドラインオプション、たとえば“new-tab”を受け付ける。省略形の“nt”も可能だ。ただし、v1.5ではCommandモードではコマンド名の補完や検索候補の表示ができない。
イメージ的には、起動したあとに自分自身に対してコマンドラインを再度指定するのと同じだ。Commandモードで利用できるコマンドラインオプションに関しては、冒頭のWindows Terminalの過去記事でまとめてある。
ただ、v1.4で英語だったAction名がv1.5では日本語表示になった。日本語の表示はわかりやすい反面、日本語でしか検索ができないのと、現状キーアクション名と日本語の対応のドキュメントがなく、かえってアクションを選択しづらい。
たとえば、英語の「Split Pane」が「ウィンドウの分割」になってしまっている。意味的には間違っていないが、「ペイン」がどこにも入っておらず、かえってわかりにくい。同じくコマンドパレットを持つVS Codeでは、日本語と英語の両方を表示して選択を簡単にしている。このあたりは見習ってほしいところ。とはいえ、まだプレビューであり、開発段階である。気長に待つことにしよう。
この連載の記事
-
第457回
PC
IPv6アドレスは先頭を見ればどんな種類かわかる -
第456回
PC
あらためてIPv6基本のキ -
第455回
PC
Windowsで現在どのネットワークアダプタがインターネット接続に使われているかを調べる方法 -
第454回
PC
Windows 11 24H2では「デバイスの暗号化」の条件が変わり、より多くのPCでドライブが暗号化される -
第453回
PC
Windows 11 24H2の配布開始後もすぐにはやってこない Windows UpdateとSafeguard Holds -
第452回
PC
Windows 11 Ver.24H2が登場 Copilot+ PCとそうでないPCで実質Windowsが2つに分かれる -
第451回
PC
新しいWindowsサンドボックスではコマンドラインからの制御が可能に -
第450回
PC
ユニコードで文字数を数える方法 -
第449回
PC
WSLはプレビュー版でGUIでの設定が加わった! リリース2.3.xの新機能を見る -
第448回
PC
PowerShellで面倒なオブジェクトはPSCustomObjectに変換するのが早道 -
第447回
PC
この秋登場のWindows 11の新バージョン、Ver.24H2の状況を見る - この連載の一覧へ