サイトアイコン Lonely Mobiler

VSCode 内蔵ターミナルで ctrl-p などのショートカットキーを利用する方法

VSCode には標準でターミナル機能が搭載されており、WSL や PowerShell などを VSCode のエディタ内で利用することができる。しかし、Bash や Zsh などで利用できるキーバインドが VSCode のショートカットキーと競合して思うように操作できない場合がある。

特に履歴を参照する ctrl-p のような良く利用するキーバインドが利用できないのは Linux に慣れている人にとってはストレスだろう。

Linux Shell のショートカットキーをまとめてみた | Lonely Mobiler

自分が試したところ、ctrl-f, ctrl-e, ctrl-p のキーバインドが VSCode のものと競合してシェルで利用できなかった。なのでそれらのキーバインドをターミナルで利用できるように再定義する必要がある。

VSCode の keybindgs.json を開き、以下の設定を追加しよう。

{ "key": "ctrl+f", "command": "cursorRight", "when": "terminalFocus" }, // vscodevim を利用している場合には不要 //{ // "key": "ctrl+e", // "command": "workbench.action.quickOpen", // "when": "!terminalFocus" //}, { "key": "ctrl+e", "command": "-workbench.action.quickOpen" }, { "key": "ctrl+p", "command": "workbench.action.quickOpen", "when": "!terminalFocus" }, { "key": "ctrl+p", "command": "-workbench.action.quickOpen" },

ctrl+f はカーソルを右へ動かすコマンドを、ctrl+p はクイックオープンの挙動を「ターミナル以外の時」と再定義してある。ctrl+e に関しては vscodevim を利用していないならコメントアウトを外すと良さそう。

こうすることで VSCode の内蔵ターミナルでも ctrl+f でカーソル移動、ctrl+p で履歴の参照が可能となる。ターミナルを頻繁に利用するなら是非設定しておこう。

VSCodeの統合ターミナルにおいてシェルのキーバインドを設定する - Qiita
Sponsored Link
モバイルバージョンを終了