2010-06-27 12 views
39

Ho appena scoperto la possibilità di utilizzare vi-mode in zsh. Abbastanza bello. Ma ho usato CTRL-r in emacs-mode praticamente e mi manca davvero. C'è qualcosa di simile o posso ottenere quella funzionalità in vi-mode pure?Ricerca all'indietro in modalità vi

+0

Comune, appartiene al superuser – Drakosha

risposta

35

È possibile associare history-incremental-search-backward a qualsiasi tasto, ad esempio:

bindkey -M vicmd '?' history-incremental-search-backward 
+1

Questa grande opera - ho legato '/' invece di sostituire il motore di ricerca predefinito. – gregsabo

+0

Questo funziona. Senza perdere il legame chiave convenzionale. https://stackoverflow.com/a/15267007/2046462 – Kannan

11

Questa è la soluzione: su/giù consente di sfogliare la storia (se il campo è vuoto) o di ricerca. Ha reso la mia giornata.

bindkey '^[[A' up-line-or-search 
bindkey '^[[B' down-line-or-search 
36

Secondo questa risposta: https://unix.stackexchange.com/a/30169

si può effettivamente legare in vim-mode per la cronologia di ricerca:

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

Secondo un commento alla risposta si può anche associare a history-incremental-pattern-search-backward

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

Quindi si esegue una ricerca del modello di cronologia con

esempio: <C-R> mv * /target

Problemi correlati