在Vim中,有没有办法在搜索时为所有匹配启用动态突出显示?
如果我启用incsearch并输入“/ something”,它将仅突出显示第一个匹配项。如果我启用hlsearch并输入“/ something”,则在按Enter键之前不会发生任何事情(它只会突出显示上一次搜索)。
在emacs中,第一场比赛将突出显示,并且(在稍有延迟之后)屏幕上的所有其他比赛都以不同的颜色突出显示,在扫描一段代码中的匹配时提供几乎即时的反馈。
答案 0 :(得分:4)
不回答您的问题,但也许this Wikia post可以提供帮助吗?
从那篇文章引用:
将以下代码放入vimrc或创建文件 〜/ .vim / plugin / autohighlight.vim(Unix)或 $ HOME / vimfiles / plugin / autohighlight.vim(Windows)包含 脚本如下。然后重启Vim。
要自动突出显示当前字词,请键入
z/
。把关掉, 再次输入z/
。" Highlight all instances of word under cursor, when idle. " Useful when studying strange source code. " Type z/ to toggle highlighting on/off. nnoremap z/ :if AutoHighlightToggle()<Bar>set hls<Bar>endif<CR> function! AutoHighlightToggle() let @/ = '' if exists('#auto_highlight') au! auto_highlight augroup! auto_highlight setl updatetime=4000 echo 'Highlight current word: off' return 0 else augroup auto_highlight au! au CursorHold * let @/ = '\V\<'.escape(expand('<cword>'), '\').'\>' augroup end setl updatetime=500 echo 'Highlight current word: ON' return 1 endif endfunction
答案 1 :(得分:-1)
将此添加到.vimrc
hi Search guifg=black guibg=#C6C5FE gui=BOLD ctermfg=black ctermbg=cyan cterm=BOLD
当然,您可能希望更改颜色以满足您的需求。