Quando você pressiona Ctrl+ Lno modo padrão do bash, a tela é limpa. Mas quando corro set -o vi
e pressiono Ctrl+, La tecla é impressa ( ^L
). Existe alguma maneira de manter esse comportamento?
Quando você pressiona Ctrl+ Lno modo padrão do bash, a tela é limpa. Mas quando corro set -o vi
e pressiono Ctrl+, La tecla é impressa ( ^L
). Existe alguma maneira de manter esse comportamento?
Respostas:
Ctrl+ Ltambém está vinculado no modo de comando vi, mas não no modo de inserção. Não há ligação padrão para clear-screen
no modo de inserção. As ligações da linha de leitura devem ser especificadas da seguinte ~/.inputrc
maneira:
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
Isso ligará Ctrl+ Lpara limpar a tela no modo normal e de inserção. Naturalmente, se você preferir usá-lo apenas em um modo, basta remover a opção relevante.
Há uma extensa lista de comandos readline que você pode usar para personalizar seu shell bash.