search文本后摆脱Vim的亮点

在VIM中,用“/”命令查找文本后,该文本保持高亮显示。

什么是删除的命令? 我根本不想删除突出显示function,但是一旦find我需要的东西,就不想让所有这些明亮的文本显示。

谢谢。

input这个:

:noh 

你可以切换它

 :set hls! 

当然,一个快速和肮脏的select是另一个search乱码:

 /asdsad 

我通常绑定一个键:set hls! 当我在某些机器上的vim中,我没有安装我的configuration文件,这使得这一点变得简单并且使用乱码方法。

我有这个在我的.vimrc中:

 map <leader>h :set hlsearch!<cr> 

所以当我input:

 \h 

它切换打开/closures突出显示。

我很懒,input类似/asdf然后击回RETURN键。

如果你不想删除突出显示,最好的办法之一是清除search注册,除非你以后需要search项目。 这将防止你不得不重新启用突出显示和 (编辑: noh不会永久禁用突出显示),防止你意外跳来跳去。 这是我如何设置:

nmap <silent> ,/ :let@/=""<CR>

这是映射键序列,/在正常模式下清除search寄存器@/通过将其设置为一个空string。 这只是已经陈述的一个select。

完全禁用search亮点

 :set nohlsearch 

清除,直到下一个search

 :nohlsearch 

或者:noh简称。 这会清除突出显示,直到执行新的search或者按下nN.


按下自定义地图清除

  • 清除按ESC键上的高光

     nnoremap <esc> :noh<return><esc> 
  • 按下\ (反斜杠)两次清除高亮

     nnoremap \\ :noh<return> 

除了“清除search寄存器”之外,您甚至可以将search寄存器重置为其以前的值:

 command! -nargs=* -range S \ let atslash=@/|exe ':'.<line1>.','.<line2>.'s'.<q-args>|let @/=atslash 

然而:
– 这不会重置以前的状态:hls 。 一般来说,我不相信这是可能的。
– 定义了一个新的命令:S ,用来代替:s 。 您可以使用cabbrev将一个映射到另一个,但是在向substitute命令添加一个范围时会中断。

:noh将摆脱突出显示的文本。