カラースキーマを変更する
カラースキーマとは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設定になれておくのもいいかもしれない。
本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
-
第533回
PC
PCの世界ではすっかり存在感が薄くなった光学メディアをあらためて整理 -
第532回
PC
モニターの情報が含まれる「VESA EDID」をWindowsで調べる方法 -
第531回
PC
Windowsのコンソール上でUnix/Linuxの標準的なコマンドを動かす「Windows CoreUtils」 -
第530回
PC
Windows 11でタスクバーの位置の移動機能が復活するのは結局どうなった? プレビュー版の現状を見る -
第529回
PC
Windowsの標準スクリプト言語であるPowerShellの現状をあらためて紹介する -
第528回
PC
Windows 11の標準機能でメモリに問題がないかを診断する -
第527回
PC
Windowsがクラッシュする原因を究明する方法 AIを活用すると結構早い -
第526回
PC
今年6月にPCが起動しなくなる心配はないが、セキュアブートが機能しないとWindowsのセキュリティ機能は一部使えなくなる -
第525回
PC
6月以降「PCが起動不可能に?」と間違った騒がれ方をしている原因の「セキュアブート」とは? -
第524回
PC
Windows Insider Programが変化 チャンネルが3つになって整理される -
第523回
PC
AI傾倒に一息入れて、既存のWindowsの改良を宣言するMicrosoft タスクバーを画面の上下左右に移動可能に!? - この連載の一覧へ












