ここまではWindows Terimnalの設定方法、およびその定義の調べ方を見てきました。この章ではWindows Terminalのデフォルトの設定を読んで内容を理解してみましょう。
Windows Terminalのデフォルト設定はdefaults.jsonというファイルに記録されています。執筆時の最新の設定は以下のURLで確認できます。
https://github.com/microsoft/terminal/blob/90452664ff4541a417ccc1f50d38faca39ec89bb/src/cascadia/TerminalSettingsModel/defaults.json#L1
またドロップダウンメニュー内の「設定」をAltキーを押しながらクリックすることで、実行中のWindows Terminalのデフォルト設定をJSONに関連付けられているアプリを使って開けます。
では執筆時最新のデフォルト設定ファイルの気になったところを上から順番に読み解いていきましょう。
まずは3行目のdefaultProfile
です。defaultProfile
の指定はGUIDで行います。各プロファイルにはguid
というGUIDを宣言するプロパティがあり、ここではそれを用いてプロファイルを参照しています。後に見ますがデフォルト設定にはPowerShellとcmdの2つのプロファイルが予め定義されています。
"defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
次に5行目から28行目はGlobals
オブジェクトのプロパティのデフォルト設定です。
5行目はコメントで、なぜかデフォルトい設定ファイルでは //
でコメントを記述しています。JSON5なんですかね?
8行目のlaunchMode
の定義はSchemaの中に確認できます。設定可能な値には"fullscreen"
や"maximized"
などが見られるかと思います。
このlaunchMode
の説明の中に現れるフォーカスモードというのはタイトルバーやツールバーを非表示にするモードです。keybinding
セクションに以下の設定を追加するとctrl+enterで表示・表示を切り替えられるようになるので、興味のある人は試してみましょう。
{ "command": "toggleFocusMode", "keys": ["ctrl+enter"] },
20行目のtabWidthMode
や26行目の"theme"
もlaunchMode
同様にSchema上ではenumとして定義されています(参考1, 参考2)。練習を兼ねて、どのような設定値がありそれぞれがどんな効果があるのか確認してみましょう。
30~70行目は先に述べた事前定義されたプロファイルです。その定義はやや長くて約250行ほどもあります。
各プロファイルの設定のプロパティ名と値を見ればおおよその意味は推測できてしまうと思いますが、name
, commandline
, guid
あたりが最も重要でしょうか。name
はタブやタイトルバーやドロップダウンメニューに表示される名前を定義します。commandline
は実行されるコマンドですが以下のようにsshとホスト名を指定すれば、SSH接続を行えます。
"commandline": "%SystemRoot%\\System32\\OpenSSH\\ssh.exe your_host",
guid
はすでに紹介した通りdefaultProfile
に指定する場合には必須ですが、そうでないならば省略できます。またいくつかの事前定義されたプロファイルのGUIDは予約されているので留意してください。
71行目から約200行に渡ってはプリセットのカラースキームが複数定義されています。順番に名前を挙げると"Campbell"
, "Campbell Powershell"
, "Vintage"
, "One Half Dark"
, "One Half Light"
, "Solarized Dark"
, "Solarized Light"
, "Tango Dark"
, "Tango Light"
の9個ですね。
カラースキームはプロファイル毎にcolorScheme
プロパティでカラースキームの名前(name
プロパティ)を指定します。プリセットの2つのプロファイルはCampbellを指定していることがわかるでしょう(参考1, 参考2) なお私は"Tango Dark"
を全てのプロファイルで使用しています。
276行目からファイルの終わりまではアクションを定義しています。アクションとはWindows Terminalの「機能」を司どっています。その中には新しいタブを開いたり、ウィンドウを分割(=ペインを作成)したりといった作業環境を操作するものや、全画面モードにしたり表示をレトロモードにしたり設定を一時的に変更するようなものが存在します。
各アクションにはキーボードショートカットを設定するためのkeys
プロパティが指定されているものもあります。ココを見ることでWindows Terminalが提供しているデフォルトのキーボードショートカットを知ることができます。以下に一部のキーボードショートカットを抜粋します。
-
alt+enter
もしくはf11
- フルスクリーンモードのオン・オフ -
ctrl+,
- 設定ファイルを開く -
ctrl+shift+p
- コマンドパレットを開く。コマンドパレットはすべてのコマンド=アクションから検索して実行できるUIです。日本語環境では日本語で検索しないと使えないので若干使いにくいのですが… -
ctrl+shift+t
- 新しいタブを開く -
ctrl+shift+w
- ペイン(もしくはタブ)を閉じる
ここまで見てきたようにデフォルトの設定とそれがどうして・どのように機能するのか、Schemaに遡って確認する方法を身に着けることでWindows Terminalの持つ多くの機能さらには将来追加されるであろう機能ですら調べられるようなります。