Как перейти к событию из списка поиска Vim - PullRequest
5 голосов
/ 26 сентября 2008

В редакторе Vim я выбрал ]I для функции (в коде C ++). Здесь представлен список, в котором написано «Нажмите клавишу ВВОД или введите команду для продолжения» .

Теперь, чтобы перейти к вхождению, скажем, 6, я набираю 6 - но это не работает.

Какие команды я могу набрать в таком случае и как перейти к N-му вхождению из этого списка?

Обновление:

На самом деле я попытался : N (например: 6) - но в тот момент, когда я набираю : Vim входит в режим вставки, и вместо кода в код вставляется двоеточие.

Обновление

Предполагается, что : Подход N правильный, все еще полная деинсталляция и установка Vim, без какой-либо настройки, тоже не помогли - хотя теперь ввод : не переключает Vim в режим вставки.

Ответы [ 7 ]

2 голосов
/ 26 сентября 2008

Он должен представить вам список вроде:

1:   345 my_func (int var)
2:  4523 my_func (int var)
3: 10032 my_func (3);

Второй столбец - номера строк. Введите 345, чтобы перейти к строке 345.

1 голос
/ 30 июня 2009

У меня была та же проблема, и, сопоставляя предыдущие ответы и экспериментируя, я нашел решение:

[I  // gives list of matches for word under cursor, potentially some matches are in headers. remember the number of the match you're interested in, eg. the 3rd
q  // quits the list of matches
3[Ctrl-i  // (with cursor in same position) jumps to third match
1 голос
/ 27 сентября 2008

Если вы нажмете кнопку прыжка и получите список возможных целей, выберите число и снова нажмите прыжок.

Так дано

1:   345 my_func (int var)
2:  4523 my_func (int var)
3: 10032 my_func (3);

Если вы нажмете '2] |', он должен сразу перейти к этой строке.

1 голос
/ 26 сентября 2008

Do: h tselect на vim, чтобы увидеть полное определение

Если вы уже видите тег, который хотите использовать, вы можете набрать 'q' и ввести число.

0 голосов
/ 03 ноября 2008

[I только перечисляет результаты поиска. Чтобы перейти к результатам, используйте последовательность [ CTRL+I.

Полный список соответствующих прыжков вы можете посмотреть по адресу:

http://www.vim.org/htmldoc/tagsrch.html#include-search

0 голосов
/ 26 сентября 2008

Попробуйте использовать 123G для перехода к строке 123 (см. :h G).

0 голосов
/ 26 сентября 2008

Когда я использую vim и перехожу к тегу, например:

 :tag getfirst

Мне преподносят что-то похожее на:

  # pri kind tag               file
  1 F   m    getfirst          /home/sthorne/work/.../FormData.py
               class:FakeFieldStorage
               def getfirst(self, k, default):
    ....
  8 F   m    getfirst          /home/sthorne/work/.../CGIForm.py
               class:CGIForm
               def getfirst(self, name):
Choice number (<Enter> cancels):

Я набираю '5', чтобы перейти к пятому вхождению.

Если вы не можете настроить vim на такое поведение (похоже, он включен по умолчанию для моего vim), вы можете использовать g] вместо ctrl -], что аналогично : tselect вместо : tag

...