专业 Emacs 入门
为什么要再写一篇 Emacs 入门教程,网上的资料不是很多吗?笔者的感受是:在中文社区中,关于 Emacs 的资料质量并不高,大部分的 Emacs 教程,开篇开始教各种快捷键,让你练习如何移动光标、打开文件等等,但是这些教程时常没有下文——不完整;同时它不告诉你 Emacs 的运作逻辑、基本思想——不系统;对插件的推荐更是一句带过不去解释——不耐心。
本教程是面向中文社区的、旨在提供系统性完整的学习流程的 Emacs 教程。因此本教程的相比于基础的操作细节,更侧重于讲述一些底层逻辑,包括少量 Emacs Lisp 编程知识。这样如果出了问题读者可以知道该去搜索什么关键词,哪里有可能找到答案。此外,本教程会尽可能涉及较广泛的配置和插件介绍,让初学者能够在一开始就知道有这样或那样的插件存在和配置方法,形成一套完整可用的工作流程,而避免受到一些浅薄的教程的误导。
但本教程做不到的是囊括 Emacs 的所有功能,否则几乎等于把 Emacs 文档全抄一遍。笔者希望能通过本教程给读者指出一条学习道路,能够在之后自主地根据自身需要去学习更多 Emacs 的使用方法。
最后,为避免无意义的争论,在此说明:本文将会介绍 Emacs 的入门知识,并与此同时展示 Emacs 的一些优点。但本文无意与其它编辑器进行好坏对比,不涉及任何争论。
你需要做到
本教程的读者总的来说,应当是喜爱钻研、富有耐心、对计算机学科较为热爱的人群。学习 Emacs 是一个漫长的过程,需要大量的练习和积累,需要耐心进行配置、解决出现的问题,这些就要求了读者应当是相关从业人员或爱好者,平日需要写许多的代码,并有一定的专业基础。这就是为什么本教程叫“专业”入门。
尽管在一篇编辑器的教程中抬高学习门槛并不恰当,但笔者认为 Emacs 的学习难度较大,还是希望读者至少会一门编程语言的基础部分,并且在未来能保持一定的代码量,从而能不断训练使用 Emacs 的技巧。
如果读者无法满足上述条件,笔者不建议学习 Emacs,还有很多其它编辑器可供选择。
那么,现在我们开始吧!