我正式从 Emacs 退休了。
I have officially retired from Emacs

原始链接: https://nullprogram.com/blog/2026/04/26/

经过20年,作者已正式停止日常使用Emacs,完成了向Vim的过渡。这一举动促使了两个关键Emacs包的替代品的创建:`M-x calc`(被`stackcalc`取代)和`Elfeed`(被`Elfeed2`取代)。这两个新应用程序均使用C++和wxWidgets构建,在Windows、macOS和Linux上提供原生GUI体验。 `Elfeed2`已经超越了原始版本的功能,而`stackcalc`则优先考虑速度,具有多精度算术,但仍在开发以达到功能对等。作者正在为这两个项目寻找专门的维护者,优先考虑有贡献经验的申请人。 这次过渡突出了作者对wxWidgets在需要更丰富的UI工具包的长期运行应用程序中的偏好,与之前项目中使用Dear ImGui形成对比。这些项目设计为使用CMake和C++工具链轻松构建,展示了简化的开发流程。

## Emacs 老手退休,反思技术变迁 Chris Wellons,流行的 Emacs RSS 阅读器 Elfeed 的作者,宣布退出 Emacs 社区,标志着他技术栈的重大转变。他放弃了高度定制、终端为中心的工作流(包括 Openbox、Tridactyl 和 Mutt 等工具),转向 Wayland 上的 KDE,并使用标准浏览器,原因是希望减少摩擦和维护成本。 这一转变部分受到 LLM 兴起的影响,LLM 鼓励他更加开放地接受新技术,并减少对先前选择的执着。虽然一些 Emacs 用户为 Elfeed 失去关键维护者而感到遗憾,但另一些人则在自身不断演变的工作流中看到了相似之处。 讨论强调了关于“摩擦”的争论——一些人认为持续的配置令人疲惫,而另一些人则享受这种控制感。 还有关于 LLM 作用的讨论,一些人担心过度依赖,而另一些人则认为它们是与现有技能结合使用时强大的生产力增强工具。Wellons 的转变反映了一种日益增长的趋势,即开发者拥抱人工智能工具来增强,而不是取代他们的能力。
相关文章

原文

nullprogram.com/blog/2026/04/26/

This past Tuesday I typed C-x C-c in Emacs for the last time after 20 years of daily use. Though nearly half that time was gradually retiring it, switching to modal editing, then to Vim. Emacs is a platform, and I’d grown accustomed to its applications, especially those I built myself. There was no particular hurry, so replacements came slowly. With my newly-acquired superpowers I could knock out the last two pieces in a few days’ work, namely M-x calc with stackcalc and Elfeed with Elfeed2. I’m especially excited about the latter because it already exceeds the original. Both are multi-platform, native C++ GUI applications using native UI components.

These actively-in-use packages require new maintainers (apply on the project’s issues/discussion):

No wonder it took so long for me to move on! I’m not handing these off to just anyone, and you’ll need to establish your reputation. Having already made contributions is a good sign, even if never merged. I’m willing to transfer them off my namespace, though you’ll need to manage the Melpa hand-off (on which I’ll sign-off). If there are no takers, these projects will be archived but not deleted.

Trying out wxWidgets

The Emacs Calculator is amazing and the best calculator I’ve ever used, which is why nothing I could find was going to replace it. My clone uses GMP and MPFR for multi-precision, so it’s far faster, as to be expected, but it’s not nearly at feature parity. It’s missing esoteric features including symbolic processing. Though it’s enough to cover all of my own usage. I can add more features later. The Emacs Calculator manual served as a specification when building stackcalc.

Elfeed has been a cornerstone of my daily routines for the past 13 years. Nothing else I’ve found scratches that itch for me, so I’ve always known it would require a rewrite someday. Knowing it would take a few weeks of work, and that I already had the feed reader I wanted, made motivation difficult to find. Though now that I can accomplish ~3 weeks of old-way work in a new-way day, this sort of project becomes that much easier to start and finish. Though it’s not yet at a 1.0 release, after a couple days Elfeed2 was working well enough to replace the original Elfeed.

While Dear ImGui was the right choice for dcmake, it would not be so for these two applications. Active rendering doesn’t suit a feed reader left running all day, and I needed a richer toolkit. Professionally I work in Qt, but I wanted something lighter-weight for my projects, accessible via CMake FetchContent. That naturally led to wxWidgets. While it has issues — mitigatable character encoding problems, accidental quadratic time in many places — it’s worked better than I anticipated, letting me rapidly produce native-looking applications on Windows, macOS, and Linux.

Unlike Dear ImGui, wxWidgets is a platform, including sane I/O and path handling. I mostly don’t need platform layers when building applications like these. I can simply rely on wxWidgets’ utilities.

Both of these projects build out-of-the-box on w64devkit thanks to the dependencies being FetchContent-compatible. On all platforms you just need a C++ toolchain and CMake:

$ cmake -B build
$ cmake --build build

Now that I have experience with wxWidgets, learning its limitations and capabilities, it’s likely to be a foundation of most of my GUI projects to come, except where something like Dear ImGui is a better git.

联系我们 contact @ memedata.com