vim 上下左右键 方向键 无法正常输入 显示ABCD的解决方案

最近使用vim发现了一个很奇怪的问题:
在insert mode下输入上下左右 方向键 会输入OAOBOCOD。

搜了下发现比较多的解决方案是:

set nocompatible

作为一个old vimer,肯定是不会犯这种错误的。
那么问题在哪呢?
在stackoverflow上发现了一个回答stackoverflow,大意就是当你输入<-时vim看到的是<esc>[d
突然惊醒!前几天设置了esc键的映射!我的设置是inoremap <esc> <nop>(我使用了其他键映射到esc),当我输入<-时,实际上输入的是<nop>[d,那么vim自然无法识别为方向了。

那么解决方案呢?
1.不设置esc的mapping:自然就可以了,这当然治标不治本,我写到这里结束岂不是耽误读者的时间?
2.照常使用inoremap <esc> <nop>,但在此之后加上inoremap <esc>[ <esc>[,强行设置<esc>[ 的映射。那么再次输入<-的时候,vim检测到的<esc>[ 就不会被转义了。
这个解决方案太他妈天才了!
在中文网站上貌似没看到这种解决方案,故分享之。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值