Для поиска в vim для cake
, я бы набрал /cake
, но курсор переходит к первому совпадению, когда я нажимаю return. Есть ли команда vim, аналогичная "find next"?
"Найти следующий" в vim
Ответ 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 для опасного совпадения.