VIM,增量搜索:如何跳转到下一个结果并使其突出显示?

Posted

技术标签:

【中文标题】VIM,增量搜索:如何跳转到下一个结果并使其突出显示?【英文标题】:VIM, incremental search: How can I jump to the next result and get it highlighted? 【发布时间】:2011-12-24 07:51:54 【问题描述】:

当使用 VIM 的增量搜索选项时,我通常会搜索并在获得第一个结果后(将突出显示)我使用 / 键跳转到下一个结果。

但是:

    为此,我需要“取消”我的搜索并返回普通模式,以便跳转下一个结果。 按 / 会使 VIM 跳转到下一个结果,但不会突出显示它。

我想知道是否有更有效的方法可以使用增量搜索在结果之间跳转并突出显示它们。

【问题讨论】:

【参考方案1】:

跳转到下一个搜索结果的习惯键是'n'。

我不完全确定您所说的突出显示是什么意思 - 如果设置了 hlsearch,则所有搜索结果都应该突出显示,对我来说,使用“n”或“/”转到下一个结果没有区别。

【讨论】:

马修,谢谢。但是,我进行增量搜索,键入(它会跳转并突出显示)而不是按 ENTER 而不是使用 'n' 并且光标会跳转到下一个结果。但它没有突出显示。你认为它应该采取不同的行动吗? 我的只是立即突出显示所有这些 - 如果缓冲区中同时显示多个搜索结果,我可以看到它们都有黄色背景。这是我系统上的默认配置,IIRC 由“hlsearch”设置控制。 和'N'向后搜索。 @MatthewWalton 任何想法,我如何在搜索中跳转固定数量的结果。我的意思是例如跳转到第 10 个匹配行 @GPcyborg 试试[number]n?那应该执行n[number] 次,即前进n 结果。【参考方案2】:

使用Ctrl-tCtrl-g,您可以在匹配之间移动而无需离开搜索模式

【讨论】:

这就是我要找的。我希望突出显示当前选择的匹配项。【参考方案3】:

如果您想突出显示所有搜索结果,您应该设置hlsearch 而不是incsearch

【讨论】:

这就是问题所在。谢谢。 @zoltanctoth:你真的应该接受另一个答案,因为他是第一个并且实际上告诉了同样的事情。 你是对的。我错过了@matthew 答案中的 hlsearch 部分。感谢您的关注。

以上是关于VIM,增量搜索:如何跳转到下一个结果并使其突出显示?的主要内容,如果未能解决你的问题,请参考以下文章

vim进阶命令

jQuery ScrollTop:每个动画都需要在跳转到下一个之前完成

制作一个简单的搜索功能,使光标跳转到(或突出显示)要搜索的单词

vim 查找与替换

Vim学习1移动光标

在 vim 中,如何进行自定义单词边界运动?