Skip to content

My Emacs configuration

Notifications You must be signed in to change notification settings

dunmaksim/.emacs.d

Repository files navigation

Конфигурация EMACS для технических писателей

Все необходимые пакеты устанавливаются автоматически при запуске редактора. Для управления конфигурацией используются возможности пакета use-package.

В этой конфигурации используются (в алфавитном порядке):

abbrev-mode

Встроенный пакет для использования аббревиатур — последовательностей, автоматически заменяемых на более длинные слова и предложения.

ace-window

Пакет для управления окнами Emacs. Я использую его для быстрого перехода между окнами с помощью сочетания Alt+o.

Страница проекта

adoc-mode

Пакет для поддержки AsciiDoc.

Страница проекта

aggressive-indent

Принудительное выравнивание кода. Особенно полезен этот пакет для работы с init.el.

Страница проекта

ansible

Поддержка синтаксиса для конфигураций Ansible. Дополнительный режим, расширяющий возможности yaml-mode.

Страница проекта

bind-key

Обёртки над функциями Emacs, используемыми для привязки клавиш.

Страница проекта

checkdoc

Встроенный пакет, используемый для проверки документации пакетов Emacs Lisp.

company

Автодополнение. Используется в основном при работе с текстами программ.

Страница проекта

conf-mode

Встроенный пакет для работы с конфигурационными файлами форматов INI и CONF.

css-mode

Встроенный пакет для работы с файлами CSS.

desktop

Встроенный пакет для сохранение состояния Emacs между сессиями.

Документация Emacs: Saving Emacs Sessions

diff-hl

Подсветка незафиксированных изменений.

Страница проекта

dired

Встроенный пакет для управления файлами.

Документация Emacs: Dired, the Directory Editor

display-line-numbers

Встроенный пакет для отображения номеров строк.

dockerfile-mode

Поддержка конфигурационных файлов Docker.

Страница проекта

doom-modeline

Строка статуса, используемая проектом DooM EMACS. Выглядит отлично, поддерживает иконки и тонкую настройку внешнего вида.

Страница проекта

doom-themes

Темы из проекта DooM EMACS. Мне больше всего нравится monokai-pro.

Страница проекта

edit-indirect

Позволяет открыть буфер с фрагментом кода и нужным основным режимом во время работы с другим буфером. Например, код на Python, вставленный в Markdown-файл, откроется с основным режимом anaconda-mode и всеми его преимуществами: автодополнение, подсветка синтаксиса и т. д. Чтобы открыть фрагмент кода в другом буфере, нужно нажать [C-c '], чтобы сохранить изменения — [C-c C-c], закрыть буфер без сохранения изменений — [C-c C-k].

Страница проекта

editorconfig

Поддержка EditoConfig. Использование этой штуки задаёт правила форматирования текста на уровне проекта: TAB vs SPACES, типы концов строк и т. д.

Страница проекта

elec-pair

Встроенный пакет для автоматической вставки парной скобки.

Flycheck

Автоматическая проверка синтаксиса с помощью статических анализаторов. Отличная замена Flymake.

Страница проекта

format-all

Форматирование кода с помощью внешних средств, например, standard для JavaScript, black для Python и т. д.

Страница проекта

js2-mode

Расширенная поддержка языка программирования JavaScript. Обладает значительно большими возможностями, чем встроенный режим javascript-mode.

Страница проекта

Magit

Текстово-графичекий интерфейс для работы с системой контроля версий Git.

Страница проекта

multiple-cursors

Поддержка мультикурсорности. Для редактирования выделенных строк нужно нажать [C-S-c C-Sc].

Страница проекта

Projectile

Работа с проектами. Аналог встроенного пакета project.el, предоставляющий дополнительные возможности.

Страница проекта

Pulsar

Вспыхивание строки, к которой перемещён курсор. Помогает лучше ориентироваться среди множества открытых фреймов и окон.

Страница проекта

python-mode

Базовая поддержка языка программирования Python.

Страница проекта

rainbow-delimiters

Парные скобки отображаются одним цветом.

Страница проекта

terraform-mode

Поддержка синтаксиса конфигурационных файлов Terraform.

Страница проекта

treemacs

Дерево файлов в отдельном окне. Отличная замена устаревшему neotree.

Страница проекта

undo-tree

Замена стандартной системы Undo/Redo, используемой в EMACS, на более удобную.

Страница проекта

vagrant

Поддержка конфигурационных файлов Vagrant.

Страница проекта

web-mode

Режим работы с Web-файлами: HTML, CSS.

Страница проекта

which-key

Показывает подсказки с комбинациями клавиш, привязанным к командам.

Страница проекта

whitespace

Встроенный пакет, отображающий невидимые символы: пробелы, табуляции, переходы на новую строку и т. п.

ws-butler

Старый, но очень полезный пакет: позволяет работать с большими файлами так, будто включен режим удаления висячих пробелов, но затрагивает только изменённые строки.

Страница проекта

yaml-mode

Поддержка синтаксиса языка разметки YAML.

Страница проекта

yasnippet

Поддержка сниппетов: развёртывания небольших фрагментов текста в заранее подготовленные большие блоки.

Страница проекта

yasnippet-snippets

Набор сниппетов для yasnippet.

Страница проекта

Releases

No releases published

Packages

No packages published