Parece que ctrl+ Wexclui para trás uma palavra de cada vez. Isso é ótimo, mas eu realmente gostaria que isso funcionasse com ctrl+ backspacecomo a maioria dos outros aplicativos.
Qual é a melhor forma de fazer isso? Eu precisaria da alteração para afetar os comandos do gnome-terminal, a linha de comando vim e a GUI vim.
command-line
gnome-terminal
vim
gvim
Costa
fonte
fonte
Respostas:
Observe que isso funcionará no terminal e no modo emacs padrão (que você está usando se Ctrl+ Wexcluir a palavra anterior para você). Ele não funcionará no modo vi do bash e não afetará o vi / vim. Portanto, essa é apenas uma resposta parcial, mas a melhor opção para esse usuário do emacs.
Esse tipo de coisa é gerenciada pela
readline
biblioteca cujo comportamento pode ser controlado via~/.inputrc
. Edite (ou crie, se não existir)~/.inputrc
e adicione esta linha:Agora, abra um novo terminal e ele deve funcionar.
Explicação
O
\C-H
é realmente Control+ BackSpace. Você pode ver os códigos de teclas pressionando Ctrl+ Ve a tecla que você procura. Você verá que BackSpaceretorna^H
.Agora, deve ser possível vincular Control+ BackSpaceà função bash que exclui a palavra anterior (
backward-kill-word
ouunix-word-rubout
) usando"\C-H": backward-kill-word
. No entanto, não consigo fazer isso funcionar. Funciona perfeitamente bem com teclas diferentes ("\C-E": backward-kill-word
por exemplo, faz Ctrl+ Eexcluir a palavra anterior), mas por algum motivo, não consigo fazê-lo funcionar BackSpace.Portanto, como solução alternativa, basta mapear Ctrl+ Backspacepara Ctrl+ Wque já está mapeado
backward-kill-word
. Portanto, quando você pressiona Ctrl+ Backspace, isso será traduzido para Ctrl+ Wque, por sua vez, será enviadobackward-kill-word
. Eu tive a idéia para esta solução alternativa neste post da SU .fonte
Até muito recentemente, o gnome-terminal emitia o mesmo código em + Backspacee , portanto, você não pode distinguir os dois em seu aplicativo.CtrlBackspace
Isso foi corrigido no vte-0.42, que faz parte do Gnome 3.18 lançado neste outono.
Se você estiver usando o Wily, poderá encontrar pacotes atualizados no Gnome3 Staging .
fonte
Use Alt+ Backspace: funciona como Ctrl+ Backspacee não requer nenhuma configuração.
fonte
Funciona na minha máquina. Apenas certifique-se de usar o tmux do master e o nvim do linuxbrew e o control + backspace também funciona no bash e no vim!
(Obtenha o bash do linuxbrew também)
fonte