在vim中searchselect
在编写C ++时,我使用vim和vim插件进行visual studio。 通常,我发现自己想要在函数内search一个string,例如每次调用object->public_member.memberfunc()
。
我知道vim提供了一个简单的方法来search一个单词,按*
和#
,它也可以使用无处不在的斜杠/
命令来searchinput的string。 当试图search像上面那样的较长string的所有实例时,在/
之后需要一段时间才能重新input。
有没有办法searchselect? 例如,用v
高亮显示,然后用y
复制,在/
之后是否有粘贴的方法? 有一个更简单的捷径吗?
检查这个Vim提示: search可视化select的文本
或者你可以简单地用yselect文本并进入search模式/ ,然后你可以用Ctrl + R 0粘贴最后一个被抽出的文本
根据arcanex的回答,这里是另一种做你想做的事情的方法。
- 从视觉上select要search的文字。
- y q / p
- input
说明
q/
作品类似于香草search/
除了你在命令模式,所以p
实际上是“粘贴”,而不是键入字符p
。 因此,上面的内容会将您正在search的字符抽出,然后将其粘贴到search中。
(见:help q/
)
使用q /而不是/ 。 (和q一样 )。 现在,您可以通过您的命令和search历史logging进行VIM编辑! (有时尝试Ctrl-N和Ctrl-P)。
我刚刚(通过优秀的Practical Vim )学到了一个插件。 你可以在GitHub上find插件 。
这个插件让你用*
和#
search一个视觉select。
你实际上可以直观地select文本,并按*和#来search下一个出现的地方…它将工作相同,唯一的警告是:
在search时,select中的空白符合任何空白符号(search“hello world”也会在行尾find“hello”,下一行的开头是“world”)。
使用v突出显示文本,然后使用/ /进行search。
您也可以使用y来抽取所选文本,然后使用p粘贴