要在vim中向前搜索cake
,我会输入/cake
,但是当我按下返回时,光标会跳转到第一个匹配项。 是否有类似于“查找下一个”的vim命令?
答案 0 :(得分:788)
下一个 n ,前一个 N 。
如果您使用?
(例如?cake
)代替/
进行反向搜索,则反过来。
如果它安装在您的系统上,您应该尝试从终端运行vimtutor
命令,这将启动基本Vim命令的教程。
*
和#
的Rob Wells advice也非常相关。
答案 1 :(得分:193)
vim中最有用的快捷方式是 * 键。
将光标放在单词上并点击 * 键,您将跳转到该单词的下一个实例。
#键执行相同操作但跳转到该单词的上一个实例。
真正节省时间。
答案 2 :(得分:67)
答案 3 :(得分:13)
您在寻找 n 键吗?
答案 4 :(得分:12)
键入 n 将转到下一场比赛。
答案 5 :(得分:11)
如上所述,有几种搜索方式:
/pattern
?pattern
* (and g*, which I sometimes use in macros)
# (and g#)
加上,使用 N 和 n 导航prev / next。
您还可以使用/
提取搜索提示来编辑/调用搜索记录,然后使用C-p
/ C-n
进行循环。更有用的是q/
,它会将您带到一个可以浏览搜索历史的窗口。
另外要考虑的是最重要的'hlsearch'
(要启用的类型:hls
)。这样可以更轻松地找到模式的多个实例。您甚至可能希望通过以下方式使您的比赛更加明亮:
hi Search ctermfg=yellow ctermbg=red guifg=...
但是你可能会因为整个屏幕上的黄色火柴而疯狂。因此,您经常会发现自己正在使用:noh
。这很常见,因为映射是有序的:
nmap <leader>z :noh<CR>
我很容易记住这一个z
,因为我曾经不断地输入/zz<CR>
(这是一种快速到类型的罕见事件)来清除我的突出显示。但是:noh
映射更好。
答案 6 :(得分:1)
如果在按下&#34; / wordforsearch&#34;之后按ctrl + enter,那么你可以找到单词&#34; wordforsearch&#34;在当前行中。然后按n进行下一场比赛;按N进行常规比赛。