在vim中搜索选择

时间:2008-12-12 15:43:10

标签: vim viemu string-search

在编写C ++时,我为visual studio使用vim和vim插件。通常,我发现自己想要在函数中搜索字符串,例如每次调用object->public_member.memberfunc()

我知道vim通过按*#提供了一种搜索单个单词的便捷方式,它还可以使用无处不在的斜杠/命令搜索类型化的字符串。当尝试搜索上述字符串的所有较长字符串的实例时,在/之后重新键入需要一段时间。

有没有办法搜索选择?例如,使用v突出显示,然后使用y进行复制,是否可以在/后粘贴?是否有更简单的捷径?

5 个答案:

答案 0 :(得分:146)

检查此Vim提示:Search for visually selected text

或者您可以使用 y 简单地抽取所选文字并转到搜索模式 / ,然后您可以使用 Ctrl + R 0粘贴上一个被删除的文字

答案 1 :(得分:74)

答案

  1. 抓取您要搜索的文字
  2. q / P
  3. 输入
  4. <强>解释

    q/的工作方式类似于vanilla搜索/,除非您处于命令模式,因此p实际上会“粘贴”而不是键入字符p。因此,上面将复制您正在搜索的文本并将其粘贴到搜索中。

    有关详情,请输入:help q/

答案 2 :(得分:37)

使用 q / 而不是 / 。 (与 q 相同)。现在,您可以通过命令和搜索历史进行VIM编辑! (有时尝试Ctrl-N和Ctrl-P。)

答案 3 :(得分:9)

我刚刚(通过优秀的书籍 Practical Vim )了解到有一个插件。 您可以找到plugin on GitHub

该插件可让您使用*#搜索视觉选择。

答案 4 :(得分:2)

您实际上可以直观地选择文本,然后按*和#搜索下一个匹配项......它的工作方式相同,唯一需要注意的是:

  

选择中的空格与任何空格匹配,搜索时(搜索“hello world”也会在一行的末尾找到“hello”,在下一行的开头有“world”)。

http://vim.wikia.com/wiki/Search_for_visually_selected_text