外观
Emacs 社区日报 2026-06-08
约 5649 字大约 19 分钟
2026-06-08
自动整理自 Telegram 讨论组,每天更新。内容为 AI 摘要,仅作信息索引与回顾。
Emacs 中文讨论组
🎯 核心热点与专题探讨
专题一:浏览器侧边栏设计的演进与争议
群内对“侧边栏”这一UI设计进行了热烈的多轮讨论,聚焦其起源、优缺点及实现方案。
- 起源与流行:普遍认为侧边栏设计从 Arc 浏览器开始流行,核心驱动力是现代屏幕规格变宽,使得侧边栏不再占用宝贵的垂直空间。Firefox原生侧边栏(通过
Ctrl+L或自带箭头)被认为工具性过强,缺乏优化。 - 关键功能对比:
- Arc 的独特优势:支持“文件夹”和“Pin”功能。尤其是“双击已Pin的tab可回到预设URL”这一设计,解决了Pin页面在浏览中跳转到其他域名后难以快速返回的痛点。多数群友认为“双击回Pin”这个功能目前少有竞品实现。
- Sidebery(Firefox扩展):被视为目前最符合硬核用户需求的侧边栏方案。它能列出tab名称,但存在交互问题——例如在Hyprland环境下,鼠标在不同窗口间移动时,侧边栏的“鼠标悬浮展开”会意外触发,造成干扰。
- Zen Browser:将地址栏完全整合进侧边栏,是一个极端的“一体化”设计,解决了“打开占用位置”和“只显示图标时不知所云”的矛盾,但讨论相对较少。
- 痛点与解决方案:
- 自动隐藏冲突:当侧边栏设置为自动隐藏时,网页充满窗口,无法同时看到侧栏内容。这导致用户在选择“打开占位置”和“只显示图标”之间两难。
- 配置项缺失:Firefox原生侧边栏不支持某些快捷键(如
Ctrl-E行末、Ctrl-A行首),这引发了关于Linux/Firefox上快捷键行为不一致的争论(详见技术解析)。
专题二:Emacs 配置的“黑魔法”与 AI 协作困境
围绕 Emacs 的配置文化、Lisp 编程以及与 AI agent 协作的痛点展开。
- Emacs 配置的“无政府状态”:群友讨论 Emacs 配置是否存在“最佳实践”。结论是“没有公认的最佳实践”——有人用
use-package,有人直接覆盖函数;有人延迟加载,有人一股脑全加载;有人分模块,有人写一个文件。核心共识是“配置完了你用着舒服就行”,不用过度追求范式。 - AI Agent 的“括号地狱”:一位群友试图让 AI (MiniMax) 编写正确的 Elisp 配置,结果 AI “数了一个多小时的括号”并频繁出错。这暴露出当前大语言模型在生成复杂、上下文敏感的 Lisp 代码时存在严重缺陷。群友反思:与其期待 AI 一次性搞定,不如“等配置复杂到一定程度再让 agent 优化”,或让 agent 先阅读 Doom Emacs / Spacemacs 的结构来学习范式。
- 具体配置痛点:
- 主题切换卡壳:日间/夜间主题切换时,当前窗口可能切换不完全。
- Magit 学习成本高:对习惯其他编辑器(如 VSCode/Terminal)的用户,Magit 的学习曲线陡峭。群友尝试在 Treemacs 中右键实现 stage/discard,但面临 Treemacs 的 git 状态刷新不及时的问题。
- 语言文化趣闻:有群友分享了一篇“将 GNU Emacs 30.2 移植到浏览器中”的 Reddit 帖子,众人感叹“日本人的 Lisp 文化很强”。
专题三:Firefox 快捷键的“混乱与统一”
讨论焦点在于 Firefox 地址栏和输入框内快捷键行为的不可预测性。
- 核心分歧:在 Firefox 地址栏中,
Home/End键究竟是移动到行首/行尾,还是移动到候选列表的前/后第五项?群友实测发现结果存在分歧,最终达成共识:在输入框内是行首/行尾;但在地址栏激活候选列表后,它们会操作候选列表。需要按一次 Esc 退出候选列表,才能恢复到行首/行尾。这导致Ctrl-A在不同上下文中可能是“全选”或“行首”,令人困惑。 - 解决方案提议:
- GTK 主题设置:在
settings.ini中添加gtk-key-theme-name=emacs,让所有 GTK 输入框都支持 Emacs 风格的Ctrl-A/Ctrl-E/Ctrl-W等。 - 键盘分层(QMK/VIA):直接在键盘硬件层面将
Fn+A映射为Home,Fn+E映射为End,完全绕开软件层的不确定性。但有人指出Home/End在地址栏中原本用于定位候选项,会破坏预期行为。 - Surfingkeys / Vimium:通过浏览器插件接管全局快捷键。但 Vimium 在标签页未加载时无效,这又引发了“全局接管”插件的需求讨论。
- qutebrowser 风格:有成员推荐了 qutebrowser 的按键哲学,即完全用键盘驱动,但未被深入讨论。
- GTK 主题设置:在
专题四:Nix 包管理的“沙盒隔离”与依赖问题
一位群友在 Linux Mint 下使用 Nix 安装包时遇到奇怪问题。
- 现象:通过 Nix 安装的 Emacs 无法正常使用 librime(输入法)。解决方案是“用 Nix 也安装下 librime”。
- 根本原因讨论:这揭示了 Nix 包管理的一个核心特性——严格的纯净性与沙盒隔离。Nix 构建的包及其运行时环境是自包含的,与系统
/nix/store之外的库(如apt安装的librime)默认不混用。因此,即使在 Hostname 是Ubuntu的系统上,Nix 包也无法“看到”系统包管理器安装的动态链接库。这既是 Nix 的优势(避免依赖地狱),也是学习成本所在(需显式声明所有依赖)。
🔑 关键概念与技术解析
- Arc 浏览器的 Pin 与双击回滚:Arc 浏览器的一种标签管理方式。用户可以将常用页面“Pin”在侧边栏顶端。当用户从 Pin 的页面内通过点击链接访问其他页面后,只需双击该 Pin 的标签,即可自动跳回之前 Pin 时预设的 URL。这是一种高级的“标签页回退”机制,比通用后退键更智能。
- Sidebery 的悬浮展开问题:Firefox 扩展 Sidebery 的一个已知交互缺陷。当侧边栏设置为“鼠标悬浮时展开”时,在窗口管理器(如 Hyprland)多窗口环境下,鼠标移动触发侧边栏展开的误操作难以避免,因为侧边栏无法准确判断用户意图是“浏览侧栏”还是“掠过边缘”。
gtk-key-theme-name=emacs:一个 GTK 3/4 设置,在~/.config/gtk-3.0/settings.ini中配置。开启后,所有使用 GTK 输入组件的应用程序(包括 Firefox、GNOME 终端等)的文本输入框都会支持 Emacs 风格的编辑快捷键(C-a行首,C-e行末,C-w删词等),而不再使用默认的 GNOME/Windows 风格。- Nix 的纯净性(Purity):Nix 包管理器的一个核心设计原则。它保证每个软件包的构建和执行都在一个纯净的、可复现的环境中运行,不会受到宿主机上其他已安装的软件或库(如通过
apt安装的)的影响。好处是彻底避免了“它在我的机器上能跑啊”问题,但代价是用户必须显式地在shell.nix或flake.nix中声明所有依赖,否则包可能会因为缺失动态库而运行失败。 - Tab-bar 的 SVG 渲染:Emacs 的
tab-bar-mode(显示标签页)可以通过 SVG 图像来绘制标签页外观。用户可以实现自定义的、复杂的、多行的标签页样式,甚至可以像浏览器标签页一样根据数量自动调整宽度。这比纯文本或图片方式更具表现力和灵活性。
💎 碎片知识与金句拾遗
- 关于侧边栏的起源:“侧边栏我感觉是从arc开始流行的,主要还是现在的屏幕规格改变了。” —— 点出了 UI 设计演进与硬件形态的联动关系。
- 关于火狐快捷键的困惑:“感觉就是这个问题,Linux / Firefox 上永远不知道 ^A 会是行首还是全选(🫠)” —— 生动描述了 Unix 生态下按键绑定混乱的经典困境。
- 关于 Lisp 文化的观察:“日本人的lisp文化很强的” —— 评价有日本开发者将 Emacs 移植到浏览器。
- 关于 Emacs 配置哲学:“配置之后你用起来舒服就行了,管它什么范式呢。无非就是升级什么的导致不好用了,再让 agent 修就好了。” —— 一种极其实用的精神胜利法。
- 关于 Nix 的生态趣闻:“Linux mint, 但 hostname 是 ubuntu, 用 nix 安装包 😃 ” —— 生动展现了硬核用户无视发行版界限、直接使用 Nix 的洒脱。
- 关于 AI 写 Elisp 的吐槽:“能写好elisp的AI确实有点少,MiniMax在我面前数了一个多小时的括号,被我到处喷了好久” —— 经典的真实失败案例,体现了 AI 在处理 Lisp 树形结构时的无力感。
- 关于 electron 应用:“它们好像也是用浏览器的快捷键的。想不起来,不知道是不是模仿浏览器,还是天生那样的。” —— 对 Electron 应用快捷键继承 Chromium 行为的一种调侃性确认。
- 关于 Firefox 的细节打磨:“细节真的缺乏打磨”、“Linux 也没法细细打磨,本来就是大家按照自己喜好来” —— 宏观描述了 Linux/开源软件与 macOS 等在用户体验上的差异哲学。
🛠️ 值得深入研究的点 (Follow-up)
- NEO Emacs v0.0.6:一个基于 Rust/Native 构建的新 Emacs 实现,正在积极开发。可以跟进其架构设计和性能表现,尤其是其用 AI 监控发版流程的做法。 GitHub: neomacs
- Emacs 移植到浏览器 (Wasm):有开发者将 GNU Emacs 30.2 移植到浏览器中运行。这预示着 Web 端可以拥有一个完整的、高性能的编辑器环境,是 Web 应用和传统编辑器融合的前沿探索。
- Tab-bar 的 SVG 自定义:Emacs 社区中利用 SVG 绘制标签页的探索,展示了极其灵活的 UI 扩展能力。可以研究如何实现类似 Arc 浏览器的“双击回滚 Pin”等高级交互。
- Sidebery 的交互改进:针对“悬浮展开误触”这一具体痛点,思考或寻找社区中是否有通过用户脚本(UserScript)或 CSS 样式来解决的方案(
userChrome.js或userContent.css)。这是极客自定义浏览器的典型范例。
Emacs 轻聊讨论组
好的,各位读者。以下是今日份从开发者群组中提取的硬核精华。虽然今日有效讨论较多,但依然不乏深度思考和技术细节。
🎯 核心热点与专题探讨
专题一:大模型应用的两极化——编码与创作的“祛魅”
今日群内最核心的讨论围绕着大语言模型(LLM)在实际应用中的巨大落差展开。这种落差主要体现在两个方向:辅助编程与创意写作。
1. 辅助编程:从“万能工具”到“需要驯服的蠢驴”
- 痛点与抱怨:多位群友对国产模型(如DeepSeek)在编码领域的表现表达了失望。核心问题集中在“纠正率太高”,尤其在需要精确知识(如特定框架、函数)的场景下,模型会输出不规范的代码、超出函数作用域的代码,甚至生成严重错误。一位群友直言:“我收回之前的话,deepseek 用来 curd 也不行”。
- 根本差距:讨论指出,差距的根源在于“算力规模”和“数据质量”。国产模型在代码语料库的覆盖面和规范性上,与GPT、Claude等存在一两年的差距,且这种差距可能因对方迭代加速而扩大。一位群友的观点非常深刻:“LLM 用来编程这个功能本身不是终端产品,发展的好也没有用。你要看的是,用了 LLM 的那些企业的产品有没有竞争力。”
- 应对方案:对于需要对生产结果负责的场景,群友们普遍选择“半古法vibe”。即,不完全信任AI,而是将其作为学习新知识、生成灵感或执行高重复性任务的辅助工具,最终产出必须经过经验丰富的开发者审查。特别是在处理“比较复杂”的CRUD或遗留/老项目时,AI生成的代码会让人看得很没耐心。
2. 创意写作:长篇叙事的“脑雾”与“伪人感”
- 核心困境:一位群友分享了自己使用DeepSeek V4进行小说创作的痛苦体验。模型在2-3万字的短篇故事上表现尚可,但一旦超过这个长度,“每个章节各写各的,前后驴唇不对马嘴,非常割裂”。即使开发者提供了极为详尽的剧情大纲、伏笔设定、人物关系和书写规范,甚至在每次生成前都喂给模型前文摘要,依然无法解决长文本一致性崩溃的问题。
- 根本原因剖析:群友意识到,问题不在于“上下文窗口”(模型号称百万token),而在于模型对“叙事结构”和“读者体验”的理解缺失。
- 缺乏叙事感知:模型无法理解“伏笔”在叙事中的微妙角色,它会将伏笔直白、放大,仿佛在告诉读者“快看,这里有个坑”。
- 机械模仿:AI生成的文本带有强烈的“AI风味”(如无意义的场景堆砌、冗长的心理描写、大量“不是...而是...”的强调句式)。这是因为其训练数据来源于网络,决定了它只能产出“中等水平”的文本。
- 遗忘的悖论:一位群友指出,LLM没有创造力,只是对已有知识的模仿。真正的创新需要“遗忘”,而现有的模型无法做到这一点。
- 工程化尝试:为了克服这一问题,群友正在研究Novelcrafter等专业工具的设计思路,即通过“动态 Chunk 拆解、局部精修、最后合并多轮修改”的工程化方案来逼近长篇内容的质量。也有人开始编写自定义的
Skills(技能),通过控制引用来改善输出质量,并取得了初步成果(成功输出3万字的连贯章节)。
【专题结论】:无论是编程还是写作,当前的LLM更像是一个能力强大的“高级实习生”。它能完成基础任务,但缺乏全局视野和对结果的深刻理解。真正的价值在于使用者如何设计框架、拆分任务、并深度参与评估与修正过程,这远比模型本身更重要。
专题二:开发者健康与饮食的“玄学”与“科学”
群里的闲聊充满了实用主义的生活智慧,从椅子到饮食,再到运动,勾勒出一个典型的程序员生活图景。
- 椅子与姿态:话题始于尤雨溪“脖子腰从来没出过问题”的分享,引发了热烈的讨论。最终达成的共识是,“好椅子不如好姿态”。很多人推荐“沉肩”、“练斜方肌”和“有意识调整”,并指出很多问题源于错误的发力代偿(如提东西时耸肩)。一位群友分享了通过
X11转发使用Emacs GUI的“一点也不卡”的体验,这与久坐的健康问题形成有趣对比。 - 减肥与饮食:讨论进入了白热化阶段,几乎成了“高蛋白饮食研讨会”。
- 方案PK:有人推崇“鸡胸肉+白菜”的极简廉价方案,有人则坚持“虾仁、鸡蛋白、牛排”的豪华高蛋白组合。后者被认为是“那帮健美的人的吃法”,好吃不麻烦但贵。
- 烹饪心法:群友分享了鸡胸肉的美味做法:盐水浸泡后低温慢煮(为了多汁)或咖喱粉腌制后烤。
- 共识:干净饮食(指加工少,非调料少)+ 创造热量缺口(每天走1小时)。有人指出,“高蛋白低碳水饮食”确实可以不运动快速掉重,但代价是“贵”和“没精神”。
- 运动之争:羽毛球成为争议焦点。一方认为羽毛球是“高强度、间歇性”的全身运动,极其有利于心肺和消耗内脏脂肪;另一方则认为其“主要用一只手”,强调扣杀时对肩膀的负担,甚至认为其“无聊”。讨论中还提到了打羽毛球的专业细节(如非支撑脚内扣是为了腰腹发力),暴露了硬核程序员深挖细节的本能。
专题三:macOS vs. Linux 的窗口美学与残酷现实
- 核心对比:一位群友顿悟:“Linux 上是窗口管理,macOS 上是 app 的管理。” 这句话精准地概括了两者的哲学差异。
- macOS 的坚持:群内的macOS开发者和早期用户认为,macOS的窗口管理是基于“App”层级的,而非Linux的“窗口”。这体现在
CMD + ~高效切换同一应用的不同窗口上。虽然苹果近些年软件质量有所下滑,但“当年设计这套东西的人有审美的”,基础框架依然稳如磐石。 - Linux 的灵活:Linux(尤其是平铺窗口管理器)则提供了更强大的窗口级操作、分组、布局自由。然而,一位群友尝试通过SSH X11转发使用Emacs GUI,虽然打洞成功后流畅度不错,但“字体缩放”问题成为新的烦恼。有群友推荐了
waypipe——类似ssh -X但用于Wayland的解决方案。
🔑 关键概念与技术解析
- Skills (在 DeepSeek 中的技能):类似于OpenAI的GPTs或自定义指令。它是一个结构化的提示模板,用于约束或引导模型在特定任务上的行为。今日讨论中,群友通过编写一个名为
idea-lab的Skill,有效改善了AI写小说的连贯性和创意表现。 - Chemacs2:一个Emacs配置文件管理器,可以让你在同一台机器上快速切换多个Emacs配置。适合需要测试不同发行版或为不同任务(如写作 vs. 编程)提供不同环境的用户。
- Chunk (块) & 合并策略:一种处理LLM长篇生成任务的工程技术。将长篇任务拆解成多个小段(Chunk),分别生成,最后再通过多次迭代、修改、合并成一篇完整连贯的输出。常用于小说、长文档、代码库的生成。
- X11/Wayland 转发 (ssh -X / waypipe):允许通过SSH连接,在本地桌面显示并操作远程机器上的GUI应用的工具。这让你可以远程使用Emacs这类本地化体验极强的应用。
- Dia浏览器:一款新兴的浏览器,特色功能是“Tab自动分组”,在今日讨论中被一位群友提及,认为比其它浏览器好用。
💎 碎片知识与金句拾遗
- AI编码的下限:“我现在看AI生成的代码越来越没有耐心了。”
- 国产LLM的现状:“国内的算力规模,满打满算只有的几年前的水平。”
- AI写作的悲剧:“反复摇老虎机呢。” “现在生图生视频是这个路子,改改参数,微调prompt反复跑。”
- AI创作的本质:“他打了一个字。然后他删掉了。他又打了一个字。又删掉了。...”
- 对AI的文学批判:“人是不会这么写的。”
- 对AI创造性的终极批判:“LLM 写创造性的东西还是差很远。” “LLM 没有创造力的哇,都是对已有知识的拙劣模仿。”
- 宏观视角:“LLM 用来编程这个功能本身不是终端产品,发展的好也没有用。你要看的是,用了 LLM 的那些企业的产品有没有竞争力。”
- 对同事的调侃:“兄弟,这就是AI风味。”
- 程序员的健康哲学:“代谢不高活得久。”
- 程序员的饮食哲学:“干净饮食,只要是清淡的东西,不加盐都好吃。” 前提是“我有一段(时间)”。
- 榴莲的玄学:“有人说榴莲价格之所以贵,是因为大部分中国人看来不好吃,好吃的话早就想办法在国内种植改良打下价格了。”
- 窗口管理顿悟:“macOS 上没有真正意义上的窗口。从后台获取的,都是 App 的句柄。”
🛠️ 值得深入研究的点 (Follow-up)
Novelcrafter之类的长文写作工具:深入研究其“动态Chunk拆解、局部精修、最后合并”的实现原理,特别是它是如何解决长文连贯性问题的。这比单纯依赖模型本身的百万token窗口更具工程价值。Emacs的长篇写作Skills:今日有人成功编写了idea-lab技能改善了AI的长篇小说创作。有群友打算开发Emacs插件实现类似“局部修改”功能。如果你在使用Emacs,可以尝试开发和调优此类的自定义技能。waypipe工具:对于需要在远程Wayland服务器上使用GUI应用的硬核开发者,这个工具值得尝试。它提议了一种比传统ssh -X更现代、更高效的远程图形转发方式。headroom(GitHub: chopratejas/headroom):这是一个声称可以“进一步省token”的工具。对于重度依赖API调用的开发者,评估其在实际场景中节省token的效果和稳定性,具有直接的经济价值。- 大模型与传统行业的结合:今日有群友讨论AI在临床实践(如中山大学肿瘤医院的归家营养监测)中的应用前景。这是一个典型的“LLM + 垂直领域”案例,值得关注其数据训练、本地化部署和产品化路径。
