【进击的Vimmer】vim学习路线图2——替代ESC键

上一篇hjkl里面提到为什么不用方向键来移动光标的重要原因是方向键离主键盘区比较远,那么聪明的你肯定也会以此类推,ESC键离主键盘区也不近啊,当初的vi设计者好像留了一个大坑。vim的各种移动都需要跑回normal模式,这样是不是降低了效率呢?大神的回答是你应该把大部分的时间都花在normal模式,insert只是用来辅助的,这就需要高频使用ESC键了。

上篇里面有当时的键盘,可以清楚地看到ESC键就在现在的TAB键处,还在左手小拇指的控制范围之内。那么现代的我们该默默忍受吗?当然不是,这也太不vimmer了。

vim默认配置中,除了esc键可以退出编辑模式外,还有另外以下几种方式:

1.CTRL-[,插入模式下这个键位跟esc键的效果完全一样,而且也符合双手不离开主键盘的原则,多练练就可以了。

2.CTRL-c,相比ctrl [, ctrl-c更加适合单手操作,在大部分情况下跟esc命令没有区别,当然也有极少数情况例外,主要有 不触发InsertLeave事件,不进行缩略词补全。

3.CTRL-o,可以返回normal模式执行一次命令之后再返回insert模式,这个方式在高效率编辑方面还是很有用的,如果你只想执行一下命令然后再重新编辑,就不用先按Esc键执行完命令之后在按i进入编辑,现在不常用也没关系,记住就好,将来想优化效率的时候再尝试一下。

4.CTRL-@,插入上次输入的内容并退出编辑模式,跟ctrl-o类似,都是需要自己去体会其中的精髓,用好了就可以提高效率。

上文说了,原本的ESC键是在Tab处,那么就让它返回原处吧,这样不好,因为tab键也是比较高频按键,倒是下方的CapsLock好像没什么用,事实证明,vim下基本可以不用capslock键,至少我大写都是通过Shift来实现,如果是一长串的大写,可以先用小写输入,然后用vim的U键把它们转换成大写。

ESC键跟CapsLock键置换,具体方法参考:ESC-CapsLock按键置换

下面给出几种自定义的方案,不过需要先搞懂vim的配置文件.vimrc,windows系统下一般是_vimrc,默认情况下这个文件是不存在的,需要你去新建一个空白文件,如果还是不怎么懂,那么可以去百度或谷歌,教程很多。

inoremap jj <ESC>   作用是将jj键映射到ESC键,快速按两下j将触发ESC键

inoremap jk  <ESC>  作用是将jk键映射到ESC键,快速按jk将触发ESC键

以上几种方式都各有利弊,我用过ctrl-[和ctrl-c,映射也用过一段时间,感觉ctrl-c更适合单手操作(别问我为什么要单手,自行体会),置换capslock很有优势,有人认为形成习惯后去别人的机器上会很别扭。

我目前是用Ctrl-[来实现,习惯了。

所以你认为呢?

多折腾一下找到适合自己的很重要。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 曾经在思科的工厂测试系统`KlemTest` (`SUSE`命令行模式)中使用`VI`/`VIM`超过2年半,现在...
    戈多在地狱阅读 5,831评论 1 13
  • Vim几句话介绍Vim是Unix系统上的文本编辑软件(你该不会不知道什么是文本编辑软件吧!),在windows上也...
    何必遠方阅读 8,406评论 0 3
  • 一. Vim是什么 都说程序员只用两种编辑器,一种是编辑器之神Vim,一种是神的编辑器Emacs,可现实生活中,我...
    程序员在深圳阅读 12,263评论 9 58
  • 生命就是这样一个过程,一个不断超越自身局限的过程,这就是命运,任何人都是一样,在这过程中我们遭遇痛苦、超越局限、从...
    如歌的行板紫雪阅读 3,226评论 0 2
  • 最不是天上有,人间自问不可留。 一晌春光醉梦好,一展愁眉不见侯。 再不寻刀光剑气哪里去,且看我尤住风尘享自由!
    清风屿上仙阅读 1,391评论 0 0