Созданная сообществом дистрибуция Emacs, сочетающая стили редактирования Emacs и Vim, мнемонические сочетания клавиш и слои конфигурации.
minad/corfu
Corfu — минималистичное всплывающее меню автодополнения прямо в буфере Emacs, использующее встроенные механизмы completion-at-point.
Open source альтернатива:Company
- Звёзды
- 1,555
- Форки
- 59
- Открытые issues
- 0
- Последний коммит
- 6 дней назад
Что это?
Corfu показывает варианты автодополнения во всплывающем окне рядом с точкой в буферах Emacs: между вариантами можно перемещаться стрелками, а выбрать один из них — клавишей TAB или RET. Это аналог Vertico для интерфейса minibuffer, построенный на стандартных интерфейсах completion-at-point (Capf) и completion-in-region, а не на собственной API бэкендов.
Corfu не включает собственные бэкенды автодополнения. Варианты предоставляют встроенные Capf Emacs, сторонние языковые пакеты или dabbrev, а дополнительные источники подключают сопутствующие пакеты, например Cape. Автодополнение по умолчанию выключено; его можно включить с помощью corfu-auto. Необязательные расширения добавляют документацию по вариантам в echo area или во всплывающем окне, сортировку по истории, быстрый выбор клавишами и поддержку мыши.
Corfu совместим с Orderless и другими стилями автодополнения; его можно использовать в minibuffer, а также в буферах Eshell и shell. В Emacs 31 он работает в терминальной версии Emacs; для более старых версий нужен отдельный пакет corfu-terminal.
Ключевые возможности
- 01Всплывающее окно показывает варианты над точкой или под ней; перемещаться между ними можно стрелками.
- 02Автодополнение запускается по таймеру или при вводе заданных символов; по умолчанию оно выключено.
- 03Предварительный просмотр вариантов и аннотации с помощью функций annotation и affixation.
- 04Сортировка по префиксу, длине, алфавиту или истории.
- 05Поддержка стиля автодополнения Orderless с настраиваемыми разделителями.
- 06Необязательные расширения для документации в echo area и во всплывающем окне, быстрого выбора клавишами и истории.
Сценарии использования
- Получение вариантов автодополнения прямо в буфере при редактировании кода в Emacs.
- Автодополнение команд и путей в буферах Eshell или shell.
- Использование dabbrev или источников Capf для автодополнения слов при написании текста.
- Сочетание быстрого фильтра по префиксу с Orderless для более гибкого поиска совпадений.
Быстрый старт
- 1
Установите Corfu из ELPA или MELPA
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, использующее встроенные механизмы completion-at-point. Corfu показывает варианты автодополнения во всплывающем окне рядом с точкой в буферах Emacs: между вариантами можно перемещаться стрелками, а выбрать один из них — клавишей TAB или RET. Это аналог Vertico для интерфейса minibuffer, построенный на стандартных интерфейсах completion-at-point (Capf) и completion-in-region, а не на собственной API бэкендов.
- corfu можно использовать бесплатно? Какая у него лицензия?
- corfu распространяется с открытым исходным кодом под лицензией GPL-3.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- corfu всё ещё поддерживается?
- Активно поддерживается. Последний коммит в corfu — 1 нояб. 2026 г..
- Для чего можно использовать corfu?
- Получение вариантов автодополнения прямо в буфере при редактировании кода в Emacs. Автодополнение команд и путей в буферах Eshell или shell. Использование dabbrev или источников Capf для автодополнения слов при написании текста. Сочетание быстрого фильтра по префиксу с Orderless для более гибкого поиска совпадений.
- Как установить corfu?
- Установите Corfu из ELPA или MELPA: M-x package-install RET corfu RET Включите глобальный второстепенный режим: M-x global-corfu-mode RET Нажмите M-TAB (или TAB) в буфере, чтобы выполнить автодополнение
- Где скачать corfu?
- Исходный код и инструкции по установке — на GitHub: https://github.com/minad/corfu
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Минималистичный вертикальный интерфейс автодополнения для Emacs, построенный на встроенной системе и совместимый с её командами.
Плагин для Vim и Neovim: асинхронно проверяет код во время набора, запускает форматтеры и исправления вроде prettier и eslint, а также работает как LSP-клиент.
Клиент Emacs для Language Server Protocol: добавляет автодополнение, диагностику, навигацию и рефакторинг в стиле IDE.
Eglot — встроенный в Emacs LSP-клиент, который подключает буферы с кодом к языковым серверам и требует минимум настроек.
Модульная система автодополнения в буферах GNU Emacs, которая показывает варианты для кода и текста по мере ввода.