Windows ターミナルでのテキスト選択
Windows ターミナルでのテキストの選択は簡単ですが、この領域にはさらに優れた機能がたくさんあります。
マウスを左クリックしながらドラッグすると、選択範囲を作成できます。 ダブルクリックすると単語単位で、トリプルクリックすると行単位で選択範囲を拡張できます。
Alt キーを押しながらの場合は、(行選択ではなく) ブロック選択を作成できます。 ブロック選択の場合、行末まで含まない四角形の領域を作成できます。
Shift キーを押しながらの場合は、クリックやドラッグを使わずに、明示的に選択範囲をターミナルの特定のポイントまで拡張できます。
選択範囲ができたら、いくつかのオプションがあります。 1 回左クリックすると、選択範囲はクリアされます。 実際に使う場合は、選んだテキストを右クリックしてクリップボードにコピーしてから、選択範囲をクリアすることができます。 もう一度右クリックすると、クリップボードの内容がターミナルに貼り付けられます。
注意
Windows ターミナル では、Linux 用 Windows サブシステム (WSL) アプリケーション、および仮想ターミナル (VT) 入力を使用する Windows アプリケーションでのマウス入力がサポートされています。 つまり、tmux や Midnight Commander などのアプリケーションでは、ターミナル ウィンドウで項目を選択したことが認識されます。 アプリケーションがマウス モードの場合は、VT 入力を送信する代わりに、Shift キーを押しながら選択できます。
選択範囲を作成するには、selectAll
または markMode
アクションを使います。 selectAll
アクションを使うと、バッファー内のすべてのテキストを選択できます。 markMode
アクションを使うと、ターミナルのカーソル位置に選択範囲を作成する特殊なモードを切り替えることができます。 マーク モードでは、次の構成不可能なキー バインドを使ってカーソルを動かすことができます。
キー バインド | 結果 |
---|---|
方向キー | 指定した方向に 1 文字ずつ移動します |
Ctrl + ← | 前の、または既存の単語の先頭に移動します |
Ctrl + → | 次の、または既存の単語の末尾に移動します |
Home | 行頭に移動します |
End | 行末に移動します |
PageUp | 1 ページ上に移動します (ビューポート) |
PageDowin | 1 ページ下に移動します (ビューポート) |
Ctrl + Home | バッファーの先頭に移動します |
Ctrl + End | バッファーの末尾に移動します |
Enter | 現在の選択範囲をコピーする |
マーク モードのときは、Tab キーまたは Shift + Tab キーを使って、バッファー内の次または前のハイパーリンクに移動できます。 experimental.detectUrls
が有効になっている場合、Windows ターミナルではハイパーリンクを自動的に検出できます。
マーク モードかどうかにかかわらず、次の構成不可能なキー バインドを使って、既存の選択範囲を拡張できます。
キー バインド | 結果 |
---|---|
Shift + 方向キー | 指定した方向に 1 文字ずつ拡張します |
Ctrl + Shift + ← | 前の、または既存の単語の先頭まで拡張します |
Ctrl + Shift + → | 次の、または既存の単語の末尾まで拡張します |
Shift + Home | 行頭まで拡張します |
Shift + End | 行末まで拡張します |
Shift + PageUp | 1 ページ上まで拡張します (ビューポート) |
Shift + PageDown | 1 ページ下まで拡張します (ビューポート) |
Ctrl + Shift + Home | バッファーの先頭まで拡張します |
Ctrl + Shift + End | バッファーの末尾まで拡張します |
既存の選択範囲をブロック選択に変換するには、toggleBlockSelection
アクションを使います。
キーボードで作成または変更した選択範囲には、選択範囲のどの端がアクティブに動いているかを示す選択マーカーも表示されます。 switchSelectionEndpoint
アクションを使うと、選択範囲のもう一方の端を動かすことができます。
選択範囲ができたら、いくつかのオプションがあります。 Esc キーを使って選択範囲をクリアすることができます。 または、ほとんどのキー入力によって選択範囲はクリアされ、キー イベントは基礎のシェルに直接渡されます。 選んだテキストを実際に使う場合は、copy
アクションを使ってクリップボードにコピーできます。
前述のとおり、選んだテキストは右クリックまたは copy
アクションでコピーできます。 ただし、テキストのコピーに関する設定はいくつかあり、カスタマイズすることができます。
- 書式設定されたテキストをコピーする
copyFormatting
グローバル設定を使うと、選んだテキスト自体の書式設定をクリップボードにコピーすることもできます。 この方法で、前景色、背景色、フォントなど、ターミナルのフォント情報をコピーできます。- 書式のコピーを特定のキー バインド (またはコマンド) に限定する場合は、
copy
アクションのcopyFormatting
パラメーターを変更します。
- テキストの選択を解除せずにコピーする
copy
アクションのdismissSelection
パラメーターをfalse
に設定すると、テキストの選択を解除せずにテキストをコピーできます。
- 1 行としてコピーする
copy
アクションでsingleLine
パラメーターを使うと、テキストを 1 行としてコピーできます。
- ブロック選択から末尾の空白を削除する
trimBlockSelection
グローバル設定を使うと、ブロック選択から末尾の空白を削除できます。
また、copyOnSelect
グローバル設定を使うと、新しく選んだテキストを自動的にクリップボードにコピーできます。 この設定を有効にした場合、選択範囲が存在するときにターミナルを右クリックすると、選んだテキストがターミナルにコピーされ、貼り付けられます。
注意
copyOnSelect
を有効にした場合、キーボードを使って選択範囲を変更しても、新しく選ばれたテキストは自動的にはコピーされません。 copy
アクションを使うか、ターミナルを右クリックして手動でテキストをコピーする必要があります。
配色の selectionBackground
プロパティを使うと、選択範囲の色を配色でカスタマイズできます。 また、selectionBackground
プロファイル設定を使って、特定のプロファイルに対する選択範囲の色をオーバーライドすることもできます。
前に説明したように、ダブルクリックと Ctrl + Shift + 方向キー (マーク モードのときは Ctrl + 方向キー) を使うと、単語単位で移動できます。 ただし、単語を区切ることができるのは空白だけではありません。 この単語の境界は、wordDelimiters
グローバル設定を使ってカスタマイズできます。
Windows Terminal に関するフィードバック
Windows Terminal はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。