Имя сервера Emacsclient не распознано

Я бы хотел emacsclient подключиться к данному серверу Emacs из командной строки. Чтение руководства Использование Emacs в качестве сервера Я подумал, что могу сделать что-то вроде:

emacs --eval '(server-start)' --eval "(set-variable 'server-name \"foo\")" --no-splash fileA &

а потом позже:

emacsclient -s "foo" -n fileB

Но это дает ошибку:

emacsclient: can't find socket; have you started the server?
To start the server in Emacs, type "M-x server-start".
emacsclient: error accessing socket "foo"

Тем не менее, я могу сделать:

emacsclient -e '(prin1 server-name)'

который дает

"foo"

1 ответ

Решение

Вы должны установить имя перед запуском сервера:

emacs --eval '(setq server-name "foo")' --eval '(server-start)' --no-splash fileA &
Другие вопросы по тегам