Estou tentando configurar meu .inputrc
desempenho para trás, unix-word-rubout
mas atualmente não estou conseguindo fazer isso.
Eu M-w
mapeei no meu .inputrc
.
isso não funciona:
"\eu": universal-argument
"\ew": "\eu-1\C-w"
nem isso:
"\ew": "\e-1\C-w"
nem mesmo fazendo isso de forma interativa no shell pressionando M--
seguido de C-w
funciona, ou seja, fica deletando palavras à esquerda do cursor.
PS Eu sei que existem outros comandos kill/rubout readline, mas eu realmente gostaria de ter o C-w
comportamento de matar palavras usando espaço como separador, apenas ao contrário.
Responder1
Em resumo, adicione as seguintes linhas a ~/.inputrc
:
"\ew": kill-region
"\ea": '\e \C-] \ew'
onde w
e a
os personagens podem ser alterados de acordo com sua vontade.
Como funciona
Vamos atribuir uma sequência de teclas ao kill-region
comando readline, por exemplo Alt-w
"\ew": kill-region
então vamos atribuir a seguinte macro a outra sequência, digamos Alt- a:
"\ea": '\e \C-] \ew'
que executa as seguintes ações:
\e<SPACE>:
definir a marca onde o cursor está
\C-]<SPACE>:
procure um espaço e mova o cursor para lá
\ew:
mate a região entre a marca e o cursor