一个Emacs程序员的一天

Posted 码农翻身

tags:

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

Emacs被称为神之编辑器,用起来感觉是什么样子呢?我们来看看一个Emacs程序员的一天。


闹铃响了, 周一真不想上班, 可是想想那几十年的房贷,瞬间充满斗志,我骨碌一下就爬了起来。 

   

9点半就到了公司,居然没多少人,周日加班的那帮家伙估计还没起床。 

   

打开电脑,启动心爱的Emacs。这才想起了昨天晚上微信群里的一场口水战,居然有人喷Emacs, 他们是中IDE的毒太深了,体会不到Emacs的美。   

   

我承认,IDEA, Eclipse在Java领域做得很好,但是这个世界上还有很多别的语言啊,比如我现在开发的是Elixir项目,上哪儿去找像IDEA, VS那样的IDE?更不用说那么多小众语言了。 

   

好的开始是成功的一半, 先规划一下今天的工作吧, 进入Emacs org-mode , 把今天要做的任务整成ToDo列表。 

   

   

可能有人会觉得奇怪,怎么在编辑器里搞ToDo啊?这也正是Emacs强悍的地方,不仅仅是写代码,有很多非常优秀的插件,能完成各种各样的事情。

   

打开文件, 开始编程, 代码导航,代码格式化,跳转,多光标编辑,补全,模板等等等等你能想到的想不到的,Emacs 统统能满足。 

   

一个Emacs程序员的一天

   

如果有特殊需求,我就自己去定制,去修改插件,你没看错,Emacs的插件源码都是开放的, 我能找到那个地方,覆盖它,实现新的功能,这样我就不用祈祷着IDE下一版本升级包含这个特殊需求了。 

   

我的地盘我还做不了主,还得看别人眼色?笑话!当然, 你得会一点儿Lisp,因为Emacs中绝大部分插件和配置文件,都是用Emacs Lisp写的。 

   

昨天的微信群中有人担心只用键盘,快捷键太多记不住啊。其实我也记不住啊,我只能记得住高频使用的那些,以及自定义的顺手的那些,剩下的都交给模糊补全啦,只要输入几个零星的字母就好。而且 Emacs 自带的帮助文档非常全,遇到不会的直接问 Emacs 就好啦。 

   

写完了代码,肯定要提交啊,是时候祭出magit这个大杀器了,  the magical Git interface, 可以快速、方便、直观地操作Git。 

   

一个Emacs程序员的一天

   

可能有人要问了,这些功能我的IDE也有啊, 还是GUI的,很漂亮哦 !   

   

其实Emacs比键鼠操作的GUI好在它允许你用同一种方式,操作不同的东西,所以使用Emacs就有一种流畅的感觉。 编辑,查找,光标定位,撤销代码,格式化代码,多文件,多窗口,git,commit,blame,历史回溯,代码片段。这些用熟练是一个整体的感觉。

   

提升效率的核心还是编辑本身非常流畅,编辑流畅思路才能流畅,不是吗? 

   

我这么说估计你也体会不到,还有可能被别人说成是装逼,懂我的自然懂,不懂的自然不懂,不再解释了。 

   

一口气写了两个小时的代码,遇到一个技术问题,Google 一下,嗯,这个解决方案不错,以后用得着, 用Org Capture 把它记录到笔记中。  

   

领导走过来布置了一个任务,不太紧急, 用Org Capture记录到我的Todo中, 下午再做,别把我当前的编程思路给打断了。 


一个Emacs程序员的一天


   

中午吃饭的时候,张大胖说Java之父高司令和自由软件领袖/GNU Emacs作者/GCC作者Richard Matthew Stallman (RMS)撕起来了,说高司令撕RMS是因为RMS偷了他的Emacs代码。 

   

张大胖看我的眼神中透漏着一丝狡黠,那厮似乎在嘲笑我用的Emacs是偷来的..... 

   

唉,这其实已经成为一个悬案了,我都懒得搭理他,我决定一周内不在码农翻身上回答他任何技术问题,以示惩罚。 

   

下午的时候就没有那么高效率了,开了上一个迭代的总结会,又开了下一个迭代的计划会,还有接口协调会,更要命的是生产环境出了一个Bug,花了两个小时才定位修复 ......    

   

转眼就是6点45,我Emacs中的Todo列表不降反增, 晚上加班不可避免。


唉, 再好的工具也搞不定这么多的工作量啊。 

   

吃完晚饭, 偷一会儿懒,用Emacs看一会儿小说, 然后再和用Emacs的好友们聊一会儿,Emacs社区牛人太多,那些真正的黑客们都用Emacs, 社区氛围极好, 能学习的东西太多了。 

   

晚上10点,下班回家,用Emacs写下这篇文章,以示纪念。



往期 精彩回顾

以上是关于一个Emacs程序员的一天的主要内容,如果未能解决你的问题,请参考以下文章

一个C++程序员的一天,心酸···

一个普通Java程序员普通的一天

emacs第一天

程序员的一天vue+node+mysql

21天学会 Emacs 之十一天

沪漂程序媛妹子的一天...