How to get rid of search highlight in Vim
我用:set hlsearch作为默认值。
当我搜索某些内容时,搜索词会突出显示。但是很多时候我都想去掉亮点,所以我选择了:set nohlsearch。这样我就暂时摆脱了亮点。
但是,如果我执行新的搜索,则不会突出显示搜索词。
我想点击esc+esc来消除突出显示,然后设置回:set hlsearch。
有什么建议吗?
尝试使用:noh命令。
vi/vim notes
- 如何将:noh映射到但保持的重新绘制行为完整?
- 不确定这是否是任务的一部分,但如果您坚持,为什么不在映射中添加:redraw?
- 谢谢,使用VIM已经很多年了,但还没有意识到这一点。我只是想知道我的手指是否可以释放/LKJLKJ?
- 我的经验是,手指非常渴望学习新事物,忘记旧事物只需要很长时间;—)
- 谢谢你的小费。这和做/lkj-tho没什么不同……实际上需要更多的按键。但确实按照我们的要求做了,并且不会在屏幕底部留下警告。;)
- 与/lkj不同的是,您可以使用n进入下一场比赛。简而言之,它不会改变状态,但会隐藏突出显示。当然,/lkj通常也是合适的解决方案。重要的是要知道区别;-)
- 为什么我是唯一一个用/asd来做这个的人?
- @0xc0de,左边?;-)
- @Michaelklelin Hacker,不:(要么我的键盘更喜欢我的左手,要么我的打字方式有了不同的发展。
- @另一个假设是:有些人想换手(/,然后是asd,有些人更喜欢用一只手做整个事情(/,然后是lkj)。说实话,我不知道我属于哪一类,我用:noh。
我用
1
| /pleasedisablehighlightthanks |
命令。或者只是
但您应该小心,不要将此命令与以下命令混合使用!
- 它的效果和:noh的效果一样,但是你必须小心不要撞到可以找到的东西;-)
- 这是我使用过的技术——但是:noh也会转换高光(将下一个搜索保留在高光模式中),所以它是"更好的"。(除此之外,我最后在底部出现了一条"pattern not found:kkk"错误消息,必须将其清除。
- 我只使用/asdf,它比较短:)
- 向下投票者需要有幽默感——这很好。
- 我相信选民们会认真对待这件事并尝试…投票赞成。
1
| :noremap <silent> <c-l> :nohls<cr><c-l> |
这将重新绘制屏幕,并使用control-l清除所有搜索词,方便的方法是:)比使用f键更容易。
我的电子文档中有以下内容1(3):
1
| map <silent> <C-N> :let @/=""<CR> |
- 有人能告诉我这段代码里发生了什么吗?我不明白。
- @/是包含最新搜索词的寄存器。此命令清除该寄存器,其效果是搜索突出显示消失。相当于:nohls。
- 我有同样的想法:让它映射到
- @jqno不,它不是等价的,因为它清除了你的搜索词,从而使:norm n(find next match)不可用。:不,请暂时关闭搜索hilite。
- @真的,你是对的!
试试这个:
1 2
| set hlsearch!
nnoremap <F12> :set hlsearch!<CR> |
如果需要,按F12清除。在命令模式下使用:noh清除。
这可能适合您的需要:
1
| nnoremap <esc> :noh<return><esc> |
稍加修改,您就可以使它在插入模式下工作。
您可以搜索文本文件以外的内容。在这种情况下,不会突出显示任何内容。(例如/349I5U9SGH)