10分でWindows PowerShellの配色とフォントを変更して”使える”ツールに変貌させる

皆さんはWindows PowerShell(もしくはPowerShell Core)を使っていますか。

実は、Windows 10 April 2018 Update以降からSSHクライアントが正式にサポートされ、Windows10 でSSHリモート作業する際はWindows PowerShellが一番の選択肢となりました。

Windows PowerShellの不満

時代に追いついたWindwos PowerShellですが、大きな不満がございます!SSHでラズパイにリモートログインした際の、この悪魔的配色!!

文字が読めないWindows PowerShellの悪魔的配色
青文字と蛍光グリーンが痛い

紺の背景に青色文字なんて絶対に読めないし、蛍光グリーンの文字が目に刺さるってチカチカする。まだこれぐらいなら気合で読めるのですが、とあるPythonサンプルスクリプトをVimで開いてみましょう。

文字が読めないWindows PowerShellの配色その2
コメントの青文字が消えた・・・

この配色はまさに狂気の沙汰 !!!

唖然としてそっ閉じしてしまう配色ですね。配色も悪ければフォントも悪い。これでもフォントを18ptに上げているので、実際はもーっと見にくいです。したがって、起動は遅くても程よい配色で表現してくれるVisual Studio Code版のターミナルに逃げちゃうのです(実際、私もそうでした)。

否!!!

Windows PowerShellだってカスタマイズすれば、十分使えるSSHクライアントになり得るのです。例えばこんな風に、ものの10分程度で。※画像中央のスライドバーを左右に動かしてみてください

どうですか、MacのTerminalにも劣らないカラーではないでしょうか?これならリモートでのプログラミングも捗りますね。

この記事で書いてあることはWindows PowerShellでもPowerShell Core 6.x~でも同じ操作でカラーテーマを変更できます。では早速カスタマイズしていきましょう。

Windows PowerShellの配色を変更する

手作業で色を変えていく訳ではありません。なんとWindowsコンソールのエンジニアリングチームが作成した”非公式”の配色変更ツール「Color Tool」があるのです。さっそくGitHubよりzipファイルをダウンロードします。
https://github.com/microsoft/terminal/releases/latest

Windowsコンソールのエンジニアリングチームが作成した”非公式”のColor Toolをダウンロード
ColorTool.zipをダウンロードする

ダウンロードしたColorTool.zipを適当なディレクトリに解凍します。そしてWindwos PowerShell(もちろんx86ではないほうで)を立ち上げ、解凍したColorToolのディレクトリへ移動します。

Windows PowerShellでダウンロードしたColor Toolフォルダに移動する
ColorToolを解凍したディレクトリへ移動する

ColorToolの実行ファイルがあるので、-sオプションをつけて実行すると、カスタマイズ可能な配色一覧が表示されます。

> .\ColorTool.exe -s
Color Toolで設定できる配色一覧を確認

左に表示されている「campbell-legacy」や「OneHalfDark」といった名前が配色のテーマ名です。ちなみに以下のオプションが利用できます。

オプション一覧
-?, –help : Display this help message
-c, –current : Print the color table for the currently applied scheme
-q, –quiet : Don’t print the color table after applying
-d, –defaults : Apply the scheme to only the defaults in the registry
-b, –both : Apply the scheme to both the current console and the defaults.
-s, –schemes : Display all available schemes
-v, –version : Display the version number

https://github.com/Microsoft/Console/tree/master/tools/ColorTool

自分好みのテーマカラーを選んでみよう

ColorToolで用意されているテーマカラーを現在のターミナルに反映させるには、ColorTool.exeのあとにテーマ名を入力するだけです。例えば、OneHalfDark.itermcolorsを反映させる場合は次のコマンドを入力します。

> .\ColorTool.exe OneHalfDark.itermcolors
現在のターミナルにOneHalfDark.itermcolosを反映させたところ

テーマが変更されて、カラフルな表が表示されます。表の見方は次のとおりです。

  • 文字色は表示されている通りになる(左から右まで全て同じ文字色)
  • 背景色が左:40m から 右:47mまで8色あるので、好きな色をPowerShellのプロパティで選択する

テーマによっては次の画像のように色が変になってしまうものがあります。

テーマの色がおかしい

そんなときは、-b-dオプションでデフォルトテーマを変更したあとに、PowerShellを再起動すると正しいカラーが反映されます。

各テーマを反映させたPowerShellでvimを開いたところ

テーマがたくさんあって比較が面倒な方のために、各テーマを反映させて、SSHリモートログインしたLinux上のVimでPythonファイルを編集している画面をキャプチャしました。

テーマの中でも OneHalfLight.itermcolors は特徴的です。普段のターミナルの背景は白色なのに、Vimでファイルを開いたときだけ、背景が暗くなります。かっこいいですね。

Windows PowerShellのデフォルトテーマに反映する

デフォルトにしたいテーマを決めたらColorTool.exeのあとに-bdのオプションをつけるだけです。ここでは、solarized_light.itermcolorsをデフォルトにしてみましょう。次のコマンドを入力してください。

> .\ColorTool.exe -b solarized_light.itermcolors
solarized_light.itermcolorsをデフォルトテーマに設定したところ

一度、PowerShellを再起動してみて、デフォルトテーマが変更されていることを確認してください。

ちょっとsolarized_lightの背景が黄色がかっていたので、白寄りにしてみました。

solarized_lightの背景を白寄りに変えたところ
solarized_light.itermcolorsの背景を白寄りにした

上の図は、SSHでラズパイ上のPythonスクリプトをVimで開いたところですが、いい感じですね!ちなみに画面の背景色の値を「赤:248,緑:246,青;241」に変えています。

solarized_lightの背景を白寄りに変える
画面の背景 → 選択した色の値を変更しました

これで配色は改善されましたが、フォントが細くで読みづらいですね。これも変更してしまいましょう。

Windows PowerShellのフォントを変更する

今回は、オープンフォントライセンスとして公開されているプログラミング用フォント Myrica(ミリカ) を適用します。Myricaは、プログラミング用に作られたTrueTypeフォントで、視認性、判別性が高くなるように、複数のフォントファイルを元に合成/修正されたものです。 次のURLよりダウンロードできます。

Windows PowerShellに使えるフォント/MyricaMをダウンロードする
MyricaM.ttc zip圧縮版 をダウンロードする

解凍して作成されたフォルダ内に「MyricaM.TTC」というフォントファイルがあるので、右クリックしてインストールします。

Windows PowerShellに使えるフォント 
MyricaMをインストールする
フォント MyricaM Mをインストール

あとはPowerShellのプロパティから、フォントの項目で先ほどインストールした「MyricaM M」を選択するだけです。

Windows PowerShellにMyricaMを反映
フォントを MyricaM Mに指定

すると、じゃーーーーん!!

MylicaM反映後
フォントを MyricaM Mに変更した

とても見やすい。これならフォントサイズを下げても十分な視認性はありそうです。試しに16ptにしてみたのが下の図です。

MylicaMはフォントサイズを下げても十分見やすい
フォントサイズを16ptに変更した

十分読めますね、この表示であればコンソールとして満足です。

以上で、フォント変更は終了です。他にも好きなフォントをインストールすれば、PowerShellに反映可能なので、自分好みにカスタマイズして、快適なPowerShellライフを送ってくださいね。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です