我喜欢使用hlsearch
,但我讨厌在搜索后突出显示所有内容,为了解决这个问题,我可以简单地使用:nohlsearch
或它的缩写,但这仍然是很多工作,所以我决定尝试按下escape。我想到的是:
nnoremap <ESC> :nohlsearch<CR>
这完全符合我在GVim中的要求,我通常使用GVim进行开发,但它在Vim中不起作用。
如果我在vim中搜索某些内容,按escape键取消高亮显示,然后使用其中一个箭头键导航,vim将直接进入插入模式,并在新行中插入一个字符。
由于我从来没有真正来到周围使用h
,j
,k
和l
的导航,这是真的很烦人,我想知道我如何才能使vim的行为像gvim。
如果你需要更多的信息,你可以找到我的整个vim配置here。
3条答案
按热度按时间jogvjijk1#
您的问题是,当您按
<Up>
时,终端发送类似<Esc>OA
的内容(如果您在插入模式下键入<C-v><Up>
,您将看到它),它被重新Map到:nohlsearch<CR>OA
。我不知道任何解决方案,除了不Map单个<Esc>
,尝试Map到两个<Esc>
。myss37ts2#
我创建此Map是为了在按两次
<Esc>
时禁用搜索wkyowqbh3#
:noh
工作量是否仍然太大?EDIT:我不知道你怎么想,但我个人认为:noh比按Esc键更容易,因为我可以按下所有的按钮,而不用把小指伸得太远(这就是为什么我认为从插入模式返回命令模式时默认的EscMap有点不合适)。如果你真的经常使用:nohlsearch,你可能应该把它重新Map到你可以从主区域访问的东西(即常规字母,数字,或者Ctrl字母)。
无论如何,输入你给予的命令在我的vim(在gnome终端)中工作。你确定你把规则放在.vimrc文件中,而不是.gvimrc文件中吗?重新启动vim后没有运气吗?试试
:source /path/to/config/file
,看看它是否工作。