在Vim中进行搜索后,我突出显示了所有事件。我怎样才能禁用它?我现在再次搜索一些找不到的胡言乱语。
有没有一种方法可以暂时禁用高亮显示,然后在需要时再次启用?
在Vim中进行搜索后,我突出显示了所有事件。我怎样才能禁用它?我现在再次搜索一些找不到的胡言乱语。
有没有一种方法可以暂时禁用高亮显示,然后在需要时再次启用?
当前回答
这是我使用的(从许多不同的问题/答案中提取):
nnoremap <silent> <Esc><Esc> :let @/=""<CR>
使用“double”Esc键可以删除突出显示,但一旦再次搜索,突出显示将再次出现。
另一种选择:
nnoremap <silent> <Esc><Esc> :noh<CR> :call clearmatches()<CR>
根据vim文档:
清除匹配()清除以前由|matchadd()|和|:match |命令。
其他回答
如果您想快速启用/禁用高亮显示,可以将关键点映射到
" Press F4 to toggle highlighting on/off, and show current value.
:noremap <F4> :set hlsearch! hlsearch?<CR>
只需将上面的代码段放在.vimrc文件中。
这是我显示和隐藏搜索突出显示的最方便的方法
有关更多信息,请查看文档http://vim.wikia.com/wiki/Highlight_all_search_pattern_matches
我通常将:noh映射到反斜杠键。要重新启用突出显示,只需单击n,它将再次突出显示。
我把这个添加到我的vimrc文件中。
命令H让@/=“”
在您进行搜索并想清除搜索中的亮点后,只需执行以下操作:H
我个人喜欢将esc映射到命令:noh,如下所示:
地图<esc>:否<cr>
我最近写了一整篇关于Vim搜索的文章:如何在普通Vim上搜索,以及增强搜索功能的最佳插件。
我认为将@ShaunBouckaert和2009年3月19日16:22的答案混合在一起是一个很好的折中方案:
" Reset highlighted search
nnoremap <CR> :let @/=""<CR><CR>
按Enter键,突出显示的文本不再突出显示,而搜索突出显示仍处于启用状态。