Еmacs как демон

Давно знал о сабжевой возможности, но никогда не пользовался. А тут попробовал в очередной раз и мне очень понравилось.

Дело в том, что у меня значительно разбух .emacs и время запуска, соответственно, стало неудобоваримым. Всё это усугубляется тем, что порой я запускаю несколько экземляров (например, как редактор в цезии) и длительный запуск утомляет.

Суть проста: экземпляр emacs запускается в режиме демона без пользовательского интерфейса. Последний запускается в виде клиента и потому стартует очень быстро.

Запустить emacs в качестве демона очень просто:
$ emacs --daemon
Для запуска клиента с графическим фреймом и всеми возможностями графической версии достаточно просто выполнить
$ emacsclient -c
Если же хочется запустить клиент в терминале, то
$ emacsclient -nw
Вот и всё. Но есть ещё тонкости некоторых настроек, которые перестают работать в режиме демона и клиента. У меня проявились две: не подхватился шрифт и не выключался scrollbar.

Обе проблемы решились весьма просто.
(setq default-frame-alist '((font . "Iosevka-12")))
И проблема с шрифтом решена.

Scrollbar же я убрал не так красиво, но вполне действенно. В ~/.Xdefaults добавил строчку
emacs.verticalScrollBars: false
Теперь в фреймах отсутствует scrollbar.

Возможность эта достаточно известна, но вдруг кому-нибудь покажется полезным иметь emacs всегда запущенным, а пользовательский интерфейс вызывать по необходимости.

Что удобно, открытые буферы и их состояние, запущенные elisp-программы не зависят от клиента и выполняются демоном. Можно хранить состояние между вызовами интерфейса. Можно открыть несколько фреймов emacs и работать в них одновременно, если по какой-либо причине неудобно использовать окна emacs в одном фрейме. И самое главное -- молниеносный запуск клиента. Теперь писать в секту сторонним редактором стало очень удобно и быстро.
Ответы на это сообщение: Difrex (2020-08-05 10:56:37) vit01 (2020-08-25 05:13:43)
Andrew Lobanov (2020-08-05 06:32:59) [Ответить]
Предыдущее сообщение Следующее сообщение