如果我在源文件中实现了这样的C ++函数:
void ClassName::foo ()
{
if ( true)
{
while ( true )
{
fork ();
1 / 0;
}
foo ();
}
}
然后我将光标放在第3行的最后一行foo ()
并按 * ,它会抱怨“搜索命中BOTTOM,继续在TOP”。换句话说:
/\<foo\>
不符合
ClassName::foo
无论如何都要覆盖默认搜索功能
答案 0 :(得分:5)
这是因为您对C ++文件的'iskeyword'
设置包含:
字符。 *
标识符上的ClassName::foo
命令将突出显示整个标识符。
您可以使用g*
命令(不执行整个词搜索,但也会匹配例如pfooey
),或通过以下方式更改选项
:setlocal iskeyword-=:
(但请注意,这会对w
之类的动作产生影响,甚至可能会破坏语法高亮。)
答案 1 :(得分:0)
默认情况下,wrapscan
选项处于启用状态,因此您应该按照预期的那样获得相同的消息,并将光标跳至foo
中的ClassName::foo
。
执行:verbose set wrapscan?
以查看默认值的更改位置。
另外,你在标题中提到n
但在身体中没有提到,是什么?