阻止注释,然后在Vim中取消高亮显示

阻止注释,然后在Vim中取消高亮显示,vim,map,highlight,comments,Vim,Map,Highlight,Comments,我在~/.vimrc中有一个简单的映射: map ,/ :s:^://:<CR> map,/:s:^://: 然而,在搜索之后,它留下了一个丑陋的亮点,我用一个快速“/fjkljksdk”来补救 以下是我在搜索和替换后立即取消高亮显示的非工作尝试: map ,/ :s:^://:<CR>|:nohl map,/:s:^:/:|:nohl 感谢您的帮助--Mitchell您可以尝试: map ,/ :s:^://:<BAR>:nohl<CR>

我在~/.vimrc中有一个简单的映射:

map ,/ :s:^://:<CR>
map,/:s:^://:
然而,在搜索之后,它留下了一个丑陋的亮点,我用一个快速“/fjkljksdk”来补救

以下是我在搜索和替换后立即取消高亮显示的非工作尝试:

map ,/ :s:^://:<CR>|:nohl
map,/:s:^:/:|:nohl
感谢您的帮助--Mitchell

您可以尝试:

map ,/ :s:^://:<BAR>:nohl<CR>
map,/:s:^:/::nohl

map,/:s:^:/::nohl

map,/:调用setline('.',替换(getline('.'),'^','/','')

一种解决方案是将
设置nohlsearch
添加到
~/.vimrc
中,并在所有搜索中忘记该问题。

您可以在不使用
:s
的情况下实现目标:

nnoremap ,/ I//<Esc>

在当前行(第1列)的真正开始处添加
/

突出显示仍然存在。是的,但我更喜欢在实际搜索时突出显示。
map ,/ :call setline('.', substitute(getline('.'), '^', '//', ''))<CR>
nnoremap ,/ I//<Esc>
nnoremap ,/ 0i//<Esc>