Кто какими сборками EMACS пользуется и почему?

Емакс - приложение с эпическим количеством “плагинов”. Файлы лежат локально.

Мне таки кажется, что книжки книжками, но об этом лучше разговаривать, причём на мелких задачах. И мелкими порциями брать инфу.

Ещё у меня впечатление, что на сейчас не хватает “быстрых выигрышей”. Того, зачем имело бы смысл лезть править текстовые файлы через емакс, даже если он не особо освоен, стремновато пока выглядит и вообще. А прям искомый “выигрыш” - большой, до него далеко, и даже неизвестно, может, и не надо? В обсидиане всё хорошо ж уже, а тут ещё силы тратить. :))
Мне когда-то орг-мод возможностью писать тексты с комментариями и целыми разделами, которые не экспортируются, неимоверно понравился, я благодаря ему втянулась…

А что до кода выше… ну, там же написано английским языком, что написано. Если из написанного непонятно, что это и зачем это - значит, пока это не нужно. :slight_smile:

2 лайка

На Windows ставить Emacs не пробовал, но полагаю, что там неровностей много и каждую надо выпрямлять. Тут, конечно, ванила с нуля будет эффективней.

Если знаешь Vim, и Doom уже стоит, то по-началу можно пользоваться вимовской навигацией. Ее много где хватает. Еще, конечно, для любой навигации нужна слепая десятипальцевая печать.

Начинать лучше под конкретную цель. Если цель - заметки, то можно взять аналог Obsidian - Org-Roam - и попытаться что-то поделать в нем. Или порпобовать разделить Obsidian на Zettelcasten и Wiki, и последнее воплотить в Org. Это как например.

Для подключения Org-Roam в Doom достаточно раскомметрировать соответствующую строчку в init.el и запустить команду “~/.emacs.d/bin/doom sync”.

Я для себя очередной раз сделал вывод что емакс точно нет ближайшее время. Только если дофига свободного времени.

1 лайк

Поставил себе и тоже словил баг с кирилицей. В тг-чате посоветовали указать doom-unicode-font и всё заработало.

1 лайк

Эссе про переход с Doom на ванильный Emacs

Итак, я перешел с Doom на ванильный Emacs и вот уже с неделю работаю в новой конфигурации. Не думал, что так случится, но… подумывал. Зачем я это сделал? Возможно, хотел поиграться с последними версиями Emacs, которые Doom не успевает поддерживать. Вот, рассуждаю, запилю быстренько ванильное MVP и погоняю тридцатку.

Быстренько?! Фиг там было! Пару недель только приводил редактор к привычному, интуитивно понятному поведению, которое, естественно, ожидал видеть из коробки. И да, подглядывал в код Doom’а, ибо местами, копаясь в доках и инете, тратил кучу времени, которого и так немного. А ведь еще надо перетащить все, что насобирал за пару лет работы.

Что ж, с уважением снимаю шляпу перед создателем Doom’а! Сколько же там блох вычищено, фишечек найдено, прочего всякого с фиг-знает-чего на ноги поставлено и удобного сделано!

При переходе с Doom я осознал, на сколько же ванильный Emacs с пакетами недружелюбен к новичкам. То есть, как бы не секрет был, но чтоб настолько! Непрограммеру даже не порекомендую его - потыкает и больше не вернется. А ведь новички - это будущее. Времена “освоишь, деваться тебе некуда” давно прошли. Даже большинство программеров со стажем не поймут: зачем им это “счастье”? - ведь давно все есть для работы. Слова “все можно настроить под себя”, “org-mode” и т.п. - это лишь пустой звук, пока сам не пропустишь через руки. Потом, конечно, Emacs становится добрым другом, но это потом. :slight_smile:

И вот тут-то независимые, но похожие проекты Doom и Spacemacs приходят на помощь не только новичкам, но и самому редактору Emacs. Оба нащупали ту самую структуру конфигурации (модули в Doom и слои в Spacemacs), которая поднимает пользование редактором на качественный уровень и при этом не ограничивает пользователя в создании своих собственных настроек.

Отдельного внимания заслуживают те самые модули/слои. В них есть зачастую все, что нужно разработчику, редактору, просто специалисту под их текущую работу. Нужна поддержка языка программирования с LSP? аналог Obsidian? - пожалуйста!: просто снимаем комментарий с соответствующего модуля в init.el, говорим “sync” и оно работает. А еще к модулям написаны достаточно подробные документации прямо в редакторе. Ставим курсор на название модуля в init.el, нажимаем “K” - читаем.

