Об Emacs Bedrock
Bedrock — это минималистичный, написанный вручную стартер-кит для Emacs. Сегодня объявляется выпуск версии 2.0, которая требует Emacs 31, вышедшего в августе 2026 года. Если вы не можете обновиться на такую версию, часть конфигурации, специфичной для Emacs 31, можно удалить без особых сложностей.
Bedrock по сути — это набор разумных стандартных настроек для Emacs, построенный без использования сторонних пакетов в базовой конфигурации. Разумеется, одна из привлекательных сторон Emacs — огромное количество пакетов, разработанных и поддерживаемых сообществом. Поэтому Bedrock включает примеры конфигурации для наиболее популярных пакетов, которые автор считает незаменимыми.
Идея Bedrock намного проще, чем у других стартер-китов или конфигурационных фреймворков. Это просто два файла — early-init.el и init.el, которые вы один раз копируете в ~/.emacs.d/, а затем модифицируете прямо там, как растут ваши потребности и опыт работы с Emacs. Файлы содержат достаточно комментариев, чтобы подсказать направление при желании разобраться с конкретной частью, но без излишних простыней текста, когда вы ищете код. Конфигурация сторонних пакетов хранится в отдельной папке extras/, и вы можете скопировать конфиг отдельного пакета прямо в init.el по мере надобности или загружать целые группы из одного файла.
Что нового в Bedrock 2.0
Это мажорный релиз, потому что Bedrock прекращает поддержку Emacs 29, вышедшей в 2024 году. Вот краткий обзор основных изменений:
- Все файлы
.elиспользуют cookielexical-binding: t. - Пакеты, объявленные через
use-package, устанавливаются автоматически, если их нет в системе (поведение по умолчанию). - Если загружен пакет
embark, используетсяembark-auto-prefix-help-modeвместоwhich-key. - Убран
wgrepв пользу встроенногоgrep-change-to-grep-edit-mode. - Заметно улучшена конфигурация
tree-sitter. - Более удобная настройка
isearch. - Буфер встроенного
*Completions*теперь обновляется автоматически. - По умолчанию включён
repeat-mode.
Исправления в этой версии:
- Цвета темы теперь применяются корректно.
- Лучше подавляется стартовое сообщение.
- Различные мелкие улучшения.
Это не исчерпывающий список, но суть передана. Полные детали найдёте в changelog.
По сути — это постепенное совершенствование, а не полный переворот Bedrock. Если вы довольны работой более ранней версии, может быть никаких причин переходить на новую. Emacs — стабильный редактор (хотя уровень активной разработки впечатляет!), поэтому логично, что стартер-кит для «на острие прогресса» тоже должен быть относительно стабилен.
Обновление со старых версий Bedrock
Bedrock не поддерживает автоматическое обновление — это требовало бы, чтобы код Bedrock хранился отдельно от файла init.el, а суть Bedrock именно в том, что вы сами получаете полный контроль над конфигурацией как можно быстрее. Вместо этого сравните commit, с которого вы клонировали свою версию, с новой веткой main и выберите нужные вам изменения.
Спасибо
Автор благодарен всем, кто попробовал Bedrock и отправил обратную связь. Изначально он создал Bedrock как упражнение в настройке встроенных опций для большей «удобности». Потом это превратилось в конфиг, который он мог давать друзьям, интересующимся Emacs. Теперь его используют намного больше людей, чем он когда-либо ожидал, как точку старта для своих конфигураций. (Точное число неизвестно — спасибо за телеметрию, или скорее за её отсутствие — ура приватности!) В любом случае, огромное спасибо тем, кто присылает отчёты об ошибках или pull request'ы, и всему сообществу Emacs. Благодаря вашей преданности свободному и открытому ПО вы сделали жизнь лучше. Надеюсь, Bedrock поможет и вам.
— Ashton