¿Cómo reclamar ^ S en zsh?

9

He encontrado que ^ S mapeado es la clave de búsqueda de fwd para zsh (ohmyzsh), pero también me gustaría usarlo en vim para varias asignaciones, parece que la asignación de zsh me impide usarlo ahora.

¿Alguna forma de desasignar el bindkey o tenerlo en ambos sentidos?

liamgriffiths
fuente
¿Estás seguro de que es oh-my-zsh? No pude encontrar nada en sus fuentes donde los bindkeymapas Ctrl-S.
Daniel Beck
sí, creo que en realidad es zsh predeterminado: menciono ohmyzsh en caso de que haya algo allí que también pueda ser importante, sigo siendo un nuevo zsh nuevo
liamgriffiths
En mi sistema (nunca antes usé zsh) se Ctrl-Ssuspende, como debería. ¿Ha revisado sus archivos de perfil zsh?
Daniel Beck
Todavía estoy cavando, con la esperanza de poder encontrar información aquí más rápido :-) ... Anteriormente, para mí, funcionó bien con Cs
liamgriffiths
Para investigar asignaciones / enlaces zsh, use bindkey. Úselo bindkey "^S"para ver a qué Ctrl-Sestá vinculado específicamente. Busque detalles sobre los "widgets" vinculados con man zshzle.
barra final

Respuestas:

10

Probablemente se trate de control de flujo, que es manejado por su terminal y no por su shell. Por lo general, control-s detiene la salida del terminal y control-q la reanuda. Ver la nota en " :help ctrl-s".

Para eliminar este comportamiento, puede probar estos comandos de shell:

stty stop undef
stty start undef

Sin embargo, esto puede no funcionar. Si está utilizando un emulador de terminal GUI, intente buscar la configuración de control de flujo dentro de sus opciones.

Heptita
fuente
5

Lo derribé en dos pasos:

  1. Deshabilitar el control de flujo en Konsole:

    • Configuración> Administrar perfiles ...> Editar perfil> Avanzado (pestaña)> desmarque 'Activar control de flujo [...]')

  2. Cuéntale también a Zsh:

    setopt noflowcontrol
Lobo marino
fuente