up-line-or-history
funktioniert gut in gnome-terminal, aber funktioniert nicht, nachdem ich zu urxvt gewechselt. Ich habe dies getestet, indem ich diesen Befehl explizit in zsh (M-x
im Emacs-Modus) aufgerufen habe. Kann mir jemand einen Hinweis geben warum? Ich bin auf Debian Jessie.zsh: Up-Line-oder-Geschichte funktioniert nicht in urxvt
2
A
Antwort
0
urxvt
und gnome-terminal
verschiedene Charaktere zu senden, wenn Sie altup eingeben. Sie können dies mit cat -v
sehen. In urxvt
, würden Sie sehen ^[[A
, während gnome-terminal
Kopien xterm
, senden ^[[
; 3A`.
Wenn Sie Ihre zsh
Tastenbelegungen nicht konfiguriert haben, um dies zu berücksichtigen, werden sie nicht wie erwartet funktionieren. Einige Problemumgehungen sind erforderlich, da zsh
terminfo-Werte verwenden können, zsh
bietet keine Möglichkeit, die Terminal-Information für geänderte spezielle Schlüssel zu verwenden.
Weiterführende Literatur:
- How can I see what my keyboard sends? (ncurses FAQ)
- How can I use shift- or control-modifiers? (ncurses FAQ)
Bei mir funktioniert es, ob ich 'bindkey "^ [[A" up-line- or-beginning-search' oder 'bindkey" \ e [Eine "up-line-or-beginning-search", aber ich muss ~/.zshrc' jedes Mal nach der Eingabe von urxvt manuell 'quellen'. Weißt du, warum? –
no - zsh soll '.zshrc' in einer interaktiven Shell erzeugen ... –
Beachten Sie, dass ich den Befehl direkt ausgeführt habe, nicht über die Tastenbindung. – xuhdev