Ich möchte die Emacs.app im Daemon-Modus unter Mac OS X ausführen. Ich kann Emacs im Daemon-Modus über das Terminal ausführen, aber Anweisungen zum Ausführen der App in einem Client-Server-Muster funktionieren nicht (z. B. http: // Oberton) .github.io / emacs-live / doc-Starting.html (existiert noch /Applications/Emacs.app/Contents/MacOS/bin/emacsclient
nicht) mit den neuesten Versionen von Emacs.
Wie kann ich die Emacs 24.x-App unter Mac OS X im Daemon-Modus ausführen?
Meine Ziele sind, den Server beim Start zu starten (was ich zu tun weiß) und beim Starten eines Clients einen neuen Frame in der App-Version von Emacs zu starten, die bereits ausgeführt wird.
osx
emacs-daemon
pwalsh
quelle
quelle
Antworten:
Ich habe https://korewanetadesu.com/emacs-on-os-x.html verwendet und es hat gut funktioniert, aber kürzlich habe ich Emacs über 'Brew' installiert und es funktioniert viel besser (weniger Aufwand und bessere Daemon-Erfahrung) für das Daemon-Teil: http://www.emacswiki.org/emacs/EmacsForMacOS#toc16
Sobald Sie es installiert haben, heißt es, dass Emacs beim Start geladen werden sollen. Führen Sie Folgendes aus:
quelle
emacsclient -c
eine neue 'Instanz' der App im Dock erstellt, anstatt ein neues Fenster oder einen neuen Frame in meiner aktuellen Emacs-Instanz zu starten. Stimmt das mit Ihrem Verhalten überein?emacsclient
. Ich starteemacs
direkt und laufe schnell genug für mich. Ich weiß nicht viel darüber, aber ich vermute, dass diese beiden oben erwähnten Operationen dasemacs
Laden beschleunigen . Bei der Verwendung der "korewanetadesu" -Vorschläge stellte ich fest, dass bei der Verwendungemacsserver
, bei der eine Instanz der App im Dokument erstellt wurde, diese manchmal hängen blieb.launchctrl
startet der obige Befehl einen Emacs-Prozess für Sie. Um einen neuen Frame zuemacsclient -n -c
erstellen, gehen Sie wie folgt vor : Das Emacs-Symbol wird im Dock angezeigt. Es bleibt im Dock, bis der durch launchctrl (emacs -daemon) gestartete Prozess beendet oder beendet wird. Sie können auchemacsclient -t
in einem Terminal verwenden. Beide Befehle stellen eine Verbindung zur Emacs-Daemon-Instanz her. Wenn die Instanz nicht ausgeführt wird, geben die Befehle einen Fehler aus.Ich habe auch Probleme beim Versuch, Emacs als Daemon in OS X auszuführen. Daher habe ich einen "Pseudo-Daemon" -Modus geschrieben, der nur einen neuen versteckten GUI-Frame erstellt, wenn Sie den letzten Frame schließen. Das Ergebnis ist, dass sich Emacs nur dann im Dock versteckt, wenn es normalerweise beendet wird. Dies bietet eine überraschend gute Annäherung an den Dämonmodus, während das Dock-Symbol funktionsfähig bleibt. Sie können es von MELPA erhalten: https://melpa.org/#/mac-pseudo-daemon
quelle