10

Недавно я переключил поиск по истории на использование history-incremental-pattern-search-backward поскольку он учитывает шаблоны в поиске. Вот как это настроено в моем .zshrc

bindkey -M vicmd '/' history-incremental-pattern-search-backward

Это прекрасно работает, но я не могу понять, как перейти к следующему совпадению из меню поиска.

% cat foobarbaz.txt
bck-i-search: f*baz

Есть ли ключ для этого?

2 ответа2

10

Наконец-то нашли правильное заклинание. Вам нужно сопоставить поиск шаблона в режиме вставки. Это был кусок, который мне не хватало:

# 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 перебирают матчи.

8

Согласно странице руководства zshzle для zsh 4.3.10, ни один ключ не привязан по умолчанию. Вам нужно добавить привязки к карте isearch , и доступны только несколько виджетов. Например, вы можете сделать:

bindkey -M isearch '^R' history-incremental-search-backward
bindkey -M isearch '^S' history-incremental-search-forward

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .