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

Как вы просматриваете историю команд vim?

Я хотел бы иметь следующий поиск в Vim тоже

(reverse-i-search)`': 

Введите слово из предыдущей команды, и вы получите полную команду.

Я знаю инструмент хронологической истории в Vim

q:

Однако это не так полезно, как обратный поиск.

Как вы можете иметь аналогичный обратный поиск в Vim, как в терминале?

4b9b3361

Ответ 1

Введите первые буквы предыдущей команды и нажмите <Up> стрелка (или Ctrl + p).

:set li<up>
:set lines=75

Не забудьте проверить параметр истории и установить его на достаточно большое значение

:set history=1000

Ответ 2

Введите q: в нормальном режиме, чтобы открыть окно команд. Вы можете искать/редактировать здесь, используя обычные команды vim. Вы начинаете в нормальном режиме. Нажмите Enter, чтобы выполнить команду.

Этот подход позволяет выполнять поиск по всей команде, а не только по началу строки.

Ответ 3

Вот документы для История командной строки Vim, также см. эту часть документов на История командной строки Vim, которая охватывает ключевые привязки во время истории. Похоже, вы можете сказать :foo, а затем нажать стрелку вверх, чтобы найти последнюю команду, которая началась с foo.

Ответ 4

Я тоже искал это (наконец, подумав, почему он не был встроен в течение некоторого времени), и решил, что я не удержался от взлома реализации, поэтому здесь вы идете: https://github.com/goldfeld/ctrlr.vim

Он должен работать так же, как и оболочка - ну есть еще пара основных недостающих вещей (например, снова нажать ^ R, чтобы перейти к следующему совпадению), но все, что я использую, находится в этом первом выпуске, и я планирую добавить остальное в ближайшие недели, когда я получаю время.