Verwenden des Desktop-Modus mit Emacs Daemon

9

Ich verwende Emacs 24.3 (Ubuntu 14.10) und möchte, dass der Daemon während der Verwendung am grafischen Desktop-Sitzungslebenszyklus teilnimmt desktop-mode. Ich habe http://www.emacswiki.org/emacs/EmacsAsDaemon durchgesehen, aber es spielt sich immer noch nicht gut für mich. Ein Problem besteht darin, dass die SIGTERM-Terminierung des Dämons nicht bereinigt wird, .emacs.desktop.locksodass beim nächsten Start die Speicherung des gespeicherten Status verweigert wird.

Hat jemand ein Rezept, mit dem Emacs Daemon + Desktop-Modus mit der grafischen Desktop-Sitzung gut gespielt werden kann?

Als Nebenbemerkung: Das Senden von SIGHUP stürzt für mich häufig mit Emacs ab.

Andreas Steffan
quelle

Antworten:

6

Töte den Prozess nicht.

Verwenden Sie M-x kill-emacs RETdiese Option, um den Server zu beenden.

Phils
quelle
Ok, das räumt den Look auf. Ich vermisse vielleicht etwas, aber wie führt man diese Beendigung der grafischen Sitzung aus? Das Einfachste, was ich mir vorstellen kann, ist ein benutzerdefinierter OS-Signalhandler.
Andreas Steffan
2
Wenn Sie einen aktiven Client-Frame haben, können Sie kill-emacsdirekt ausgeben . Wenn Sie keine aktuellen Clients haben, können Sie ausführen emacsclient -e '(kill-emacs)'. Wenn Sie nur möchten, dass Emacs beim Abschalten durch ein Signal eleganter heruntergefahren wird, müssen Sie dies wahrscheinlich tun M-x report-emacs-bug(nachdem Sie überprüft haben, ob es bereits protokolliert wurde).
Phils
Sicher. Die Sache ist, dass ich nicht jedes Programm manuell anweisen möchte, es ordnungsgemäß herunterzufahren. Desktop-Sitzungsmanager teilen den Programmen mit, dass die Sitzung beendet werden soll. Ich möchte, dass Emacs zu diesem Zeitpunkt automatisch aktiv werden.
Andreas Steffan
Überprüfen Sie die Fehlerberichte, melden Sie gegebenenfalls einen neuen. Wenn Sie weitere Informationen haben, aktualisieren Sie die Frage oder geben Sie eine Antwort ein.
Phils