我知道在VIM中可以通过#和*来搜索光标下的单词,但是这种搜索对于'long_word'之类的单词不起作用,例如,如果我的光标是'l|ong_word',那么我通过#或*进行搜索,'long'之类的单词也被认为是匹配的单词。
我怎样才能轻松地搜索“long_word”,而不是“long”或“long_word2”或“long_long_word”?
答案1
哪些字符属于单词由选项控制'iskeyword'
,并且对于个人来说这可能是不同的文件类型。 和
:setlocal iskeyword+=_
(放入~/.vim/after/ftplugin/<filetype>.vim
),您可以实现这一点。但是,这也会影响使用 等命令的导航w
,也可能会影响语法突出显示。
也许您想要的是将*
和#
命令扩展为可视模式。这样,您就可以选择任意文本,然后搜索该文本。
- 这visualstar.vim 插件提供这种视觉选择的搜索
- 我的搜索突出显示插件有这个,以及额外的与搜索相关的扩展和命令(插件页面有替代插件的链接。)