He leído varias respuestas a preguntas similares tanto en este foro como en otros lugares, pero no puedo hacer que funcione para mí.
Estoy tratando de reasignar Ctrl +W para eliminar la palabra adelante en lugar de retroceder. Sé que puedo usar Esc +D haz esto, pero también es un ejercicio de aprendizaje para mí.
Usando lo que he leído, he agregado lo siguiente en ~/.inputrc
:
$include /etc/inputrc
Control-w: kill-word
- Aparentemente, la primera línea es obligatoria si quiero incluir los otros enlaces.
- Para el segundo, he probado
Control-w
y"\C-w"
, y para el comando, probékill-word
yshell-kill-word
. - Para probar los cambios he probado
bind -f ~/.inputrc
, Ctrl +X , Ctrl +R ,bash -l
y simplemente abriendo una nueva terminal.
Supongo que me he perdido algún paso importante, o simplemente no lo he entendido bien, pero me estoy quedando sin ideas.
Estoy en Centos 8.
Respuesta aceptada:
La biblioteca readline (que es lo que inputrc
configura) establece enlaces correspondientes a los enlaces del controlador de terminal para la entrada cocinada. Estas se conocen comúnmente como teclas stty porque se pueden configurar con el comando stty
. Ctrl +W es el enlace para eliminar la palabra anterior (werase
) en la interfaz de terminal cocida.
Esos enlaces tienen prioridad sobre los enlaces explícitos en .inputrc
. Para desactivar este comportamiento, agregue esta línea a su .inputrc
:
set bind-tty-special-chars off
Si no ha configurado asociaciones de teclas de terminal cocidas no predeterminadas con stty
, creo que esto no afectará tus enlaces bash.