在Vim中进行搜索后,我突出显示了所有事件。我怎样才能禁用它?我现在再次搜索一些找不到的胡言乱语。
有没有一种方法可以暂时禁用高亮显示,然后在需要时再次启用?
在Vim中进行搜索后,我突出显示了所有事件。我怎样才能禁用它?我现在再次搜索一些找不到的胡言乱语。
有没有一种方法可以暂时禁用高亮显示,然后在需要时再次启用?
当前回答
为这两种行为定义映射,因为它们都很有用!
完全清除搜索缓冲区(例如,按n进行下一次匹配将不会继续搜索)保留搜索缓冲区,并切换突出显示搜索结果的开/关/开/。。。(例如,按n将继续搜索,但突出显示将基于切换的当前状态)
" use double-Esc to completely clear the search buffer
nnoremap <silent> <Esc><Esc> :let @/ = ""<CR>
" use space to retain the search buffer and toggle highlighting off/on
nnoremap <silent> <Space> :set hlsearch!<CR>
其他回答
您也可以在.vimrc文件上添加映射,
nmap<C-N>:无效搜索
然后你可以按
Ctrl+N组合键
随时清除突出显示的文本
nnoremap silent <cr> :noh<cr><cr>
这样我就可以在搜索后按回车键时,去掉命令行中显示的noh。
:就像开始输入一个新命令,Backspace将其清除并将焦点放回编辑器窗口。
我只使用下面的简单nohl,不需要插件。
:无
如果您想快速启用/禁用高亮显示,可以将关键点映射到
" 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
nohlsearch的任何解决方案都不受欢迎,下一次搜索呢?最好的答案是由let@/=“”创建的,但我不喜欢mac上的按功能键映射,所以这里是我的答案:
let mapleader=','
let g:mapleader=','
nnoremap <leader>cs :let @/ = ""<cr>