社区驱动的 Emacs 发行版,融合 Emacs 与 Vim 编辑方式,提供助记式快捷键和配置层。
- Star
- 1,555
- Fork
- 59
- 未关闭 Issue
- 0
- 最近提交
- 6天前
这是什么?
Corfu 在 Emacs 缓冲区光标附近显示一个小型补全弹窗,可用方向键选择候选项,并通过 TAB 或 RET 插入。它是 Vertico 迷你缓冲区界面在缓冲区内的对应版本,直接基于标准的 completion-at-point(Capf)和 completion-in-region 接口实现,而不是自定义后端 API。
Corfu 本身不提供补全后端,候选项来自 Emacs 内置 Capf、第三方编程语言包或 dabbrev,配套的 Cape 等包可补充更多来源。自动补全默认关闭,可通过 corfu-auto 开启。可选扩展提供回显区或弹窗形式的候选文档、基于历史的排序、快捷键选择和鼠标支持。
Corfu 支持 Orderless 等补全样式,也可用于迷你缓冲区以及 Eshell、Shell 缓冲区。在 Emacs 31 上可用于终端版 Emacs,较早版本需要额外安装 corfu-terminal。
核心功能
- 01弹窗显示在光标上方或下方,支持方向键导航。
- 02支持定时器或触发字符触发自动补全,默认关闭。
- 03支持通过 annotation 和 affixation 函数显示候选注释。
- 04可按前缀、长度、字母顺序或历史记录排序。
- 05支持 Orderless 补全样式,并可配置分隔符。
- 06提供回显区文档、弹窗文档、快捷键选择等可选扩展。
适用场景
- 在 Emacs 中编写代码时获取缓冲区内补全。
- 在 Eshell 或 Shell 缓冲区中补全命令和路径。
- 写作时利用 dabbrev 或 Capf 源补全单词。
- 结合 Orderless 实现灵活的高级匹配过滤。
快速上手
- 1
从 ELPA 或 MELPA 安装 Corfu
M-x package-install RET corfu RET - 2
启用全局次模式
M-x global-corfu-mode RET - 3
在缓冲区中按 M-TAB(或 TAB)进行补全
使用前须知
- 在 Emacs 31 之前的版本中,弹出窗口依赖子框架,终端 Emacs 需要额外安装 corfu-terminal 包。
- 自动补全默认关闭;部分补全函数可能执行不可信代码,使用时需谨慎。
标签
常见问题
- corfu 是什么?
- Corfu 是 Emacs 的极简缓冲区内补全弹窗,基于 Emacs 内置的补全机制实现。 Corfu 在 Emacs 缓冲区光标附近显示一个小型补全弹窗,可用方向键选择候选项,并通过 TAB 或 RET 插入。它是 Vertico 迷你缓冲区界面在缓冲区内的对应版本,直接基于标准的 completion-at-point(Capf)和 completion-in-region 接口实现,而不是自定义后端 API。
- corfu 可以免费使用吗?用的什么许可证?
- corfu 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
- corfu 还在维护吗?
- 活跃维护中。corfu 最近一次提交是在 2026年11月1日。
- corfu 适合用来做什么?
- 在 Emacs 中编写代码时获取缓冲区内补全。 在 Eshell 或 Shell 缓冲区中补全命令和路径。 写作时利用 dabbrev 或 Capf 源补全单词。 结合 Orderless 实现灵活的高级匹配过滤。
- corfu 怎么安装和运行?
- 从 ELPA 或 MELPA 安装 Corfu: M-x package-install RET corfu RET 启用全局次模式: M-x global-corfu-mode RET 在缓冲区中按 M-TAB(或 TAB)进行补全
- 在哪里获取 corfu?
- 源代码和安装说明在 GitHub 上:https://github.com/minad/corfu
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Emacs 的极简垂直补全界面,基于内置补全系统,兼容原生补全命令。
一款 Vim/Neovim 插件,编辑时异步检查语法,可调用 prettier、eslint 等工具修复代码,并作为 LSP 客户端使用。
Emacs 的 Language Server Protocol 客户端,为 Emacs 提供类 IDE 的补全、诊断与代码导航。
Eglot 是内置于 Emacs 的 LSP 客户端,用极少配置把编辑缓冲区连接到各类语言服务器。
面向 GNU Emacs 的模块化缓冲区内补全框架,在输入时显示代码与文本补全候选。