Emacs. Автоформатирование. apheleia
2025-11-15
·
1 мин. для прочтения
Emacs. Автоформатирование. apheleia.
Содержание
1 Общая информация
- Репозиторий: https://github.com/radian-software/apheleia
- Запускает форматировщик кода для буфера.
2 Форматеры
2.1 LaTeX
2.1.1 latexindent
- Репозиторий: https://github.com/cmhughes/latexindent.pl
- Написан на Perl.
- Входит в состав TeXLive (см. Установка TeXlive).
- Установлен как форматер по умолчанию.
- Широкие возможности настройки через интерфейс конфигурации на основе YAML, позволяющий точно управлять стилями отступов и другими аспектами форматирования.
- Медленный, особенно при работе с большими файлами LaTeX, благодаря реализации на Perl и обширным возможностям настройки.
2.2 tex-fmt
- Форматирование. LaTeX. tex-fmt
- Ориентирован на скорость и эффективность.
- Настройки не столь обширны, как у latexindent.
- Значительно быстрее latexindent на больших файлах.
2.2.1 Замена latexindent
- Простая конфигурация для замены latexindent на tex-fmt:
;;;; Define tex-fmt as an Apheleia formatter (add-to-list 'apheleia-formatters '(tex-fmt "tex-fmt" "--stdin")) ;;;; Associate tex-fmt with LaTeX modes (if (executable-find "tex-fmt") (progn (setf (alist-get 'latex-mode apheleia-mode-alist) 'tex-fmt) (setf (alist-get 'LaTeX-mode apheleia-mode-alist) 'tex-fmt) (setf (alist-get 'TeX-latex-mode apheleia-mode-alist) 'tex-fmt) (setf (alist-get 'TeX-mode apheleia-mode-alist) 'tex-fmt)) nil)