Comments 6
Когда пользователи имакса выглядывают наружу из своей слоновокостной башни, всегда случается что-то прекрасное: evil mode, например.
Сейчас самое время выглянуть еще раз: в соседнем королевстве случился TreeSitter, который просто работает, а если не удалось правильно подсказать расширение(-я) — то конфигурирование сводится в добавлению кортежа {что-взять, где-взять, необязательная-своя-конфигурация}. У него даже есть биндинги в имакс, но никем, вроде, не замеченные.
Бацов повернут на «стандартизации», что сильно сказывается на развитии Prelude, насколько могу судить из противоположного лагеря, в ущерб удобству и пологости кривой входа.
Обнови страницу... не знаю где. treesitter завезли, emacs на него переходит. да и вообще много чего произошло. макрос use-package теперь влит в emacs, некоторые альтерантивные подходы по управлению пакетами интегрированны через use-package и работают на уровне package/package-vc. LSP тоже озаботились.
Там ещё конечно есть куда расти с инициализацией emacs и best practices/guide lines для emacs. но в целом жить очень даже можно.
Есть люди, которые сидели на vim, перешли на emacs + evil mode, но в последствии поняли, что это излишне и отказались от evil. но, тут каждому своё.
В Nix можно пользоваться use-package, но сами пакеты ставить из репозитория Nix. База пакетов берётся при этом из MELPA. Когда я опубликовал свой пакет в MELPA, он волшебным образом оказался и в Nix. :)
Как по мне, управление пакетами в Emacs не проблема, разнообразие подходов даже радует, а вот что реальная проблема, это то, что:
Если вас угораздило поставить Emacs через snap или flatpak, то вы получите вещь в себе: любой пакет, требующий для своей работы внешний инструмент, работать не будет. Например, у вас не будет работать LSP... Хорошо, скажете, ставь Emacs из системного репозитория, только вот версия в нём обычно устаревшая, а хотелось бы всегда работать со свежей.
Какая-то беда повсеместно (кроме Nix) пошла с Sqlite: что-то намудрили с его интеграцией в Emacs, в результате пакеты его использующие (например, org-roam-ui) работать отказываются, не могут запустить Sqlite. Вроде нужно собирать Emacs из исходников, чтобы включить Sqlite. Но я пока этим не занимался.
Управление пакетами в Emacs: Хороший, плохой, злой