我在一个文件中搜索“nurple”。我找到了,太好了。但现在,“nurple”的每一次出现都被渲染成黄上黑的病态。直到永远。

永远,也就是说,直到我搜索一些我知道不会找到的东西,比如“asdhfalsdflajdflakjdf”,这样它就会清除之前的搜索突出显示。

当我搜索完的时候,我就不能按一个神奇的键把高光部分去掉吗?


:noh (nohighlight的缩写)将暂时清除搜索高亮显示。下一个搜索仍然会突出显示。


把这个放进你的。vimrc

" <Ctrl-l> redraws the screen and removes any search highlighting.
nnoremap <silent> <C-l> :nohl<CR><C-l>

            *:noh* *:nohlsearch*
:noh[lsearch]       Stop the highlighting for the 'hlsearch' option.  It
            is automatically turned back on when using a search
            command, or setting the 'hlsearch' option.
            This command doesn't work in an autocommand, because
            the highlighting state is saved and restored when
            executing autocommands |autocmd-searchpat|.
            Same thing for when invoking a user function.

我发现它就在:help #下面,我一直在点击它,它突出显示当前页面上的所有单词,就像当前页面一样。


在.vimrc的末尾添加以下一行以防止高亮显示:

set nohlsearch

有hlsearch和nohlsearch。:help hlsearch将提供更多信息。

如果你想绑定F12来切换它,你可以使用这个:

map     <F12>   :nohlsearch<CR>
imap    <F12>   <ESC>:nohlsearch<CR>i
vmap    <F12>   <ESC>:nohlsearch<CR>gv

/lkjasdf对我来说总是比:noh快。


那我更喜欢这个:

map  <F12> :set hls!<CR>
imap <F12> <ESC>:set hls!<CR>a
vmap <F12> <ESC>:set hls!<CR>gv

,为什么?因为它拨动开关:如果高亮显示是打开的,那么按F12将其关闭。反之亦然。HTH。


我经常搜索,我发现映射下划线键来删除搜索高亮显示很有用:

nnoremap <silent> _ :nohl<CR>

我在我的。vimrc中有这个:

nnoremap ; :set invhlsearch<CR>

这样,;将切换搜索高亮显示。通常,;key重复最新的t/ t/ f/ f命令,但我从来没有真正使用过这个功能。我发现这个设置非常有用,因为我可以非常快速地打开和关闭搜索高亮显示,并且可以轻松地了解我的搜索结果在哪里,一目了然。


我认为最好的答案是有一个领导捷径:

<leader>c :nohl<CR>

现在,当你的文档被高亮显示的术语弄得乱七八糟时,你只需点击+ C(我把前导映射为一个逗号)。它工作得很完美。


" Make double-<Esc> clear search highlights
nnoremap <silent> <Esc><Esc> <Esc>:nohlsearch<CR><Esc>

我认为“Vim清除最后一次搜索突出显示”中的这个答案更好:

:let @/ = ""

我将以下映射添加到我的~/.vimrc

map e/ /sdfdskfxxxxy

在ESC模式下,按e/


此外,如果你想有一个工具,并确保高亮将被重新激活,下次你搜索一些东西,你可以使用这个

nmap <F12> :set hls!<CR>
nnoremap / :set hls<CR>/