"Найти следующий" в vim

Для поиска в vim для cake, я бы набрал /cake, но курсор переходит к первому совпадению, когда я нажимаю return. Есть ли команда vim, аналогичная "find next"?

Ответ 1

Это значение n для следующего и n для предыдущего.

И если вы используете обратный поиск с ? (например, ?cake) вместо /, это наоборот.

Если он установлен в вашей системе, вы должны попробовать запустить команду vimtutor с вашего терминала, которая начнет руководство по основным командам Vim.

Совет Роба Уэллса о * и # также очень уместен.

Ответ 2

Наиболее полезным ярлыком в vim, IMHO, является клавиша *.

Поместите курсор на слово и нажмите клавишу *, и вы перейдете к следующему экземпляру этого слова.

Клавиша # делает то же самое, но переходит к предыдущему экземпляру слова.

Истинная экономия времени.

Ответ 3

Когда я начинал, мне нужно было смотреть демо

Как выполнить поиск в VIM

  • type /
  • Введите поисковый запрос, например. "Вар"
  • нажмите enter
  • для next нажмите n (для предыдущего n)

Ответ 4

Вы ищете клавишу n?

Ответ 5

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

Ответ 6

Как уже говорилось, существует несколько способов поиска:

/pattern
?pattern
* (and g*, which I sometimes use in macros)
# (and g#)

плюс, навигацию prev/next с N и N.

Вы также можете отредактировать или вызвать историю поиска, потянув запрос поиска с помощью /, а затем выполните цикл с помощью C-p/C-n. Еще более полезно q/, которое приведет вас к окну, в котором вы можете перемещаться по истории поиска.

Также для рассмотрения важно все 'hlsearch' (тип :hls для включения). Это значительно облегчает поиск нескольких экземпляров вашего шаблона. Возможно, вы даже захотите сделать ваши матчи более яркими с чем-то вроде:

hi Search ctermfg=yellow ctermbg=red guifg=...

Но тогда вы можете сходить с ума с постоянными желтыми совпадениями по всему экрану. Поэтому вы часто используете :noh. Это настолько распространено, что отображение в порядке:

nmap <leader>z :noh<CR>

Я легко помню этот как z, так как я постоянно использовал /zz<CR> (что является необычным явлением быстрого типа), чтобы очистить выделение. Но отображение :noh лучше.

Ответ 7

Если вы нажмете ctrl + enter после того, как вы нажмете что-то вроде "/wordforsearch", вы можете найти слово "wordforsearch" в текущей строке. Затем нажмите n для следующего совпадения: нажмите N для опасного совпадения.