当我按下*
诸如 之类的变量名称时hello
,vim 会突出显示诸如this->hello
或 之类的名称this.hello
,但不会突出显示_hello
。
这是一种非常奇怪的行为,因为我可以突出显示所有hello
的 by /hello
。但由于某种原因,*
的行为与 不同/
。
有什么办法可以突出*
显示所有hello
的吗?
答案1
当您使用该*
密钥时,它会有效地搜索
\<theword\>
周围\<...\>
意味着它只查找整个单词。所以bhello
在你的例子中不会被发现。
您可以通过以下方式修改计为非关键字值的字符set iskeyword
默认值(在我的版本中)是
iskeyword=@,48-57,_,192-255
所以我们可以确保_
不属于其中:
set iskeyword=@,48-57,192-255,^_
这可以放在您的.vimrc
文件中或在:set
内部运行vim
答案2
您可以使用该g*
命令代替*
:
g* Like "*", but don't put "\<" and "\>" around the word.
This makes the search also find matches that are not a
whole word.