Windows ターミナルでブロードキャスト入力を使用する方法
同じコマンドを複数のターミナルで何度も手入力するのは地味に大変です。 例えば、お仕事で複数台のサーバーを管理している場合に、 それらのサーバー1台1台に同じコマンドを入力していくというのは、 それだけでかなり大変な作業になります。 1度の入力で複数のターミナルに対して同時入力ができる機能があると便利です。
ブロードキャスト入力とは?
ブロードキャスト入力は1度の入力で複数のターミナルに対して同時入力ができる機能です。 Windows ターミナルのバージョン 1.19 からこの機能が使えるようになりました。 めちゃくちゃ便利な機能ですのでオススメです。
ブロードキャスト入力を使用する
Windows ターミナルをバージョンアップする
ブロードキャスト入力は Windows ターミナルのバージョン 1.19 から使用できますので、 まずはバージョンを確認しましょう。 1.19 になっていない方はバージョンアップしましょう。 Microsoft Store アプリなどからバージョンアップできるかと思います。
ウィンドウを分割する
Windows ターミナルでブロードキャスト入力を使用するためには、 ウィンドウを複数のペインに分割する必要があります。 ブロードキャスト入力は、1つのタブの中の他のペインに対してのみ使用できます。 別のタブや別のウィンドウに対しての同時入力は効きませんので注意してください。 これはおそらく、知らない間に他のタブなどで同時入力が起動していて、 意図せぬ処理を行ってしまうという事故を防ぐための制限だと思われます。 Windows ターミナルの使い方がわからない方は「Windows ターミナルの使い方」を参照してください。
自動で分割(複製) | Alt + Shift + D |
---|---|
横方向に分割 (既定のプロファイル) |
Alt + Shift + - |
縦方向に分割 (既定のプロファイル) |
Alt + Shift + + |
自動で分割 (別のプロファイル) |
Alt を押しながら ドロップダウンメニューのプロファイルを選択 |
ブロードキャスト入力を有効化する
ウインドウを複数のペインに分割できたら、ブロードキャスト入力を有効化しましょう。 ブロードキャスト入力を有効化するには、まずコマンドパレットを開きます。 コマンドパレットは「Ctrl + Shift + P」で開くことができます。 次に表示されたコマンドパレットの中から「ブロードキャスト入力をすべてのウィンドウに切り替える」を検索して選択します。
ブロードキャスト入力が有効になったら、タブの左上にアンテナのアイコンが表示されますので、 ブロードキャスト入力が有効になっているかどうかわからなくなったら、そのアイコンを確認しましょう。
ブロードキャスト入力を解除する
ブロードキャスト入力を解除したい場合は、 再度コマンドパレットから「ブロードキャスト入力をすべてのウィンドウに切り替える」を選択します。
ショートカットキーを割り当てる
ブロードキャスト入力を使用するには、いちいちコマンドパレットから選択する必要があるわけですが、 さすがにこれだとメンドウだと思いますので、ショートカットキーを割り当てると良いと思います。 実は Windows ターミナルには、自分でショートカットキーを割り当てることができる機能があります。 Windows ターミナルでショートカットキーを割り当てるには、設定画面で行う方法と、settings.json で設定する方法の2つがあります。
設定画面で設定する
設定画面の「操作」の画面でショートカットキーの割り当てができます。 ちなみにですが、左サイドバーのメニューには何故か「操作」のメニューが2つあるので注意してください。 キーボードのアイコンが表示されている方の「操作」メニューで設定できます。
「操作」画面を開いたら、「+新規追加」ボタンを押し、 「ブロードキャスト入力をすべてのウィンドウに切り替える」を選択します。 そして右の枠の中でショートカットにしたいキーを押すと、 そのキーでショートカットの登録を行うことができます。
settings.json で設定する
設定画面の左下にある「JSON ファイルを開く」から settings.json を編集して設定する方法もあります。
settings.json の actions
の項目がショートカットキーの設定になります。
command
の項目で実行するコマンドを指定し、keys
の項目でショートカットのキーを指定します。
ブロードキャスト入力の切り替え用のコマンドは toggleBroadcastInput
です。
ショートカットのキーはご自身のお好きなキーを使用すると良いでしょう。
この記事では「Ctrl + Shift + B」で切り替える例を記載しておきますので、参考にしてみてください。
{ "$help": "https://aka.ms/terminal-documentation", "$schema": "https://aka.ms/terminal-profiles-schema", "actions": [ { "command": "toggleBroadcastInput", "keys": "ctrl+shift+b" }, { "command": { "action": "copy", "singleLine": false }, "keys": "ctrl+c" }, { "command": "paste", "keys": "ctrl+v" }, { "command": { "action": "splitPane", "split": "auto", "splitMode": "duplicate" }, "keys": "alt+shift+d" }, { "command": "find", "keys": "ctrl+shift+f" } ], (以下、省略) }