GNU EMACS для технических писателей

GNU EMACS для технических писателей

@emacs_for_technical_writers

Настройка, использование, хаки

306подписчиков
Еженедельно🇷🇺

Похожие каналы

Все →

Последние посты

Пакет apheleia.el обновился до версии 4.4.3.Несколько месяцев назад я полностью отказался от MELPA и MELPA Stable, поэтому об обновлении узнал только зайдя на сайт проекта.Если в буфере активен режим apheleia-mode, при сохранении вызывается соответствующее средство автоматического форматирования.В отличие от format-all, apheleia старается сохранить позицию курсора, чтобы вам не нужно было вспоминать на какой строке вы были до того, как внешний форматтер покорёжил разметку.Настройки:;; 📦 APHELEIA;; https://github.com/radian-software/apheleia;; Автоформат буфера перед сохранением.(use-package apheleia :vc (:url "https://github.com/radian-software/apheleia.git" :rev "v4.4.3") :custom (apheleia-mode-lighter " ɑ" "Вместо длинного Apheleia") :bind (:map global-map ("<f12>" . apheleia-format-buffer)) :hook ((emacs-lisp-mode python-mode python-ts-mode ruby-mode ruby-ts-mode yaml-ts-mode) . apheleia-mode))Можно вызывать вручную, можно автоматически, через F12.

8 мар. 2026 г.476В Telegram

До 1 апреля осталось совсем немного, и я не знаю, будет ли после этой даты без КВН работать Telegram. Пути отхода:1. Boosty: https://boosty.to/simple-emacs2. GitHub: https://github.com/emacs-ru/3. Личный блог. ОТКРЫВАЙТЕ ОСТОРОЖНО, ТАМ НЕ ТОЛЬКО ТЕХНИНА, НО ЕЩЁ НЫТЬЁ И МАТ: https://dunaevsky-ms.ru/Наиболее перспективным вижу такой путь: в личном блоге сделать раздел, где будут посты только про Emacs, и писать туда.Если вы знаете вариант получше, напишите в комментариях.

27 февр. 2026 г.415В Telegram

Наглядная демонстрация

26 февр. 2026 г.335В Telegram

Я годами держал в init.el код, связывающий [M-'] с функцией comment-or-uncomment-region. И совершенно зря, ведь к [M-;] уже привязана куда более удобная и умная функция comment-dwim:1. Если ничего не выделено, то в текущей строке будет добавлено начало комментария.2. Если активен регион, то функция посмотрит, является ли он комментарием. Если да — раскомментирует. Если нет — закомментирует. Одним словом, ведёт себя как comment-or-uncomment-region.3. Если курсор находится в незакомментированной строки, нажатие [M-;] приведёт к перемещению курсора за пределы строки и вставки начала комментария.

26 февр. 2026 г.356В Telegram

Есть такая система разметки Typst. Это такой LaTeX с человеческим лицом. Во всяком случае, порог вхождения у него на порядок ниже.Emacs поддерживает эту разметку, но нужно выполнить несколько условий.1. Нужна версия не ниже 29.2. Нужна поддержка TreeSitter.Дальше всё просто:1. Установите пакет typst-ts-mode.el.2. Выполните команду typst-ts-mc-install-grammar. В книге описан способ установки через treesit-language-source-alist, чтобы единообразно было. Однако, авторов пакета можно похвалить за то, что они добавили команду, которая может сделать всё за нас.3. Включите нужные дополнительные режимы.

24 февр. 2026 г.323В Telegram

Напоминаю, что у нас есть проект emacs-from-scratch: настройки базовой функциональности Emacs, без сторонних пакетов.Оставляйте ваши Issue и Pull Request'ы, сделаем Emacs ближе к людям!https://github.com/emacs-ru/emacs-from-scratch

18 февр. 2026 г.371В Telegram

Для тех, кто использует TreeSitter. В Emacs довольно старая версия нужной библиотеки, поэтому с течением времени вы будете всё чаще видеть эти 2 ошибки:⛔️ Warning (treesit): Cannot activate tree-sitter, because language grammar for rust is unavailable (version-mismatch): 15⛔️ Warning (treesit): The installed language grammar for rust cannot be located or has problems (version-mismatch): 15Что делать?Вариантов несколько:1. Не используйте режим на базе TreeSitter, берите обычный. Также удалите код, добавляющий сбойную грамматику в treesit-language-source-alist.2. Идите в репозиторий грамматики и посмотрите историю релизов и коммитов. Методом проб и ошибок найдите ревизию кода, которая соберётся с вашей версией Emacs.3. Обновите Emacs. Возможно, потребуется собрать его из исходного кода. Этот способ я не рекомендую ввиду его сложности для большинства людей.

12 февр. 2026 г.450В Telegram

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

10 февр. 2026 г.389В Telegram

Немножко подкрутил настройки savehist:;; SAVE-HIST;; Встроенный пакет для запоминания истории команд(use-package savehist :hook (server-done . savehist-save) (kill-emacs . savehist-save) :config (add-to-list 'delete-frame-functions 'savehist-save) (add-to-list 'savehist-additional-variables 'compile-history) (add-to-list 'savehist-additional-variables 'regexp-search-ring) (add-to-list 'savehist-additional-variables 'search-ring) (add-to-list 'savehist-additional-variables 'shell-command-history) (savehist-mode t))В такой конфигурации он будет запоминать историю поиска по обычным и регулярным выражениям, историю команд компиляции и историю команд, выполняемых с помощью shell-command.Возможно, есть и другие переменные, в имени которых есть слово history, но пока хватит и этого.

4 февр. 2026 г.478В Telegram

Шо, опять?https://www.opennet.ru/opennews/art.shtml?num=64725

2 февр. 2026 г.357В Telegram