通常モードでのみ vi モードのキーバインディングをトリガします。

通常モードでのみ vi モードのキーバインディングをトリガします。

Bash viモードのためのいくつかのカスタムキーバインディングを作成しました。挿入モードにあるときに実行されますが、通常モードにあるときに実行したいと思います。

viモードを使用しています

set -o vi

Ubuntu 14.04サーバーの端末エミュレータで。これまで私は再マッピングしました:

^ — 行の先頭に移動

$ — 行末に移動

次に:

<space>a - 行の先頭に移動

<space>; — 行末に移動

Bash 組み込みコマンドの使用製本編集者.bashrc次のように:

bind " -a":beginning-of-line
bind " -;":end-of-line

これらのキーバインディングは機能しますが、挿入モードの場合にのみ実行されます。どうすればちょうど発射させることができますか?挿入モードではなく通常モードの場合のみ、逆に?

タグ:bash viモード、bash viモードキー再マッピング、viモード通常モード

ベストアンサー1

これは .inputrc で行われます。

set editing-mode vi
$if mode=vi

# these are for vi-command mode
set keymap vi-command

# unbind space
" ": ""

# bind space-a, space-;
" a":beginning-of-line
" ;":"$" 

$endif

おすすめ記事