BASH unterstützt eine $PROMPT_COMMAND
Umgebungsvariable, die einen Befehl definiert, der vor jeder interaktiven Eingabeaufforderung der ersten Ebene ausgeführt werden soll. Ich suche ein ZSH-Äquivalent davon.
Die Dokumentation besagt, dass es eine Funktion gibt, die precmd
ich definieren kann, um dies zu erreichen. Ich habe jedoch keine Ahnung, wie man es aus einer Umgebungsvariablen definiert.
Ich habe überlegt, eine Umgebungsvariable zu übergeben, mit der ZSH eine Datei mit der Definition dieser Funktion lesen würde, aber ZSH scheint solche Dinge nicht zu unterstützen : Es werden nur globale Dateien und dann benutzerspezifische Dateien gelesen. Ich kann sie ersetzen, aber nicht hinzufügen, ohne die Dateien zu ändern, was ich nicht kann.
Wie definiere ich in ZSH einen Hook vor der Eingabeaufforderung über eine Umgebungsvariable, wie ich es $PROMPT_COMMAND
in BASH tun würde?
exit
exec
;)
start() { eval "$@"; echo post-command-code }
und verwenden Sie dann eine Zle-Bindung, um die Befehlszeile mit start
vorangestelltem auszuführen ?
DEBUG
Falle ist eine nette Entdeckung, aber Sie haben immer noch das Problem, wie man sie definiert. Ich habe meine Antwort noch einmal erweitert, aber ich überlasse es Ihnen, Ihre eigene Antwort in Bezug auf die DEBUG-Trap-Lösung zu schreiben. :)