知名开发者 Chris Wellons(网名 skeeto)于日前在其博客 Null Program 上发表文章,正式宣布结束长达 20 年的 Emacs 使用生涯。这一消息在开源社区引发广泛关注,Wellons 不仅是 Emacs 的资深用户,更是多个重要 Emacs 插件的作者和维护者。
Wellons 在文中透露,他在上周二最后一次按下 Emacs 的退出快捷键 C-x C-c。尽管过去近十年间他一直在逐步减少对 Emacs 的依赖 —— 先是转向模态编辑,随后迁移到 Vim—— 但 Emacs 作为平台的强大生态让他难以彻底割舍,尤其是他自己开发的那些定制化工具。
此次告别 Emacs 的契机,源于 Wellons 近期获得的 "新能力"。他表示,凭借这些能力,自己仅用几天时间就完成了最后两个关键替代工具的开发:用 stackcalc 替代 Emacs 的计算器功能(M-x calc),以及用 Elfeed2 替代他使用了 13 年的 RSS 阅读器 Elfeed。令他兴奋的是,Elfeed2 在功能上已经超越了原版。

stackcalc 和 Elfeed2 均采用 C++ 编写,基于 wxWidgets 框架构建原生 GUI,支持 Windows、macOS 和 Linux 三大平台。Wellons 选择 wxWidgets 而非之前项目使用的 Dear ImGui,是因为前者更适合需要长时间运行的桌面应用,且提供了更丰富的原生 UI 组件和跨平台工具集。两个项目均通过 CMake FetchContent 管理依赖,在 w64devkit 环境下可以一键编译构建。
Wellons 的离开对 Emacs 社区而言是一次重大损失。他在 GitHub 上维护着多个广受欢迎的 Emacs 插件,包括 RSS 阅读器 Elfeed、异步 I/O 库 aio、Web 服务器 simple-httpd、JavaScript 实时编辑工具 Skewer 等。目前这些项目正在寻找新的维护者,Wellons 表示愿意将项目迁移出个人命名空间,并协助完成 MELPA 的交接工作。若无人接手,这些项目将被归档但不会删除。
从技术趋势来看,Wellons 的转型颇具代表性。他提到,过去需要三周完成的工作量,现在借助 "新能力" 仅需一天即可搞定。这种效率的跃升让他有动力完成此前因耗时过长而搁置的项目。Elfeed2 的开发就是一个典型例子 —— 原版 Elfeed 已经满足了他的需求,重写动力不足,但在新工作方式的加持下,这个项目从启动到可用仅用了两天时间。
Wellons 对 wxWidgets 的评价颇为正面。他认为虽然该框架存在字符编码问题和部分性能缺陷,但整体表现超出预期,能够快速产出跨平台的原生外观应用。他计划将 wxWidgets 作为未来大部分 GUI 项目的基础,仅在需要即时渲染的场景下继续使用 Dear ImGui。
参考来源: