Краткая форма: я хочу запустить версию Emacs для Mac OSX, найденную на http://emacsformacosx.com/, в качестве демона, с графическими и текстовыми клиентами, подключающимися к нему по мере необходимости.
Подробно, вот рабочий процесс, который я хочу:
При входе в систему запустите
/Applications/Emacs.app/Contents/MacOS/Emacs --daemon
emacs как демон. Я уже знаю, как это сделать .Когда я запускаю emacs из локального терминала, я хочу один из них:
- Если я запускаю
emacs
из локальной командной строки, откройте новый фрейм с выбранным файлом. - Если # 1 невозможно, по крайней мере, если я запускаю
emacsclient
из командной строки, откройте новый кадр с выбранным файлом.
- Если я запускаю
Когда я запускаю emacs с удаленного терминала, я хотел бы запустить emacs в текстовом режиме, подключенный к процессу демона.
Если я запускаю,
Emacs.app
повторно используйте демон emacs, работающий в фоновом режиме, вместо запуска нового экземпляра и открывайте в нем новое окно.
До сих пор я могу выполнить только # 1 и # 2.2 выше, но это простые части. # 3 и # 4 - вещи, которые больше всего нужны для того, чтобы эта работа работала. Кто-нибудь знает, как этого добиться?
M-x server-start
можете перевести emacs, запущенный без,--daemon
в режим сервера. Хорошие вопросы, кстати.(server-start)
свой .emacs, чтобы он запускался при запуске emacsaОтветы:
Да, вы хотите использовать emacsclient. Чтобы получить новый кадр, добавьте опцию -c. У меня есть псевдоним, чтобы ускорить его и сказать emacsclient не ждать возврата сервера emacs:
emacsclient -nw
em
псевдоним.Обновить:
Посмотрите этот совет, описывающий, как использовать Platypus для создания оболочки приложения вокруг emacsclient. Затем вы можете использовать «Открыть с помощью…» для запуска, используя новую оболочку приложения.
источник
Да, вот довольно подробное объяснение того, как сделать это красиво. Я попробовал несколько методов, чтобы это работало хорошо, но не лучше, чем они описали здесь.
https://gist.github.com/304964
Ура!
источник
Для 4. Поместите это в ваш .emacs:
Решение по созданию Mac .app (с Platypus) не работает, потому что Mac не будет открывать одно и то же приложение дважды.
источник
open -a Emacs.app
это, конечно, то, что я делаю, но чтобы открыться в том же фоне экземпляра / демона существующего emacs, мне нужно написать(setq ns-pop-up-frames nil)
в моем,.emacs
как я написал в своем ответе. В противном случае он создает новое окно в любом случае, с или без-n
.