在最近的工作中,我需要同时写前端和后端,其中前端使用 vue/react+javascript,后端使用 golang。所以我需要一个编辑器能够在不同的语言和项目中自由方便的进行切换,而 emacs 完美地满足了我的要求。

emacs 是我大学的时候开始学习的,当时学习 emacs 的目的是装逼,学了几天四处抄配置后,发现我驾驭不了它后就抛弃了 emacs。机缘巧合由于公司配的电脑太烂,开个 vscode 和 golang 都卡得要命,我要一个轻量的编辑器,同时还需要能够快速的切换项目,这时候 emacs 又重新进入了我的世界,很庆幸,这次我终于有能力驾驭它了。

emacs 的强大之处在于拓展性,我使用 evil 插件让 emacs 模拟 vim 的编辑方式,通过模糊搜索来快速切换文件、项目和终端,通过 org-mode 来管理自己的生活和项目进度,同时经常做一些骚操作,例如在终端启动 emacs,然后在 emacs 里面开启终端,然后在 emacs 的终端里面 ssh 到远程服务器并且使用 vim 来编辑文件,最神奇的是这些骚操作还很常用。可以说,emacs 是一个超级强大的瑞士军刀,它没有哪一项功能是特别强大的,但是你可以组装你的 emacs 然后让各项功能融洽地运行,从而迸发更强大的力量。

学习 emacs 本身也许性价比不高,但是我从折腾 emacs 中学到了很多,从 emacs 中我学到了黑客相关的文化,学到了代码补全的套路。经过几个月的 emacs 折腾,我应该是入了 emacs 的邪教了,总而言之,入教感觉不错。