bind -P |grep unix-filename-rubout
Para testar a ligação de teclas com por exemplo. Ctrl - b :
bind \C-b:unix-filename-rubout
Para uso permanente, adicione-o a ~/.inputrc
No modo bash do emacs, existe alguma maneira de excluir até o caractere de barra anterior?
Por exemplo, se eu digitei o comando cp /usr/local/bin/reallylongincorrectfolder /home/myname/reallylong_and_correct_path
e quer apenas apagar o reallylongincorrectfolder
. Existe algum atalho? Este é um cenário muito comum para mim no bash.
Algo como dF<char>
no vi?
backward-kill-word
, o que faz isso. Se você quiser descobrir o que está mapeado em seu sistema (se houver), execute bind -P | grep '^backward-kill-word'
.
Conforme explicado por @Barmar , é diferente de unix-word-rubout
, que é removido para o limite do espaço anterior.
Coloque isso no seu .inputrc
e inicie um novo shell:
C-b:unix-filename-rubout
Ctrl - b agora é apagado para a próxima barra.
Nirvana!
Não esqueça de Ctrl - X Ctrl - E iniciará seu editor para que você possa editar um linha de comando complicada confortavelmente.