GNU emacs 与 XEmacs

GNU emacs 与 XEmacs

在使用 Vim 几年后,我将改用 emacs,作为我 2012 年“走出舒适区”决心的一部分。虽然过去 10 天我一直在使用 GNU Emacs,但我对 XEmacs 很好奇,我想知道它与 GNU Emacs 是否有显着不同。

来自维基百科页面:

主要分歧之一涉及对版权转让的不同看法。

[...]

任一编辑器中的新功能通常迟早会出现在另一个编辑器中。此外,许多开发人员都为这两个项目做出了贡献。

我的印象是两者之间的差异主要是历史和哲学上的(FSF 不总是这样吗?)。

在 2012 年的今天,选择其中一个而不是另一个的实际原因是什么?以下是我感兴趣的比较示例:

  • 特征:是否有任何功能存在于其中一个中,但在另一个中没有(或至少不易获得)?

  • 社区:哪个社区更活跃、更创新?

  • 发布周期:他们是否以相似的速度发布相同的功能,或者是两个独立的发布周期使一个比另一个更前卫?

  • LISP 实现: 我最感兴趣的是学习 LISP。两个编辑器共享相同的实现吗?同一个方言?

  • 可用性:我知道这两个编辑器都可以在 Linux 上使用,但是其他平台呢?其中一个比另一个有显着优势吗?

该列表并不详尽。如果您曾经使用过两者并觉得存在此处未提及的差异,请告诉我们;我很好奇。

答案1

如今,XEmacs 基本上已经死了。最后一个主要版本是 1999 年的 XEmacs 21;最后一个稳定发布的次要版本是 2003 年的 XEmacs 21.4,最后一个维护版本是 2009 年的 XEmacs 21.4.22。我认为 GNU Emacs 23 中已经包含了所有 XEmacs 的主要功能。

从历史上看,XEmacs 在很长一段时间内(从 1980 年代末的 Lucid 时代到 200 年代中期 GNU Emacs 的追赶)在功能方面大约领先于 GNU Emacs 一个主要版本。 XEmacs 往往更快地采用新功能,并且更自由地接受外部代码。 GNU Emacs 得到了严格的维护;更少的 bug 和更少的功能。

GNU Emacs(Emacs 22 或 23)中出现的最后一个主要 XEmacs 功能包括向正在运行的进程发送外部命令的能力(gnuclientemacsclient)、将一个实例连接到多种终端类型(文本或 GUI)的能力、对内联图像的支持、对可变宽度字体的支持、在 X 下使用矢量字体的能力以及对宽于 8 位的字符集(尤其是 Unicode)的更好支持。

Lisp 方言是相同的(除了细微的差别)。一种变体的 Lisp 包通常可以在另一种变体下工作,只需进行一些小的修改,除非它们复杂地使用了两种变体中存在的众多功能之一,但实现完全不同。

GNU Emacs 和 XEmacs 都在主要的 unix 变体、Windows 和 OSX 的本机用户界面下运行。

这些天我看不出有任何理由使用 XEmacs,除非您已经使用它很长时间并且不想切换。

答案2

GNU Emacs 社区更活跃,并且有更多的开发活动 AFAIK,所以我建议你选择它。

相关内容