Windowsのターミナルをかっこよくしよう!!!


mac使ってる人のターミナル......かっこいいなあ......

と思うのです。仕事ではmacを使って開発を行っていますが、ターミナルをカスタマイズするとテンションが上がります。業務に使うmacにはiterm2を入れたり、暇な時間にフォントやカラーをカスタマイズしてテンションを上げています。その一方でプライベートではWindows派なので、基本的にはPowerShellを使っています。

ちょっとダサいPowerShell

PowerShellはよく使うしたまに記事も書くくらいには好きです。しかしながら、Windows特有のあの感じとでもいうのでしょうか、なんともダサい感じです(背景青くて文字が読みずらいし...)。

やったこと

なんとかかっこいいターミナルを作りたくてやったことをまとめます。これで必ずしも完成ではないので今後も追記していく予定です。もしより良い手段や設定をご存じでしたら教えていただければありがたいです。

Windows Terminal

Windows Terminalを使います。
https://docs.microsoft.com/en-us/windows/terminal/
https://github.com/microsoft/terminal
結局のところマイクロソフト謹製になってしまうのですが、将来性や情報量、質の面でこれがベストだと考えました。ほかにもFluent Terminal(なぜか管理者権限で実行できない)、Terminus(かっこいい!!!でもちょっともっさりしている)、Alacritty(なぜか起動しない)などは検討しました。

Windowsのダークモードを使う

標準ですとなんか灰色っぽくて今から行うダーク感のある設定から浮いてしまうのでダークモードにします。

やっぱり黒が一番

かっこいいフォントを使う

https://github.com/adobe-fonts/source-han-code-jp/releases
なんかAdobeが作ってるかっこいいフォントです。Windows Terminal標準でもかっこいいので気休めっぽいけど入れました。

Windows Terminalの設定

Windows Terminalはsettings.Jsonを編集することで設定を変えられます。この時使うエディタはVScodeがいいと思います。なぜかサジェストしてくれます。

Icebergっぽいカラーテーマを作る

Windows Terminalは各種カラーテーマを用意していて、何種類かはその名前をsettings.jsonで指定するだけで設定が反映されます。
https://docs.microsoft.com/ja-jp/windows/terminal/customize-settings/color-schemes
この中に好みのものがあればそれを使うといいと思います。僕はmacでもIcebergというカラーテーマを使っていてそれを使いたいと思いましたが、特に公式的には用意されていませんでした。
調べていたらカラーテーマを作成されている方を見つけたので個人のメモっぽいですが借用させてもらいました。
https://gist.github.com/kshimi/86a6d840bab526c427b6e71acde44a81

これをsettings.jsonのschemes内に記入します。

    // Add custom color schemes to this array
    "schemes": [{
        "name": "Iceberg",
        "foreground": "#c6c8d1",
        "background": "#161821",
        "black": "#161821",
        "red": "#e27878",
        "green": "#b4be82",
        "yellow": "#e2a478",
        "blue": "#84a0c6",
        "purple": "#a093c7",
        "cyan": "#89b8c2",
        "white": "#c6c8d1",
        "brightBlack": "#6b7089",
        "brightRed": "#e98989",
        "brightGreen": "#c0ca8e",
        "brightYellow": "#e9b189",
        "brightBlue": "#91acd1",
        "brightPurple": "#ada0d3",
        "brightCyan": "#95c4ce",
        "brightWhite": "#d2d4de"
      }],

これでIcebergをテーマとして使用できます。

settings.jsonの編集

標準では以下のようにとくに見た目の設定はされていません。

           // Make changes here to the powershell.exe profile
            "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
            "name": "Windows PowerShell",
            "commandline": "powershell.exe",
            "hidden": false,

この項目にエディタや見た目の設定を記述していきます。cmdの設定も下に続いていますが特に使わないので僕は設定しません。項目は同じなのでお好みで。

透けさせたい

ウィンドウが透けているとかっこよいです、透けさせましょう。

"acrylicOpacity" : 0.8,
"useAcrylic" : true

acrylicOpacityの数字を小さくすると透明度が上がります。あんまり透明すぎてもあれなので僕は控えめにしています。acrylicOpacity単体では記述しても意味はなく、useAcrylicをtrueにしないと透過設定は反映されません。

フォントを変えたい

 "fontFace" : "Source Han Code JP"
 "fontSize": 13

これだけです。お好きなフォントを指定しましょう!サイズも!

カラーテーマを変えたい

"colorScheme" : "Iceberg",

今回は上記に設定したIcebergにしましたがSolarizedなどの人気テーマも標準であるのでそちらが好きな方はより簡単です。こんなかんじに

"colorScheme" : "Solarized Dark"

カーソルを変えたい

"cursorShape": "filledBox",
"cursorColor" : "#FFFFFF"

カーソルの形は

"bar"
"emptyBox"
"filledBox"
"underscore"
"vintage"

があり、僕は"filledBox"にしていて、色も変えられるようです。
VScodeで見るとこんな感じにサジェストしてくれます。

結果

いくつかコマンドレットを打ってみました。背景透けています...!

vagrant内を見ることも多いのでいくつか操作をしてスクショしてみました。

いい感じにかっこよくできたのではと思ってテンションが上がっています!!!!!

まとめ

ターミナルは毎日開くし眺めている時間も比較的多いものだと思うので、それがかっこいいだけで毎日楽しくなります。割りといい感じにできたのではないかなと思います。
とはいえ問題点もあって、当然ながら標準より少しもっさりしていたり、画面左端右クリックですぐ出せる気軽さにはどうしても勝てないといった面でマイナスはあります。
また、この設定に問題点や、もっとかっこよくできる設定などありましたらぜひともご指摘いただけましたら幸いです。