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?

Ali
quelle
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
Chris Down
quelle
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