¿Para qué sirve el "autoinserto"?

¿Para qué sirve el "autoinserto"?

¿Para qué self-insertsirve en zsh? Lo veo en todas partes en las configuraciones de prezto, pero no puedo entender qué se supone que debe hacer, la documentación de ZLE tampoco especifica qué es, sin embargo, lo menciona en algunos contextos diferentes.

Respuesta1

Cuando está vinculada a una clave, esta función inserta la clave misma como un carácter de entrada. Por ejemplo, la clave aestá vinculada a self-insert, por lo que al presionarla se ingresa "a".

Desde elzshzle(1)página del manual (zsh versión 5.5.1):

  self-insert (printable characters) (unbound) (printable characters and some con‐
  trol characters)
         Insert a character into the buffer at the cursor position.

A modo de comparación, desde ellínea de lectura(3)página de manual (bash versión 4.4.023):

  self-insert (a, b, A, 1, !, ...)
         Insert the character typed.

Respuesta2

De la documentación,

Cualquier otro carácter que no esté vinculado a self-insert o self-insert-unmeta emitirá un pitido y será ignorado.

Estaba jugando con mi caparazón y até '.' a una función y luego la desasocia. De repente no podía escribir ni un punto en ningún lado. bindkeysse mostró "/"-"~" self-insert, pero en otro caparazón limpio lo estaba "/"-"-" self-insert. El personaje fue completamente ignorado, incluso para cortar y pegar.

Para recuperar mi punto, tuve que vincularlo para que se autoinsertara:

bindkey '.' self-insert

información relacionada