Vim:退出单字符替换模式当使用`nnoremap时 `

Vim:退出单字符替换模式当使用`nnoremap时  `

我已经受过太多训练,无法使用<C-C>返回正常模式。我明白有<C-C>和之间的差异<ESC>但这不是这个问题的重点。

我使用映射,因此在正常模式下nnoremap <C-C> <silent> <C-C>按下时不会看到消息“Type :quit<Enter> to exit vim” 。<C-C>

当处于正常模式并按下时,r我无法使用 取消<C-C>,而是只会插入不可打印的字符。有办法改变这种行为吗?

答案1

首先,那个

nnoremap <C-C> <silent> <C-C>

参数<silent>位置错误;它可以工作,但不是你想象的那样(并且它会发出蜂鸣声)。更好地使用这个:

nnoremap <C-C> <Nop>

^C为了避免在 aborting 时插入r,还需要为其定义一个特殊的映射:

nnoremap r<C-c> <Nop>

相关内容