
Недавно я переключил поиск по истории на использование, history-incremental-pattern-search-backward
так как он позволяет использовать шаблоны в поиске. Вот как это настроено в моем.zshrc
bindkey -M vicmd '/' history-incremental-pattern-search-backward
Это прекрасно работает, но я не могу понять, как перейти к следующему совпадению из меню поиска.
% cat foobarbaz.txt
bck-i-search: f*baz
Есть ли ключ, который это делает?
решение1
Наконец-то нашел правильное заклинание. Нужно сопоставить поиск шаблона в режиме вставки. Это был тот кусок, которого мне не хватало:
# Search backwards and forwards with a pattern
bindkey -M vicmd '/' history-incremental-pattern-search-backward
bindkey -M vicmd '?' history-incremental-pattern-search-forward
# set up for insert mode too
bindkey -M viins '^R' history-incremental-pattern-search-backward
bindkey -M viins '^F' history-incremental-pattern-search-forward
Я бы использовал ^B
для обратного поиска в режиме вставки, но у меня это сопоставлено с чем-то другим. Так что теперь ^R
и ^F
циклически просматривайте совпадения.
решение2
Согласно zshzle
странице руководства для zsh 4.3.10, по умолчанию ни одна клавиша не привязана. Вам нужно добавить привязки к isearch
карте, и доступно только несколько виджетов. Например, вы можете сделать:
bindkey -M isearch '^R' history-incremental-search-backward
bindkey -M isearch '^S' history-incremental-search-forward