VSCode – bash ターミナルにて Ctrl+p でコマンド履歴を遡る

bash のターミナルでは、Ctrl+p ショートカットでコマンド履歴を遡ることができます。

しかし、デフォルトの設定では、Ctrl+p のショートカットキーは VSCode 本体に奪われてしまい、ファイルの検索窓が表示されてしまいます。

このショートカットキーをターミナルに渡すための設定方法メモです。

目次

設定方法

VSCode の設定画面を開きます。
以下のいずれかで開くことができます。

  • メニューの File ⇒ Preferences ⇒ Settings
  • Ctrl+,

ここで、commands to skip shell と検索します。

検索された設定項目にて、-workbench.action.quickOpen と入力して OK を押します。

これにより、Ctrl+p のショートカットをターミナルに渡すことができるようになります。
bash ターミナルの場合は、過去のコマンド履歴を遡ることができます。

ついでに bash では、Ctrl+e でカーソルを末尾に移動することができるのですが、このショートカットも利用できるようになります。
(このショートカットも workbench.action.quickOpen に割り当てられているため)

PowerShell の場合

なお、PowerShell の場合は Ctrl+p を入力しても、^Pと制御文字が入力されるだけです。
PowerShell のショートカットを bash ライクにしたい場合は以下の記事を参照です。

bash ターミナルで Ctrl+f を有効にするには

bash の他のショートカットとして、Ctrl+f でカーソルを右に移動することができます。
これも VSCode に奪われて、検索窓が開かれてしまいます。

Ctrl+f の場合は、CommandsToSkipShell に次の設定を追加することで対処が可能です。

  • -workbench.action.terminal.focusFind

settings.json に直接記述する場合

settings.json に直接記述する場合は、次のようになります。

{
    // ...(省略)...
    "terminal.integrated.commandsToSkipShell": [
        "-workbench.action.quickOpen",
        "-workbench.action.terminal.focusFind"
    ],
    // ...(省略)...
}
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次