土日の勉強ノート

AI、機械学習、最適化、Pythonなどについて、技術調査、技術書の理解した内容、ソフトウェア/ツール作成について書いていきます

Windowsターミナルの使い方と設定方法

tmuxの紹介 - 土日の勉強ノート」で、tmux を使い始めました。

最近、TeraTerm で tmux を使っていると、画面が乱れたりすることがありました。具体的には、左右の 2つのペインを開き、片方で作業していると、もう片方のペインが一緒に画面がスクロールしたり、表示がグチャグチャになったりしました。

いろいろ調べてみると、tmux は、TeraTerm と相性が悪い、ということが書かれているところがありました。そこで、tmux を使うときは、Windowsターミナルを使うことにしました。VirtualBox から WSL に移行したこともあり、Windowsターミナルはとても便利です。今回は、Windowsターミナルの設定や、調べた内容をまとめようと思います。

それでは、やっていきます。

はじめに

Windowsターミナルは、Windows 11 の 22H2 から、デフォルトのターミナルになったようです。Windowsターミナルは、コマンドプロンプトや、PowerShell を包含していて(たぶん、WSL も)、どれを使えばいいの?という疑問を解消してくれています。

タブ機能もあり、とても安定して動作してくれる印象です。

現在の運用は分かりませんが、もともとは、以下の GitHub で、オープンソースとして開発されていたようです。

github.com

Windowsターミナルの公式サイトは、たぶん、以下です。

learn.microsoft.com

Windows 11 の 22H2 以降は、デフォルトのターミナルということなので、インストール方法は記載しないことにします。

Windowsターミナルの設定

Windowsターミナルの設定は、下図のようにすると開くことが出来ます。

Windowsターミナルの設定の開き方
Windowsターミナルの設定の開き方

Windowsターミナルの設定:スタートアップ

左のサイドバーに設定メニューが並んでいます。最初に開くのが、このスタートアップです。

Windowsターミナルというプログラムがあるわけではなく、コマンドプロンプトや、PowerShell、WSL(これらをプロファイルと呼んでるみたい)のターミナルを、統一的に、1つのウィンドウに入れた、という感じでしょうか。

Windowsターミナルの設定のスタートアップ
Windowsターミナルの設定のスタートアップ

デフォルトで起動されるのは、PowerShell になっています。設定の変更は必要なさそうなので、次に進みます。

Windowsターミナルの設定:操作

操作の設定です。

Windowsターミナルの設定の操作
Windowsターミナルの設定の操作

「選択範囲をクリップボードに自動でコピーする」という項目は、デフォルトで OFF になっています。私は、ON に変更しました。

この項目とは関係なく、Windowsターミナルは、マウスでドラッグして、選択範囲を決めた後、Enterキーを押すと、クリップボードにコピーされます。この項目は、Enterキーを押さなくても、クリップボードにコピーされるという違いだと思います。

今のところは、この項目だけ変更しました。

他にも設定のメニューはありますが、現状は、変更が必要そうなものはありませんでした。

Windowsターミナルの設定:操作(キー割り当て)

日本語では、上と同じ「操作」の設定ですが、こちらは、キー割り当ての設定です。

Windowsターミナルは優秀ですが、貼り付けのキー割り当てがいけてません。デフォルトで、ctrl+v が割り当たっています。これは、Linux の多くの操作とバッティングしています。そこで、この ctrl+v を、TeraTerm で慣れている alt+v に変更したいと思います。

下の方にスクロールすると、「貼り付け」という項目が 3つあります。3つのキーが、「貼り付け」に割り当たっているということになります。鉛筆アイコンをクリックすると、キー割り当ての編集ができるようになります。下図では、既に、alt+v に変わっていますが、マウスでクリックして、ここをフォーカスします(見た目は変わりませんが、フォーカスしてないとキーの変更ができないようです)。好みのキーを押します。私の場合は、ここで、alt+v を押しました。そして、チェックマークをクリックすると、キー割り当てが完了します。

ちなみに、×アイコンをクリックすると、変更前の状態に戻すことができて、ごみ箱アイコンをクリックすると、キー割り当て自体を削除することができます。

最後に、保存ボタンを押すと反映されます。

キー割り当ての変更
キー割り当ての変更

Windowsターミナルの設定:外観(フォントの変更)

フォントの変更です。全てのプロファイル(Windows PowerShell など)を一括して変更するには、既定値を選択します。もし、個別のプロファイルごとに変更したい場合は、それぞれのプロファイルを選択します。

私の場合は、一括で変更するので、既定値を選択しました。そして、外観をクリックします。

プロファイルの外観をクリック
プロファイルの外観をクリック

すると、下図のように、フォント関連の設定を細かく変更できます。保存ボタンをクリックして、設定を保存し、タブを切り替えてみると、設定が反映されています。

フォント関連の設定
フォント関連の設定

Windowsターミナルの設定:JSONファイル

VSCode と同じように、JSONファイル(settings.json)を編集して、設定を変更することもできます。

下図のように、「JSONファイルを開く」をクリックします。

すると、「C:\Users\ユーザ名\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json」が開きます。

今は、特に変更は必要ないので、変更してません(上で設定した内容は反映されてると思います)。

JSONファイルを開く
JSONファイルを開く

{
    "$help": "https://aka.ms/terminal-documentation",
    "$schema": "https://aka.ms/terminal-profiles-schema",
    "actions": [],
    "copyFormatting": "none",
    "copyOnSelect": false,
    "defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
    "keybindings": 
    [
        {
            "id": "Terminal.CopyToClipboard",
            "keys": "ctrl+c"
        },
        {
            "id": "Terminal.FindText",
            "keys": "ctrl+shift+f"
        },
        {
            "id": "Terminal.PasteFromClipboard",
            "keys": "ctrl+v"
        },
        {
            "id": "Terminal.DuplicatePaneAuto",
            "keys": "alt+shift+d"
        }
    ],
    "newTabMenu": 
    [
        {
            "type": "remainingProfiles"
        }
    ],
    "profiles": 
    {
        "defaults": 
        {
            "font": 
            {
                "face": "MS Gothic",
                "size": 10
            }
        },
        "list": 
        [
            {
                "commandline": "%SystemRoot%\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
                "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
                "hidden": false,
                "name": "Windows PowerShell"
            },
            {
                "commandline": "%SystemRoot%\\System32\\cmd.exe",
                "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
                "hidden": false,
                "name": "\u30b3\u30de\u30f3\u30c9 \u30d7\u30ed\u30f3\u30d7\u30c8"
            },
            {
                "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
                "hidden": false,
                "name": "Azure Cloud Shell",
                "source": "Windows.Terminal.Azure"
            },
            {
                "guid": "{945afad4-96ef-5a83-8d47-7e04173ee9bc}",
                "hidden": false,
                "name": "Ubuntu-24.04",
                "source": "Microsoft.WSL"
            }
        ]
    },
    "schemes": [],
    "themes": []
}

おわりに

今回は、Windowsターミナルについて記事にしました。いつもですが、自分がどういう設定を行ったのかの覚書の記事です。

追加で設定を変更したときは、この記事を更新しようと思います。

最後になりましたが、エンジニアグループのランキングに参加中です。

気楽にポチッとよろしくお願いいたします🙇

今回は以上です!

最後までお読みいただき、ありがとうございました。