¿Es posible usar el editor de línea incorporado de zsh ( zle
) para alimentar la entrada a un subproceso? Es decir, me gustaría ejecutar zlewrap mycommand
donde zlewrap
está una función zsh y mycommand
es cualquier programa que solo lee líneas de stdin; zlewrap
proporcionaría efectivamente las capacidades de edición de línea de zle a mycommand
. Esto está en el modelo de lo rlwrap
que hace exactamente esto, pero con readline y no zle para la edición de línea.
zsh
line-editor
Gilles 'SO- deja de ser malvado'
fuente
fuente
rlwrap
está bastante extendido y probablemente lo haya usado. Piense en las pequeñas cosas de pseudo shell que obtiene en cosas como mysql, sqlite, lftp, etc. Todas tienen alguna implementación de un editor de línea que regresa en línea o bloque de líneas a la vez al procesador real detrás de ellas.rlwrap
funciona bastante bien para cualquier programa que acepte STDIN, pero sería bueno tener enlaces y habilidades de estilo zle en lugar de líneas de lectura que son alguien menos extenso.zsh
- cs.elte.hu/zsh-manual/zsh_14.html ? - No entiendo bien tu pregunta, pero busqué en Google el título y encontré esa página. Podría ayudar, pero no lo sé.Respuestas:
Así es como puede hacerlo si usa la pantalla GNU:
Ponga un archivo llamado
zf
en su$PATH
con:Y luego, ejecute el filtro en la pantalla como
Reemplace / dev / pts / x con el pty real de Windows (salida del
tty
comando en la ventana) y ">" con el mensaje para mostrar.Habrá fallas ocasionales en la pantalla, ya que tanto zsh como la aplicación escribirán en el terminal de una manera no concertada.
Original en http://www.zsh.org/mla/users/2005/msg00186.html
fuente