Я делаю это, запуская демон emacs при входе в систему. Где вы разместите эту команду, зависит от вашего менеджера рабочего стола. Я использую i3
, который настроен для запуска сценария при входе в систему, который включает в себя следующее:
emacs --daemon &
При этом emacs всегда работает в фоновом режиме, и я открываю новый клиент с emacsclient -c -n
привязкой к удобному связыванию клавиш в оконном менеджере. Если вы работаете в терминале, вам нужно всего лишь простой псевдоним , как alias emc='emacsclient'
, возможно , с -n
, -c
или -t
аргументы, в зависимости от того, как вы его используете.
Изучите опции для emacsclient в руководстве: ( (emacs) Опции emacsclient , доступные из Emacs через C-h r m emacsclient options <enter>
). Вы можете использовать этот -a
флаг для автоматического запуска демона emacs, если он еще не запущен, и -c
или -t
для открытия нового фрейма или терминального клиента, вместо повторного использования существующего (в том же сеансе):
'-А КОМАНДА'
'--Alternate-редактор = КОМАНДА'
Укажите команду для запуска, если emacsclient не может связаться с Emacs.
Это полезно при запуске emacsclient в скрипте.
В качестве специального исключения, если COMMAND является пустой строкой, тогда
'emacsclient' запускает Emacs в режиме демона (как 'emacs --daemon') и
затем пытается подключиться снова.
'-C'
'--Create-кадр'
Создайте новый графический «кадр клиента» вместо использования существующего
Рамка Emacs. Смотрите ниже об особом поведении «Cx C-c» в
кадр клиента. Если Emacs не может создать новый графический фрейм (например,
если он не может подключиться к X-серверу), он пытается создать текст
терминал клиентского фрейма, как если бы вы указали опцию '-t'
вместо.
'-T'
'--Tty'
'-Nw'
Создайте новый клиентский фрейм на текущем текстовом терминале вместо
используя существующий фрейм Emacs. Это ведет себя так же, как '-c'
вариант, описанный выше, за исключением того, что он создает текстовый терминал
рамка (* примечание Неоконные терминалы: :).
emacs --eval "(suspend-frame)"
а неemacs --daemon
( emacswiki.org/emacs/EmacsAsDaemon ). Есть ли причина, по которой вы решили не вызывать emacs в качестве демона? Вы можете использовать что-то вроде,pgrep -U `whoami` emacs || emacs --daemon &
чтобы убедиться, что оно работает.