カラースキーマを変更する
カラースキーマとは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設定になれておくのもいいかもしれない。
この連載の記事
-
第436回
PC
Copilot+PCとともにWindowsのデバイス間連携に大きな変化!? Project ROMEの逆襲? -
第435回
PC
Windows Terminal Preview v1.21では、前回終了時のタブとその表示内容を復元できるように -
第434回
PC
AIの急速な導入がWindowsの予定を変えた!? Windows 12がすぐには出ない可能性 -
第433回
PC
Windows 11の2つのウィジェットを調べる -
第432回
PC
ウェブブラウザが切り開いたWindowsでのタブアプリケーション -
第431回
PC
Windows上でユニコードを「見る」方法 -
第430回
PC
WindowsからWordPadが廃止! RTF(Rich Text Format)はどうなる? -
第429回
PC
Windows Updateの「利用可能になったらすぐに最新の更新プログラムを入手する」はオンにした方がいいか? -
第428回
PC
Google/Bingで使える検索オプション -
第427回
PC
WindowsのPowerShellのプロファイルを設定する -
第426回
PC
WindowsでAndroidスマホをWebカメラにする機能を試した - この連載の一覧へ