【发布时间】:2011-05-21 08:02:54
【问题描述】:
在 VIM 中,使用 "/" 命令找到文本后,该文本仍然突出显示。
删除它的命令是什么?我根本不想移除高亮显示功能,但是一旦我找到了我需要的东西,我不想拥有所有那些明亮的文本点。
谢谢。
【问题讨论】:
标签: vim
在 VIM 中,使用 "/" 命令找到文本后,该文本仍然突出显示。
删除它的命令是什么?我根本不想移除高亮显示功能,但是一旦我找到了我需要的东西,我不想拥有所有那些明亮的文本点。
谢谢。
【问题讨论】:
标签: vim
is.vim 插件对我来说非常方便。 它会自动清除各种场景下的搜索,您只需要 通过您使用的任何插件管理器安装它,它会为您完成工作, 无需进行任何设置或手动更改设置。它只是工作。
(图片取自官方github仓库)
【讨论】:
:noh 将去掉突出显示的文本。
【讨论】:
:set nohlsearch
:nohlsearch
或简称:noh。这将清除突出显示,直到执行新的搜索或按下 n 或 N
点击 ESC 键清除突出显示
nnoremap <esc> :noh<return><esc>
按 \(反斜杠)两次清除突出显示
nnoremap \\ :noh<return>
【讨论】:
除了“清除搜索寄存器”之外,您甚至可以将搜索寄存器重置为之前的值:
command! -nargs=* -range S
\ let atslash=@/|exe ':'.<line1>.','.<line2>.'s'.<q-args>|let @/=atslash
但是:
- 这不会重置:hls 的先前状态。我不相信这通常是可能的。
- 这定义了一个新命令:S,用于代替:s。您可以使用 cabbrev 将一个映射到另一个,但是当您将范围添加到替换命令时,这会中断。
【讨论】:
你可以切换它
:set hls!
当然,一个快速而肮脏的替代方法是再次搜索胡言乱语:
/asdsad
我通常将一个密钥绑定到:set hls! 以简化此操作,并在我在一台未安装我的配置文件的机器上使用 vim 时使用乱码方法。
【讨论】:
'incsearch' 选项(这是一个很好的选择),那么搜索乱码将使您的屏幕在输入乱码时随机跳动。将一些普通模式键绑定到:nohlsearch 在各个方面都好得多。
我很懒,输入/asdf 之类的内容,然后按RETURN 键。
【讨论】:
如果您不想删除突出显示,最好的方法之一是清除搜索寄存器,除非您以后需要搜索项。这将防止您必须重新启用突出显示并(编辑:noh 不会永久禁用突出显示)防止您意外跳来跳去。这就是我的设置方式:
nmap <silent> ,/ :let@/=""<CR>
它的作用是在正常模式下映射键序列,/,通过将其设置为空字符串来清除搜索寄存器@/。这只是已经说明的替代方案。
【讨论】:
nmap <silent> ,/ :nohlsearch<CR>.
我的 .vimrc 中有这个:
map <leader>h :set hlsearch!<cr>
所以当我输入时:
\h
它打开/关闭突出显示。
【讨论】:
键入:
:noh
【讨论】:
:nohlsearch的缩写,应该可以帮助你记住它!
:noh 映射为:nnoremap <silent> <esc> :noh<cr><esc> 我发现点击转义是清除搜索突出显示的一种自然 vim 方式。
Esc。 A problem I encountered doing this.