押すと Ctrl+L bashのデフォルトモードでは、画面はクリアされます。しかし、set -o vi
を実行して押すと Ctrl+L キーストロークが印刷されます(^L
)。この動作を維持する方法はありますか?
Ctrl+L viコマンドモードでもバインドされますが、挿入モードではバインドされません。挿入モードのclear-screen
には、デフォルトのバインディングはありません。 Readlineバインディングは、次のように~/.inputrc
で指定する必要があります。
set editing-mode vi
$if mode=vi
set keymap vi-command
# these are for vi-command mode
Control-l: clear-screen
set keymap vi-insert
# these are for vi-insert mode
Control-l: clear-screen
$endif
これはバインドされます Ctrl+L 通常モードと挿入モードの両方で画面をクリアします。もちろん、1つのモードでのみ使用する場合は、関連するオプションを削除してください。
readlineコマンドの詳細なリスト を使用して、bashシェルをカスタマイズできます。
この行をbashrc
に入れます:
bind -m vi-insert "\C-l":clear-screen