Emacs初体验

Posted 技术后勤部

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Emacs初体验相关的知识,希望对你有一定的参考价值。

学习工作中已经使用vim好几年了,最近折腾了一下SpaceVim,体验不是很好,又转过身来体验了一下Emacs。

关于Vim还是Emacs哪个编辑功能更强大,因为刚了解一点点Emacs,不敢瞎评论。但是了解了一点Emacs之后,还真是挺有收获的。

1. 从Emacs的快捷键里了解到了一些shell的快捷键

看到Emacs<Ctrl+k>的快捷键,怎么觉得跟shell的好像是一样的啊?后来一想,bash和emacs是一家子,快捷键不会都一样吧?试了一下,果然大部分都一样。shell的那些快捷键一直没记住几个,没想到学了一下Emacs基本上全记住了。

后来才发现bash原来默认的快捷键模式就是使用Emacs的快捷键的,而且可以通过set -o vi改成vi的。但是vi模式需要模式切换,没有提示的时候很容易分不清自己在哪个模式,用起来体验其实并不是太好。

  
2. 发现一些Vim在插入模式的快捷键

另一点值的注意的是,Emacs的快捷键其实很多和vim都不冲突,那我们如果在Vim插入模式下实现这些快捷键,是不是就可以插入模式下快速移动了?去查了一下Vim的帮助手册,原来它本来就是支持的。在插入模式下一些Ctrl组合键能实现光标的快速移动,之前都没怎么注意过这些功能。

如果我们稍做些map,基本上可以实现在插入模式下的快速移动。我加了下面这些快捷键,试了下还是挺方便的:

inoremap <C-A> <Home>inoremap <C-E> <End>inoremap <C-H> <Left>inoremap <C-J> <Down>inoremap <C-K> <Up>inoremap <C-L> <Right>


3. 告别模式切换的烦恼

虽然Vim编辑代码非常方便,但是一般写中文文档我不会用它。主要是中英文的切换,再加上模式的切换,切来切去,体验真的很差。比如我们要跳到上一行,需要按下ESC,然后按k,这时候不会跳到上一行,因为输入法还是中文输入法,k还在输入框里,真不爽!现在我用Emacs写中文文档了,感觉真的舒服很多,Ctrl键和Alt键与按下去之后,再按下的字母就不会被输入法处理了,跟英文的输入体验完全一致!

不过感觉处理代码Vim比起没有配置过的Emacs,还是要方便快捷很多,所以现在写代码还是继续用vim。另外Emacs虽然比较大和复杂,但是如果只是使用一些基本的快捷键,也有很简单的实现方案,比如Joe编辑器就有emacs模式,很小,很强大!    


还没有时间了解lisp这门传说中的语言,有时间体验一下,一门优秀的语言,跟编辑器结合起来会不会很爽?了解了还不到九牛一毛,就有了不少收获,Emacs这个神奇的编辑器,还真是有意思!


另外真想吐槽一下Emacs官网,多国语言那个截图里的“你好,早晨”。

以上是关于Emacs初体验的主要内容,如果未能解决你的问题,请参考以下文章

YASnippet - emacs 的代码片段管理工具

python初体验

Flutter学习-flutter开发初体验

Django 代码初体验

结对编程初体验——代码复审

Qt for Python 5.12初体验