我在编写C++时使用Vim和Visual Studio的Vim插件。通常,我发现自己想要搜索函数内的字符串,例如每次调用object->public_member.memberfunc()
。
我知道Vim提供了一种方便的方法来搜索单个单词,只需按*
和#
,它还可以使用无处不在的斜杠/
命令来搜索键入的字符串。当试图搜索像上面这样的较长字符串的所有示例时,在/
之后重新键入需要一段时间。
有没有办法搜索选择?例如,用v
高亮显示,然后用y
复制,有没有办法粘贴到/
之后?有没有更简单的快捷方式?
6条答案
按热度按时间7xzttuei1#
检查此Vim提示:Search for visually selected text
或者你可以简单地用y拖动选中的文本,然后进入搜索模式**/,然后你可以用Ctrl+R 0**粘贴最后一个拖动的文本
t8e9dugd2#
答案
1.拖动要搜索的文本
1.进入
q/
的工作原理类似于vanilla search/
,不同之处在于你是在命令模式下,所以p
实际上是"粘贴",而不是输入字符p
。有关详细信息,请键入
:help q/
9fkzdhlc3#
使用q****/而不仅仅是/。(与**q****:**相同)。现在您可以通过您的命令和搜索历史进行VIM编辑!(有时尝试Ctrl-N和Ctrl-P)。
z0qdvdin4#
我刚刚了解到(通过优秀的书 * 实用Vim*)有一个插件。你可以找到plugin on GitHub。
该插件允许您使用
*
和#
搜索可视选择。i7uq4tfw5#
实际上,您可以直观地选择文本,然后按 * 和#搜索下一个匹配项...它的工作原理是一样的,唯一的警告是:
搜索时,选择中的空格与任何空格匹配(搜索“hello world”也会在一行的末尾找到“hello”,而“world”在下一行的开头)。
http://vim.wikia.com/wiki/Search_for_visually_selected_text
35g0bw716#
--〉如果你想在gvim中突出显示一个文本
1.选择文本并复制
1.然后**?粘贴所选文本**(注意:这对插入模式无效)