Путь к файлу сервера Emacs

Я использую Aquamacs и запустил сервер emacs с M-x server-start. Мой emacsclient подключается нормально. Однако, когда я запускаю другой сеанс ssh (на том же компьютере), он не может найти файл моего имени сокета/сервера. Это не в ~/.emacs.d/server/server, где я ожидал бы этого.

Как я могу узнать, какой серверный файл / имя сокета в настоящее время использует сервер emacs?

Это моя рабочая конфигурация:

.emacs

(setq server-socket-dir "~/.emacs.d/server")
(server-start)

em.sh

location="/`whoami`@`hostname`:$(readlink -f $1)"
ssh <YOU@LOCAL-WORKSTATION> emacsclient -n -s '~/.emacs.d/server/server' $location

person Ward Bekker    schedule 02.12.2010    source источник


Ответы (3)


Переменная server-socket-dir (по крайней мере, в GNU Emacs) хранит местоположение сокета. Файл сокета в моем случае называется просто server.

person Noufal Ibrahim    schedule 02.12.2010
comment
«M-x описать-переменную» показало, что значение было /var/folders/RK/RK-WFnsWHm0V6eKNHRK48E+++TI/-Tmp-//emacs501 . Спасибо! - person Ward Bekker; 02.12.2010
comment
Что это за фигня?!?!? Я не использую OSX, поэтому не знаю по личному опыту, но большинство пользователей Emacs, с которыми я общаюсь, рекомендуют emacsformacosx.com над Аквамаксом. - person Noufal Ibrahim; 02.12.2010

Он находится в $TMPDIR/emacsXXX/server, где XXX — число, зависящее от используемой версии Aquamacs.

person Scott Lawrence    schedule 06.01.2011

Это также должно решить вашу проблему без необходимости вручную удалять файл.

M-x server-force-delete
person Kurt Harriger    schedule 09.04.2011