Подтвердить что ты не робот

Обратный поиск в режиме vi

Я только что открыл возможность использования vi-mode в zsh. Довольно круто. Но я использовал CTRL-r в режиме emacs в значительной степени и действительно очень скучаю по нему. Есть ли что-то подобное или я могу получить эту функциональность в vi-режиме?

4b9b3361

Ответ 1

Вы можете привязать history-incremental-search-backward к любому ключу, например:

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

Ответ 2

В соответствии с этим ответом: https://unix.stackexchange.com/a/30169

вы можете фактически привязать в vim-режиме к поиску истории:

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

В соответствии с комментарием к ответу вы также можете привязать к history-incremental-pattern-search-backward

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

Затем вы выполняете поиск по шаблону истории с помощью

Пример: <C-R> mv * /target

Ответ 3

Это решение: up/down позволяет либо просматривать историю (если поле пустое), либо искать. Сделал мой день.

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