Ist es möglich, den in zsh integrierten Zeileneditor ( zle
) zu verwenden, um Eingaben an einen Unterprozess weiterzuleiten? Das heißt, ich möchte ausführen, zlewrap mycommand
wo zlewrap
ist eine zsh-Funktion und mycommand
ist ein Programm, das nur Zeilen aus stdin liest; zlewrap
würde effektiv zles zeilenbearbeitungsfunktionen zur verfügung stellen mycommand
. Dies ist auf dem Modell, rlwrap
das genau dies tut, aber mit readline und nicht zle für die Zeilenbearbeitung.
zsh
line-editor
Gilles 'SO - hör auf böse zu sein'
quelle
quelle
rlwrap
ist ziemlich weit verbreitet und Sie haben es wahrscheinlich verwendet. Denken Sie an die kleinen Pseudo-Shell-Dinge, die Sie in Dingen wie mysql, sqlite, lftp usw. bekommen. Sie alle haben eine Implementierung eines Zeileneditors, der jeweils in einer Zeile oder einem Zeilenblock zum eigentlichen Prozessor hinter ihnen zurückkehrt.rlwrap
trifft ganz ordentlich für jedes Programm, das STDIN akzeptiert, aber es wäre schön, Bindungen und Fähigkeiten im Zle-Stil zu haben, anstatt Zeilen zu lesen, die weniger umfangreich sind.zsh
- cs.elte.hu/zsh-manual/zsh_14.html angesehen ? - Ich verstehe Ihre Frage nicht ganz, habe aber den Titel gegoogelt und diese Seite gefunden. Es könnte helfen, aber ich weiß es nicht.Antworten:
Wenn Sie den GNU-Bildschirm verwenden, können Sie dies folgendermaßen tun:
Fügen Sie eine Datei mit folgendem Namen
zf
ein$PATH
:Führen Sie dann den Filter auf dem Bildschirm aus als
Ersetzen Sie / dev / pts / x durch die tatsächliche Windows-Pty (Ausgabe des
tty
Befehls im Fenster) und ">" durch die Aufforderung zur Anzeige.Es kommt gelegentlich zu Anzeigefehlern, da sowohl zsh als auch die Anwendung auf unkonfigurierte Weise auf das Terminal schreiben.
Original unter http://www.zsh.org/mla/users/2005/msg00186.html
quelle