为什么将 ESC 键映射到清除文本突出显示的 Vim 映射会在 Vim 中导致奇怪的行为?

问题描述 投票:0回答:1

背景: 我正在使用 Vim 的终端版本。我发现本指南提到了一种使用 ESC 键从之前的正则表达式搜索中清除突出显示的文本的方法。

将映射

map <esc> :noh<cr>
放入我的
vimrc
文件中确实会产生所需的效果...但是

(1): 它导致 vim 以“替换”模式启动
(2):它破坏了箭头键(它们不移动光标,而是插入字符)。

这个 Stackoverflow 问题中,解决了使用映射

nnoremap <esc> :noh<return><esc>
可以完成这项工作,但仅在使用 GUI 时才可以正常工作,并且在不使用 GUI 时会导致问题(我的情况)。

这个映射可以修复吗?如果没有,为什么我不能使用退出键来清除文本突出显示。

我的vim版本是:

VIM - Vi IMproved 8.1

macos vim highlight
1个回答
0
投票

我遇到了同样的问题,决定改为映射(按“ESP”两次)。我不再有问题了。

nnoremap <ESC><ESC> :noh<CR>
© www.soinside.com 2019 - 2024. All rights reserved.