VIM: поиск в нескольких разделенных окнах - PullRequest
12 голосов
/ 27 января 2012

Я хочу искать в VIM в нескольких разделенных окнах

Шаги:

  1. Выделите слово под курсором с помощью '*' в разделенном окне
  2. Нажмите «n» для перехода к следующему вхождению во всех разделенных окнах без изменения окна через Ctrl-w-w

Возможно ли это?

Ответы [ 2 ]

7 голосов
/ 28 января 2012
nnoremap <silent> n :exe (search(@/, 'nW') == 0 ? "normal \<lt>c-w>\<lt>c-w>ggn" : "normal! n")<cr>
nnoremap <silent> N :exe (search(@/, 'bnW') == 0 ? "normal \<lt>c-w>\<lt>c-w>G$N" : "normal! N")<cr>

Это отвечает на вопрос, но я не чувствую, что это в духе vim.Я предпочитаю использовать окно быстрого исправления.

После использования * выполните следующее:

:cexpr []|exe "windo vimgrepadd//j %"|copen

Теперь вы можете использовать :cn и :cp для перемещения по поискам.,Я лично использую unimpaired.vim Тима Попа, который обеспечивает хорошие отображения в виде [q и ]q.

См.

:h search(
:h quickfix
:h cexpr
:h windo
:h vimgrepadd
:h copen
:h cn
0 голосов
/ 27 января 2012

Для него можно создать макрос, например: q q * CTRL w CTRL ш п CTRL ш CTRL ш д .

Теперь вы можете нажать @ q , чтобы выполнить поиск.И вы можете настроить map для него:

:nmap YOUR_FAVOURITE_KEY @q
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...