Об этом проекте

Nano Emacs (GNU Emacs / N Λ N O) — это набор конфигурационных файлов для GNU Emacs, призванный придать редактору чистый и единообразный внешний вид. Он основан на принципах дизайна, описанных автором в статье «On the design of text Editors» (arXiv). Светлая тема опирается на цвета Material, тёмная — на цвета Nord. Заявленная философия — оставаться как можно ближе к ванильному Emacs, избегать введения множества зависимостей (в идеале — никаких) и сохранять модульность, чтобы пользователи могли копировать в свою конфигурацию только нужные им части. Проект описывается как тесно связанный с более ранним Elegant Emacs того же автора, который представлен как ранний прототип. Требования — свежая версия GNU Emacs и установленные в системе шрифты Roboto Mono и Fira Code; других зависимостей не указано. Быстрая проверка возможна путём клонирования репозитория и запуска `emacs -q -l nano.el` изнутри него. Установка может быть выполнена вручную — путём слияния содержимого nano.el с существующей конфигурацией Emacs и настройки `load-path`, — либо через менеджер пакетов straight.el с формой `straight-use-package`, указывающей на репозиторий GitHub. Пользователи могут либо подключить конфигурацию nano по умолчанию, либо загружать отдельные модули; nano-faces — единственный обязательный модуль, определяющий шесть граней (faces), используемых остальными. Настройка охватывает моноширинный шрифт по умолчанию (`nano-font-family-monospaced`, по умолчанию Roboto Mono), опциональный пропорциональный шрифт (`nano-font-family-proportional`), включающий режимы переменной ширины и смешанного шага, и размер шрифта (`nano-font-size`). В README отмечается, что эти переменные должны быть заданы до вызова `(nano-faces)` и `(nano-theme)`, а их изменение после этого требует повторного вызова этих функций. Модули сгруппированы как обязательные, опциональные и экспериментальные. Обязательные модули — nano-base-colors (фундаментальные цвета темы) и nano-faces (фундаментальные грани). Опциональные модули включают светлую и тёмную темы, nano-theme (выводит грани для популярных режимов Emacs), nano-help (справочное сообщение в области эха), nano-splash (заставка при запуске), nano-modeline (заголовочная строка, зависящая от режима и скрывающая модельную строку при необходимости), nano-layout (макет фрейма, шрифты, каймы, поля), nano-defaults (разумные настройки по умолчанию), nano-session (сохранение сессии между запусками), nano-bindings (сокращённый набор привязок клавиш), nano-counsel (настраивает отдельно устанавливаемый пакет counsel) и nano-colors (палитры из Open Color, Material и Nord с функциями доступа). Экспериментальные модули включают nano-mu4e (внешний вид и поведение для mu4e), nano-minibuffer (минибуфер с использованием mini-frame), nano-command (экспериментальная командная строка в заголовочной строке без истории и дополнения) и nano-agenda (интерактивная мини-повестка с мини-календарём рядом с записями org с отметками времени). В README также есть ссылка на связанный проект — тему Bespoke, описываемую как пользовательские светлая и тёмная темы со средним контрастом, вдохновлённые nano emacs, elegant emacs, Nord и Solarized.