我喜欢在vim中搜索时突出显示。这就是我想要的:
我用/
然后,所有结果都会突出显示。如果我按下n
或N
以外的任何其他键,我希望切换突出显示。
如果我在任意数量的命令后再次按n
或N
,我想切换突出显示。
我从哪里开始?我甚至不确定谷歌是什么。
答案 0 :(得分:2)
我的.vimrc
中有这个nnoremap <CR> :noh<CR>
这样当我看到突出显示时,我只需按输入即可将其删除。它会一直消失,直到我再次点击 n 或 N 。
注意:如果您想保留的功能,请输入,在命令末尾添加另一个<CR>
。
答案 1 :(得分:2)
我重新映射control-l(小写L),以便清除搜索结果并重新绘制屏幕。 .vimrc
中的这一行就是这样做的:
nnoremap <silent> <C-l> :nohl<CR><C-l>
答案 2 :(得分:1)
您可以使用nohl
手动停用上一个突出显示。
如果我能弄清楚如何自动化,我会告诉你。
答案 3 :(得分:0)
一种方法是设置切换映射。这些是我在.vimrc中的一些切换映射:
let mapleader="\\"
noremap <silent> <Leader>th :set invhls hls ?<CR>
noremap <silent> <Leader>tn :set invnumber number ?<CR>
noremap <silent> <Leader>ts :set invspell spell ?<CR>
noremap <silent> <Leader>tw :set invwrap wrap ?<CR>
要切换突出显示,只需键入\th
即可切换hls。其他人是line number
,spell checking
,line wrapping
。最终的hls ?
将显示新模式。
答案 4 :(得分:0)
我更喜欢这个,因为对我而言,它只不过是自然的。
开始使用/<pattern>
进行搜索,完成后,只需输入<Leader>/
即可停止突出显示。
nnoremap <silent> <Leader>/ :set nohl<CR>