美文网首页
vim可视模式搜索

vim可视模式搜索

作者: 追梦人在路上不断追寻 | 来源:发表于2022-09-09 22:25 被阅读0次

    您可以通过在模式中使用特殊的转义序列在 Vim 中的可视选择中进行搜索。Vim 将这些称为“原子”,有关更多信息,您可以查看帮助文档::help atom:help ordinary-atom.

    这什么时候有用?有时我只想在当前方法中搜索字符串。使用此功能,我可以确定我只在我打算搜索的代码区域中搜索,并且不会在文件周围反弹。

    要使用,首先在视觉上选择一些文本区域。我可以手动执行此操作,然后shift-V选择行。但在我最常见的情况下,我将使用一个命令来虚拟地选择当前段落****的一个圆形。(并确保您知道如何编辑视觉选择——这是我们最受欢迎的技巧之一。)j``k``vap

    一旦你选择了一些东西,按下Esc退出选择模式。然后 search using/和 use\%V向 Vim 表明你只想搜索最后一个视觉选择。

    例如:/\%Vfoobar将在最后一个视觉选择中搜索foobar.

    在下面的视觉选择中有一个简短的搜索演示。首先,我用vap. 然后我request使用/\%Vrequest.

    (对于这个演示,我将突出显示颜色设置为黄色,以便使用以下内容脱颖而出::hi Search ctermbg=Yellow ctermfg=Black。)

    如何在 Vim 的视觉选择中搜索?

    您可以使用\%V模式中的转义序列在 Vim 中的最后一个可视选择中进行搜索。只需搜索一个单词或短语,但要像这样添加该序列:

    /\%Vfoobar

    Vim 将把它的搜索限制在最后一个可视选择的文本区域。

    Vim 视觉选择搜索什么时候有用?

    因为视觉选择可以扩展到文本的任何区域,所以在很多情况下您可能只在视觉选择中进行搜索。但是一个常见的用例是在方法内部进行搜索,您通常可以使用该方法进行选择vap通常选择****一个****圆形段落)。

    我不能在 Vim 中直观地选择然后使用 / 进行搜索吗?

    不,当您在 Vim 中处于可视选择模式时,使用/会将您的搜索区域扩展到下一个匹配项,这意味着您不能只选择并突出显示文本然后在其中搜索。您首先必须停止视觉选择,Esc然后\%V在最后一个视觉选择中搜索并使用匹配。

    %V Vim 文档是什么?

    在可视区域内匹配。当视觉模式已经停止时,匹配gv将重新选择的区域。这是一场/zero-width比赛。为确保整个图案位于可视区域内,请将其放在图案的开头和结尾之前
    ,例如:

    /\%Vfoo.*ba\%Vr
    

    如果仅以可视方式选择了“foo bar”,这也有效。这个:

    /\%Vfoo.*bar\%V
    

    如果视觉选择在“r”之后继续,将匹配“foo bar”。仅适用于当前缓冲区。

    相关文章

      网友评论

          本文标题:vim可视模式搜索

          本文链接:https://www.haomeiwen.com/subject/btvznrtx.html