カラースキーマを変更する
カラースキーマとは16色のカラーパレットとデフォルトの文字色(forground)、背景色(background)、カーソル色(cursorColor)が定義されたもの。ただし文字色、背景色、カーソル色は、プロファイル側でも定義できるため、デフォルト値である。
基本的には、カラースキーマはカラーパレットの選択に利用し、文字色などは個別のプロファイルで設定したほうが、プロファイルごとに文字色などを指定しやすいだろう。面倒でなければ、逆にプロファイルごとにカラースキーマを定義して文字色などを定義してもよい。
標準のカラースキーマは、すべてdefaults.json側にある。デフォルトで定義されているのは、以下の9種類である。
Campbell
Campbell Powershell
Vintage
One Half Dark
One Half Light
Solarized Dark
Solarized Light
Tango Dark
Tango Light
Campbell(キャンベル)といえばスープ缶か悪い宇宙人ぐらいしか思い浮かばないが、アメリカでは何か色の組合せを思い出させる名前なのだろうか? ただ、定義はいたって普通に16色が指定してあるだけだ。ただし、各色ともRGB値がどれもゼロにならない「中間色」である。たとえば「高輝度の赤」(brightRed)は、RGB値が「#E74856」になっている。これに対してvintageは、「純色」が指定してあり、brightRedは「#FF0000」である。
設定したカラースキーマを確認するには、Windows Terminal内で、colortoolを使うといいだろう(記事冒頭画面)。
colortoolは、本来は、cmd.exeで、カラーパレットを設定するアプリだが、Windows Terminal内で表現できる色の組合せを形式で表示してくれる。以下のURLに実行ファイルを含むzipファイルがあるので適当なフォルダーに解凍して使う。
●Color Tool
https://github.com/microsoft/terminal/releases?after=experiment-rel-windows-inbox
ここでは、グリーンモニターを想定してGreenというカラースキーマを定義してみた。
{
"name": "Green",
"foreground": "#00FF00",
"background": "#000000",
"selectionBackground": "#004f00",
"black": "#000000",
"red": "#002F00",
"green": "#003F00",
"yellow": "#004F00",
"blue": "#005F00",
"purple": "#006F00",
"cyan": "#007F00",
"white": "#008F00",
"brightBlack": "#4F8F4F",
"brightRed": "#5F9F5F",
"brightGreen": "#6FAF6F",
"brightYellow": "#7FBF7F",
"brightBlue": "#8FCF8F",
"brightPurple": "#9FDF9F",
"brightCyan": "#AFEFAF",
"brightWhite": "#BFFFBF"
},
緑一色だと16色の設定もちょっと苦労する。リストに挙げたのは現時点での設定だが、いまでも時々修正して使っているものだ。高輝度の8色は中間色として輝度を上げておき、通常輝度の8色は純色とするが、黒と違いが分かりにくい領域は使うのを避けている。ただし、黒のRGB値には#000000を定義している。前述のcolortoolで表示させたのが、以下の画面である。
プロファイルにこのカラースキーマを使うように指示しておくと、グリーンモニターのような表示が可能になる(といっても見たことがない人もいるかもしれないが)。
Windows Terminalは、設定GUIはないものの、カスタマイズの幅が広く、従来のconhostに比べると高機能になっている。GUI設定は、ユーザーには便利だが、作るのが面倒だし、開発途中で機能が安定しないと作り直しが発生しやすく、開発側の負荷が高い部分だ。しかも、設定はアプリのメイン機能には決してならないため、「やる気」を出させる要素も少ない。筆者などもできればあんまりやりたくない部分だと思っていて、ついつい手抜きになってしまう。
そういう意味ではJSON化し、外部エディターに任せてしまうというのは、今後のアプリケーションでは主流になりそうな気もする。とりあえずはVS Codeでも入れて、JSONスキーマとJSON設定になれておくのもいいかもしれない。

この連載の記事
-
第469回
PC
Windows Updateの27年 悪役だった頃から改良が進んで、徐々に目立たない存在に -
第468回
PC
2025年のWindowsどうなる!? Windows Insider Programの状況をあらためて見る -
第467回
PC
Copilot+ PCのNPUでカメラを処理する「Windows Studio Effects」 その内容や効果は? -
第466回
PC
PowerToysの最近の新機能には、複数アプリを指定位置に起動する「ワークスペース」や新規作成のカスタマイズがある -
第465回
PC
WindowsのPowerShellからBluetoothデバイスを調べる -
第464回
PC
Windows 10のサポート切れまで1年を切った さてWindows 10マシンをどうする? -
第463回
PC
Windows Terminal Preview版でSixelグラフィックスを実際に表示させてみる -
第462回
PC
Windows Terminal Preview版でSixelグラフィックスを扱う -
第461回
PC
Copilot+ PCを買ってみたが、「今焦って買う必要はない」のかもしれない -
第460回
PC
Windowsでsftpを使う -
第459回
PC
WSL 2.4.4ではtar形式でのディストリビューションが配布でき、企業での利用が容易になってきた - この連載の一覧へ