А есть еще свой Doom’овский DWIM (Do What I Mean), который просто работает через весь редактор, где ни окажись. Считаю, что именно в таком направлении и должен развиваться Emacs, если хочет новых людей в проект.

Всем начинающим рекомендую начинать с Doom. Продолжающим рекомендую Doom тоже. С него можно вообще не уходить, эффективность работы от этого не пострадает. Чем дольше работаешь с Doom, тем больше понимаешь, на что на самом деле способен Emacs, заслуженный чемпион по кастомизации. Ну и всегда можно допилить что-то свое, Doom этому, в целом, не препятствует, что, на мой взгляд, очень здорово!

Вернусь к началу, к своему переходу с Doom на ванилу. Откатываться назад уже не буду: во-первых, проделана работа, во-вторых, мой личный вызов принят, а, в-третьих, чувствую себя свободней. Все, что понадобится, можно “доработать напильником”. :slight_smile: В новой конфигурации сохранил почти все телодвижения из прошлой Doom’овской настройки, так что работаю в Emacs так же, как и раньше. Допиливаю неровности по мере их обнаружения. :slight_smile:

2 лайка

Сколько раз заходил и на дум и на ванилу. Устал считать. Каждый раз думаю вернуться и каждый раз опасаюсь :slight_smile:

Чего уж там, боюсь этого зверя :slight_smile:

Это, пожалуй, лучший стартовый tutorial по емаксу для новичков (как минимум, для новичков, с 30летним стажем, в области ИТ, которые последний раз начинали в емскакс, как раз 25 лет назад, не обремененные еще возрастной ленью).

теперь, наверное, можно попробовать погрузиться в tutorial по думу

как бы, со временем не появился еще один коллега Doom-а

Ну, смысла в нем уже нет. :slight_smile: А вот докрутить ванилку до более дружелюбного уровня было бы хорошо. На практике Doom и Spacemacs показали как.

А что накручивали на ванильный emacs, чтобы он стал как doom? Я сижу на ванильном, мне стало интересно.

Тут проще, наверное, просто ссылку на свой org-конфиг дать (пишу его на русском).
Не знаю, разрешено ли тут оставить ссылку, но могу в личке прислать.

Если коротко, то вот:

  • Настройка EVIL и лидера на пробеле (как привык в Doom).
    Заодно мимоходом возможность не работать в EVIL (если вдруг для коллег).
  • Выбор шрифта под маленький экран своего походного ноутбука.
  • Поддержка работы в нескольких демонах Emacs.
  • Окно компиляции (настройки по-умолчанию аскетичны до неудобного).
  • Правила показа окон.
  • Подсказки, выпадашки, дополнения, помощь и прочее.
  • Поиск по буферу, проекту, директории.
  • Подсветка орфографии на основе hunspell (RU и EN).
  • Всякие удобности по работе с буферами, окнами и фреймами.
  • Работа с файлами и настройка Dired.
  • Поддержка рабочих пространств, проектов и фреймов для них.
  • Разные scratch-буферы (под проекты и рабочие пространства) с автосохранением (как в Doom).
  • Уйма всякого для Org-mode (разнообразная реакция на RET, картинки в результатах org-babel блоков, LaTeX и формулы, слайды и презентации, agenda).
  • Поддержка терминаалов для разных рабочих пространств (eshell и vterm, примерно как в Doom).
  • Настройка системы контроля версий (magit, blamer, ediff).
  • Сниппеты.
  • Offline словарик на основе StarDict.
  • Живой калькулятор на Python на основе Live-py-mode.
  • PlantUML (+ его поддержка в org-mode).
  • Программирование (сейчас настроены Python, Haskell и Rust + LSP к ним и поддержка org-babel).
1 лайк

Разрешено ) Размещайте. Может еще кому пригодится.

Спасибо!

Это клон моего репозитория с настройками Emacs. Может чуть запаздывать от приватного оригинала.

А вы используете Emacs как IDE?

Он заменяет мне IDE. :slight_smile:

Вот смотрю на вас и руки у самого чешутся в очередной раз подойти к этому снаряду )

Мы в прошлый раз (это год назад или больше было) как раз doom-emacs устанавливали, насколько я помню. У тебя оно сохранилось? :slight_smile:

Неа, пытался найти на днях, но не успешно )

Однако не теряю надежду, научиться использовать этот ящик пандоры ))