我想在Vim / gVim中搜索多个字符串,并用不同的颜色突出显示它们。是否可以通过现成的Vim或插件来执行此操作?
Answers:
有两种简单的方法可以在vim编辑器中突出显示多个单词。
进入搜索模式,即键入' / ',然后键入\ v,然后键入要搜索的单词,并用' |分隔。'(烟斗)。
例如:/\vword1|word2|word3
进入搜索模式,然后键入要搜索的单词,并用' \ |分隔 '。
例如:/word1\|word2\|word3
基本上,第一种方法使您进入正则表达式模式,从而无需在用于搜索的每个管道或其他定界符之前放置任何额外的反斜杠。
对于两个搜索模式,这可以手动完成而无需任何脚本。
:match Search /pattern/
:match Search /<CTRL-R>/ # highlight the current search pattern
搜索是突出显示组的名称,请使用补全选择另一组以不同颜色突出显示。
:match <TAB>
:match <TAB> # completion will list all highlight group
当您不能使用自己的vim配置时,这非常方便。
:match none # clear the match pattern to stop highlighting
是的,您可以直接使用matchadd()
。
添加亮点,例如 对于尾随空格:
:highlight ExtraWhitespace ctermbg=grey guibg=grey
:call matchadd('ExtraWhitespace', '\s\+$', 11)
要查看所有匹配项:
:echo getmatches()
要删除匹配项,请使用matchdelete()
。例如。:
:call matchdelete(7)
MultipleSearch:同时突出显示多个搜索,每个搜索使用不同的颜色。
http://www.vim.org/scripts/script.php?script_id=479
:Search <pattern1> //will highlight all occurences of <pattern1> in the current buffer.
A subsequent :Search <pattern2> will highlight all occurences of <pattern2> in the current buffer.
我的Mark插件可以同时突出显示不同颜色的多个单词,例如内置搜索。它带有许多映射和命令,可以持久保留图案,并支持多种调色板。
MultipleSearch2是另一个与vim搜索集成的脚本:http : //www.vim.org/scripts/script.php? script_id=1183
我更喜欢突出显示插件,简单而足够,可以自动突出显示具有不同颜色的不同单词。
\+m
单击(或双击)要突出显示的每个单词。每次您得到不同的颜色。