Windows Terminalのすゝめ

かなり前の記事ですが、この記事で紹介したように、これまでターミナルにはHyper.jsを使っていました。

www.kimoton.com

Hyper.jsは気に入っていたのですが、electron製なこともあってか若干動作が不安定なところが玉に瑕でした。

そんな中、Microsoftから出たターミナルがあることを知りました。 その名も「Windows Terminal」。最近はこちらのターミナルに浮気しちゃったので、その魅力をお伝えできればと思います。

settings.jsonをいじることでキーバインドを変更できますが、基本的に変更の必要はないかと思います。 ということで、以下では変更しない場合のキーバインドを紹介しています。

Windows Terminal

特徴としては下記があげられます。

  • コマンドプロンプト・PowerShell・WSL・Azure Cloud Shellに対応
  • 複数タブ・ペインへの対応
  • Unicode および UTF-8 文字のサポート
  • GPU で高速化されたテキストレンダリング
  • テキスト・色・背景画像及びキーバインドのカスタマイズ
  • 独自テーマの作成

全体的に動作が安定しており、基本的に必要なショートカットは一通り実装されている印象です。

インストール

Windows ターミナルは、Microsoft Storeからインストールできます。
最新版が欲しい場合はGitHubのreleaseページからプレリリース版を含めインストールすることができます。

ペイン関連

ペインを使うことで、tmuxのように画面を分割して使うことができます。

キーバインド 操作
Alt + Shift + D ペインを開く
Ctrl + Shift + W ペインを閉じる
Alt + [矢印] [矢印]方向のペインに移動
Alt + Shift + [矢印] [矢印]方向にペインサイズ変更

参考:Windows ターミナルのペイン | Microsoft Docs

タブ関連

タブを使うこともできます。

キーバインド 操作
Ctrl + Shift + T タブを開く
Ctrl + Shift + W タブを閉じる
Ctrl + Tab 次のタブに移動
Ctrl + Shift + Tab 前のタブに移動
Ctrl + Alt + [数字] [数字]番目のタブに移動

参考:Windows ターミナルのペイン | Microsoft Docs

フォントサイズ変更

フォントサイズの変更も可能です。

キーバインド 操作
Ctrl + Shift + + フォントサイズを拡大
Ctrl + Shift + - フォントサイズを縮小
Ctrl + 0 フォントサイズをリセット

検索機能

以前に実行したコマンドを検索したり、特定のファイル名を検索したりすることができます。

キーバインド 操作
Ctrl + Shift + F 検索ダイアログを開く

参考:Windows ターミナルでの検索方法

(Preview版)コマンドパレット

Windows Terminal Preview 1.3からコマンドパレットが使用できるようになっています。

キーバインド 操作
Ctrl + Shift + P コマンドパレットを開く

参考:Windows Terminal Preview 1.3 Release | Windows Command Line

設定ファイル

ドロップダウンメニューのSettingsを選択、またはCtrl + ,を押下するとテキストエディタでprofiles.jsonという設定ファイルが開きます。

デフォルトターミナルの設定

defaultProfileにguidを設定することで、デフォルトで開くターミナルを変更することができます。

...
    "defaultProfile": "{07b52e3e-de2c-5db4-bd2d-ba144ed6c273}",
...
    "profiles":
    {
        "list":
        [
            {
                "guid": "{07b52e3e-de2c-5db4-bd2d-ba144ed6c273}",
                "hidden": false,
                "name": "Ubuntu-20.04",
                "source": "Windows.Terminal.Wsl",
            "startingDirectory": "//wsl$/Ubuntu-20.04/home/kimoton"
            },
        ]
    }
...

カラースキーマの変更

好みの問題。自分は「One Half Dark」を指定してます。

...
    "profiles": {
        "defaults": {
            "colorScheme": "One Half Dark",
        },
    },
...

参考:Windows ターミナルでの配色

フォントの設定

...
    "profiles": {
        "defaults": {
            "fontFace": "Cascadia Code",
            "fontSize": 10
        },
    },
...

日本語等幅フォントが好きなので、ここ2年くらいCicaを使ってます。フォントサイズとともに設定します。

参考:プログラミング用日本語等幅フォント Cica

初期ディレクトリの指定

...
    "profiles": {
        "list":
        {
            "guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
            "hidden": false,
            "name": "Ubuntu-18.04",
            "source": "Windows.Terminal.Wsl",
            "colorScheme": "One Half Dark",
            "startingDirectory": "//wsl$/Ubuntu-18.04/home/kimoton"
        },
    },
...

startingDirectoryを指定することで、WSLの初期ディレクトリをホームディレクトリに変えることができます。

参考:Support linux paths for startingDirectory of WSL distros

Beep音の設定

プロファイル設定の「bellStyle」でビープ音を有効または無効にできます。基本うっさいので消しています。

...
    "profiles":
    {
        "defaults":
        {
            "bellStyle": "none"
        },
    }
...

参考:Windows Terminal Preview 1.5 Release

終わりに

設定の紹介みたいになっちゃいましたが、着目すべきはメモリ消費の少なさとカスタマイズ性の高さになるかと思います。
強いて言うなら透過背景の設定ができるようになると嬉しいです(アクリル背景的なのはあるけど微妙)。

サクサク快適に動作するので、是非お試しください。