enlazar secuencia de teclas a Escape, zsh


11

¿Cómo iba a asignar jja Escen zsh?

Estoy tratando de recrear una asignación de teclas que configuré en vim, donde la he jjasignado para ESCque cada vez que presione dos veces j, envíe el an <Esc>a vim, lo que me permite ingresar al modo normal con mayor comodidad.

Ya lo intenté bindkey 'jj' ^[y estoy a punto de intentarlo bindkey 'jj' ^[[, pero dudo que funcione. También revisé la lista de comandos proporcionados por zsh en modo normal, pero no vi nada que contuviera normalo escape.

NOTA
Los ^[caracteres en mi ~/.zshrcarchivo son escapes reales codificados; no solo los personajes ^y [.

Respuestas:


12

Debe -svincular cadenas reales en lugar de widgets:

bindkey -s jj '\e'

Aunque probablemente desee asignar jjal vi-cmd-modewidget aquí:

bindkey jj vi-cmd-mode

(tenga en cuenta que es para vincular en modo de inserción, no normal / modo de comando)


1
el segundo funciona de maravilla, gracias!
Alexej Magura

2
NOTA: la configuración KEYTIMEOUTparece romper la combinación de teclas.
Alexej Magura

@AlexejMagura solo agrega: establecer KEYTIMEOUT demasiado bajo prohíbe que zle reconozca la doble pulsación.
UltraMaster
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.