Почему emacsclient не может найти сокет после выполнения 'emacs --daemon'
Это так запутанно, что emacsclient сказал, что не может найти сокет сразу после выполненияemacs --daemon
в bash:
$ ps aux | grep emacs
shiangro 1744 0.0 0.0 2432784 604 s000 S+ 1:03下午 0:00.00 grep emacs
$ /usr/local/bin/emacs --daemon
("emacs")
Starting Emacs daemon.
Restarting server
$ /usr/local/bin/emacsclient -t
emacsclient: can't find socket; have you started the server?
To start the server in Emacs, type "M-x server-start".
emacsclient: No socket or alternate editor. Please use:
--socket-name
--server-file (or environment variable EMACS_SERVER_FILE)
--alternate-editor (or environment variable ALTERNATE_EDITOR)
У меня есть эти настройки в моем .emacs:
(server-start)
(setq server-socket-dir "~/.emacs.d/server")
и это работает, файл сервера~/.emacs.d/server/server
был только там, но emacsclient сказал, что не может найти сокет, так что раздражает, что я должен сказать ему файл сокета, используя-s
вариант.
Я нахожу эту сложную проблему, пока хочу, чтобы emacs работал как демон после каждой перезагрузки (запуска) systerm с помощью crontab◎reboot
специальные струны.
В этом случае cron успешно запустил сервер emacs и файл сервера.~/.emacs.d/server/server
был там, но позже, когда я запустил терминал и попыталсяemacsclient -t
, это не удалось и жаловался не могу найти файл сокета!
Хотя я могу обойти эту проблему с помощью-s ~/.emacs.d/server/server
каждый раз, когда я извиняюсь, emacsclient или псевдоним emacsclient какemacsclient -s ~/.emacs.d/server/server
Но есть ли лучший способ успокоить мое сердце?
Backgroud:
система: Mac OS X 10.9.2
emacs: GNU Emacs 24.3.1, установленный homebrew