作为Neovim用户切换到Emacs
摘要
一位Neovim用户分享了切换到Emacs的经验,特别是使用Doom Emacs,以将基于终端的工具整合到一个生态系统中,并使用Vim快捷键以便于过渡。
<p><a href="https://lobste.rs/s/bctr1m/switching_emacs_as_neovim_user">评论</a></p>
查看缓存全文
缓存时间: 2026/09/29 03:56
# 从Neovim用户转向Emacs的体验
来源:https://eliasebner.com/blog/thoughts/switching-to-emacs-as-a-neovim-user/
---
我一直向往用单个程序处理计算机上的所有事务,同时也始终偏爱基于文本的界面。这两种喜好简直是为Emacs用户量身定制,但我却从未真正认真使用过它。
以往我对Emacs的体验仅限于偶尔安装、打开后完全摸不着头脑,随即卸载。
那么为何现在要转向Emacs?
## Neovim中缺失的体验
我成功使用Neovim已有相当长的时间,并且非常满意。问题在于,Neovim本质是个文本编辑器,坦白说,它在这方面表现卓越。我热爱Neovim的一切:符合人体工学的快捷键、包管理系统、高度可定制性——所有方面都令人称道。用它进行软件开发从未出现过问题。
我始终对基于文本的浏览器(如lynx)充满兴趣。能从终端访问网络上的所有信息似乎是个绝妙的想法。当然实践中,许多现代网页不支持无JavaScript的浏览器,但这并非重点。
另一个吸引我的想法是从终端阅读邮件,或在终端使用日历,或在IRC频道聊天。
简而言之,我热爱终端。
结果就是,我不得不为不同任务运行各种程序。这没问题且运作良好,但每个程序都有其独特的快捷键、惯例和需要注意的事项。
Neovim仅是我众多程序中的一员,仅用于编辑文本文件。
我本**极度渴望**拥有像Emacs这样能将这些工具整合成单一软件的程序(我明白许多功能是通过Emacs包实现的,但我更看重的是统一生态系统而非单一代码库)。
## 为何选择Doom Emacs
在Emacs领域我纯属新手。我不喜欢为任何软件使用预设配置——无论是窗口管理器(如i3、Hyprland)还是文本编辑器(如Neovim)。
事实上,我的Neovim配置完全由自己编写,精准满足需求。这样做的另一个好处是,我清楚每个组件的工作原理,一旦出现故障就能修复,需要调整时也知从何处着手。
回顾我的Neovim历程,我也曾尝试过预置配置。熟悉的话应该知道,我用过LunarVim(曾使用相当长时间)和NvChad。
最终,当我熟悉Neovim并明确自身需求(常用功能、闲置功能、必需功能)后,便开始编写自己的配置。
我并非没有尝试过原生Emacs,但实在难以驾驭。虽然实现了一些基础功能,但耗时过长——按此进度,要达到能将工作完全从Neovim迁移到Emacs的水平,需要耗费**数月**时间。
这正是我选择Doom Emacs的原因。除了前述所有因素,我的调研显示:Doom Emacs专为我这样的Neovim用户设计,它全面采用Vim快捷键体系。我必须承认,Doom Emacs极大缓解了迁移阵痛,让我能快速上手。
## 我欣赏Emacs的特质
自Neovim引入内置包管理器后,这点已不那么突出,但当我初用Neovim时情况完全不同:在Emacs中安装新包极其便捷。
只要使用官方仓库(涵盖范围极广),只需执行`M-x package-install`即可安装新包,全过程自动化。这让我感到无比惊喜,与以往体验相比简直焕然一新。
此外,配置语言服务器(特别是现代Neovim内置LSP集成前)所需工作量远少于Neovim。语言服务器和语法高亮已成为我编程流程的核心,我认为任何追求主流地位的编辑器都应轻松支持TreeSitter和LSP,理想情况下应为原生支持。
另一个让我深感愉悦的是Emacs的详尽文档。其帮助系统比Neovim的帮助页面强大得多。你可以轻松查明特定快捷键的功能,或查找触发某命令所需的按键组合,还能通过关键词搜索可用命令——这种体验妙不可言。
原生Emacs中,`C-h m`会显示当前场景(对熟悉Emacs者而言即"主模式")下所有可用操作。
而在Doom Emacs中,`C-h m`实用性降低,因为所有操作都被Doom快捷键覆盖,但这完全无妨——大多数命令以空格开头,按下空格稍等片刻便会弹出便捷窗口,展示当前快捷键组合的所有可能路径。这更像菜单浏览而非记忆快捷键。随着使用,你会自然提升常用组合的速度直至成为本能,但对新手而言这个功能极为重要。
坦白说,Neovim也有类似插件。但这正是关键点:你必须先知道如何安装插件才能使用这些功能。
而且即便如此——如前所述——我认为Neovim帮助页面的实用性远不及Emacs文档(更不用说Emacs拥有更优秀的文档导航功能)。
## 我的Emacs使用规划
理想情况下,尽可能全面使用。
目前我仍在配置环境并适应工作流。比如这篇博客完全在Emacs中撰写。
*(顺带一提,Doom Emacs开箱即用的Markdown支持令人惊艳。)*
接下来我计划:妥善设置邮件客户端(尝试过Gnus,可能转向更简洁的Mu4e)、深入掌握org-mode、学习通过Magit在Emacs中使用Git。
或许我会在博客中撰写相关指南。
## 结语
这只是我作为Neovim用户对Emacs的初步印象。若你正在考虑迁移,我强烈推荐Doom Emacs。它使过渡过程无比顺畅——坦白说,我极其厌恶默认Emacs快捷键,而Doom Emacs让一切更符合人体工学。我使用Dvorak键盘布局,或许Qwerty布局的快捷键体验会更好,这点我不确定。
感谢阅读。一如既往,如有疑问或建议可通过邮件[[email protected]](mailto:[email protected])联系我。
下次见。
相似文章
还有人用 Emacs 吗?
作者对与 Emacs 数十年关系的个人反思,包括转向 VSCode 和 IntelliJ,最终因其独特功能回归 Emacs。
离开 Magit 后的 Emacs
作者讲述了他们离开 Emacs 的 Magit Git 界面,转而采用 VC-mode 和自定义 Git 脚本等替代方案的经历,重点介绍了其中的调整和所学到的经验教训。
DOOM, Emacs
一位开发者使用原生模块和Canvas API补丁,将经典游戏DOOM移植到Emacs中运行,需要自定义修补的Emacs构建版本和一个WAD文件。
玩转Emacs
作者分享了个人使用Emacs的经历,强调其有趣且高度可定制的特性,包括ASCII艺术功能以及它如何融入日常计算工作中。
软件界的Emacs化
作者讲述了在终端中阅读 Markdown 的烦恼,并描述了如何使用 Claude 快速构建一个自定义的 macOS Markdown 查看器(MDV.app),展示了 AI 如何让人能够迅速创建个人软件工具。