vim Map:nohlsearch到转义键

tcomlyy6  于 2022-11-11  发布在  其他
关注(0)|答案(3)|浏览(130)

我喜欢使用hlsearch,但我讨厌在搜索后突出显示所有内容,为了解决这个问题,我可以简单地使用:nohlsearch或它的缩写,但这仍然是很多工作,所以我决定尝试按下escape。我想到的是:

nnoremap <ESC> :nohlsearch<CR>

这完全符合我在GVim中的要求,我通常使用GVim进行开发,但它在Vim中不起作用。
如果我在vim中搜索某些内容,按escape键取消高亮显示,然后使用其中一个箭头键导航,vim将直接进入插入模式,并在新行中插入一个字符。
由于我从来没有真正来到周围使用hjkl的导航,这是真的很烦人,我想知道我如何才能使vim的行为像gvim。
如果你需要更多的信息,你可以找到我的整个vim配置here

jogvjijk

jogvjijk1#

您的问题是,当您按<Up>时,终端发送类似<Esc>OA的内容(如果您在插入模式下键入<C-v><Up>,您将看到它),它被重新Map到:nohlsearch<CR>OA。我不知道任何解决方案,除了不Map单个<Esc>,尝试Map到两个<Esc>

myss37ts

myss37ts2#

我创建此Map是为了在按两次<Esc>时禁用搜索

nnoremap <silent> <Esc><Esc> :let @/ = ""<CR>
wkyowqbh

wkyowqbh3#

:noh工作量是否仍然太大?

EDIT:我不知道你怎么想,但我个人认为:noh比按Esc键更容易,因为我可以按下所有的按钮,而不用把小指伸得太远(这就是为什么我认为从插入模式返回命令模式时默认的EscMap有点不合适)。如果你真的经常使用:nohlsearch,你可能应该把它重新Map到你可以从主区域访问的东西(即常规字母,数字,或者Ctrl字母)。

无论如何,输入你给予的命令在我的vim(在gnome终端)中工作。你确定你把规则放在.vimrc文件中,而不是.gvimrc文件中吗?重新启动vim后没有运气吗?试试:source /path/to/config/file,看看它是否工作。

相关问题