Wie aktiviere ich die Rückwärtssuche in zsh?


37

Ich bin kürzlich (endlich) zu zsh gewechselt und liebe es! Bis jetzt eine Sache , die ich bin fehlt Ctrl+ Rinkrementelle Suche Geschichte zu tun.
Ich habe die Geschichte richtig eingestellt

HISTSIZE=10000
SAVEHIST=10000
HISTFILE=~/.zsh_history

und ich habe viTastenkombinationen verwendet

bindkey -v

Aber Ctrl+ Rfunktioniert nicht. Es entfernt die Linie über der aktuellen Linie, was auch nicht das Verhalten ist, das es in vim haben sollte.

Irgendwelche Vorschläge?


1
Übrigens ist eine schnelle Abhilfe die Verwendung einer nicht inkrementellen Suche: Ctrl+ [ /...
maxschlepzig

Antworten:


59

Wenn ich mich richtig erinnere, müssen Sie es explizit einstellen, auch mit bindkey -v. Benutze so etwas:

bindkey -v
bindkey '^R' history-incremental-search-backward

4
Vielleicht history-incremental-pattern-search-backwardist eine alternative Aktion in diesem Zusammenhang.
Maxschlepzig

2
@maxschlepzig sorry was ist der unterschied zwischen den beiden?
Ali

2
@Ali, mit den -pattern- Versionen können Sie Suchmuster verwenden (welcher Stil, dh Globbing oder Regex (?) , Hängt von anderen Teilen Ihrer zsh-Konfiguration ab) - wie zB Sie können das Suchmuster fo*barmit verwenden grep, um ' Fobar ',' Foobar ',' Fooobar 'usw.
Maxschlepzig

3
Ich habe einen Fehler bekommen. Das Umschließen von ^ R in doppelte Anführungszeichen hat es geschafft. bindkey "^R" history-incremental-pattern-search-backward
Ramon Tayag

1
bindkey -vmuss vorausgehenhistory-incremental-search-backward
Deniz
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.