vim中的多重搜索(我挑剔)
我希望能够在vim中搜索多个字符串。我遇到过很多解决方案,但都很糟糕:vim中的多重搜索(我挑剔),vim,editor,Vim,Editor,我希望能够在vim中搜索多个字符串。我遇到过很多解决方案,但都很糟糕: 首先,键入“/”以外的任何内容开始搜索都是失败的。“:match SearchName search\u string”非常糟糕。“:Search foo”也不好 因此,以下是我对vim中良好的多搜索解决方案的要求: 必须能打字/ 清算搜索必须很容易 每个搜索应该使用不同的颜色 理想情况下,应满足其他一些标准: 应能够轻松清除上次搜索或所有搜索 应该能够轻松找到上一次搜索或任何当前搜索的下一个结果 快捷方式*和#应
Edit:MultipleSearch2,来自上面的一个链接,对我的许多语法高亮显示做了非常糟糕的事情。它对我来说根本没有什么用处。我使用了MultipleSearch,并成功地使用了
.vimrc
中的以下配置:
:nmap <C-_> :Search
:nmap <C-Bslash> :SearchReset<cr>
:let g:MultipleSearchColorSequence="232,232,232,232"
:let g:MultipleSearchTextColorSequence="51,105,199,228"
:nmap:搜索
:nmap:SearchReset
:设g:MultipleSearchColorSequence=“232232”
:let g:MultipleSearchTextColorSequence=“51105199228”
您应该能够使用:nnoremap/:Search
将:Search的映射更改为/
编辑:我注意到我提到的:nnoremap
在.vimrc
中不起作用,但它在vim中只起一次作用。奇数…您可以使用:match
、:2match
和:3match
内置命令
这些允许任意突出显示颜色。要使工作流自动化(通过使用最新使用的搜索模式),您必须计算出一些映射,这些映射可以执行以下操作(可能直接使用@/
注册,并执行智能“旋转”方案以获得所需的效果)
请注意,match
类似于语法高亮显示,但实际上并不干扰它。然而,一个值得注意的效果是,match
高亮显示也是缓冲区本地的。nnoremap/:Search
或其他任何内容。这可能会让我更接近语法高亮显示。请参阅我的编辑…您可能想看看Mark.vim插件-操作是什么对Mark的看法?我觉得很有希望。:match
是窗口的局部,而不是缓冲区,因此在分割缓冲区后,高光将不会出现。这可以通过使用WinEnter
事件来纠正。另外:match由matchparen插件使用,因此可能会出现不希望的副作用。@PeterRincker:感谢附加信息。“已纠正”是否是正确的词语选择取决于OP的要求:)