Kann ich in Emacs auf X Frames auf anderen Bildschirmen schließen?

2

Ich arbeite auf einem Linux-Rechner. Ich ssh in Maschine Alpha, mit X Weiterleitung.

tomfuture@work$ ssh -X alpha

Dann starte ich X-Windows Emacs.

tomfuture@alpha$ emacs

Es wird auf meinem lokalen Display angezeigt. Ich mache ein bisschen Arbeit und gehe nach Hause, während der Emac läuft. Auf meinem Linux-Rechner zu Hause kann ich in Alpha sshen und einen neuen Emacs-Frame öffnen, der mit demselben Emac verbunden ist.

tomfuture@home$ ssh -X alpha
tomfuture@alpha$ emacsclient -c

Ich habe jetzt zwei Emacs-Frames am Laufen, einen bei der Arbeit und einen zu Hause, beide verbunden mit demselben Emacs, der auf Alpha läuft. Wie kann ich von zu Hause aus:

  1. Schließen Sie den Rahmen, der bei der Arbeit läuft? oder
  2. Emacs komplett schließen?

Vielen Dank!

Tom Future
quelle

Antworten:

1

Sie können alle anderen Frames mit der Funktion schließen delete-other-frames, an die gebunden ist C-x 5 1. Sie können Emacs vollständig schließen, indem Sie C-x C-cwie gewohnt eingeben . Es wird Emacs beenden und somit alle Frames schließen.

Fran
quelle
Beide scheinen nur Frames auf dem Display zu schließen, auf dem ich mich befinde. Mein Ziel ist es, Frames zu schließen, die auf einer anderen X-Windows-Anzeige laufen.
Tom Future
Beide? Wenn C-x C-c(was Emacs tötet) Frames auf anderen Displays offen lässt, wurden diese Frames nicht von den Emacs gezeichnet, die Sie töten. Ist es möglich, dass Sie zwei Emacs einsetzen?
Fran
ps auxlistet nur einen emacs prozess auf. M-x describe-key C-x C-csagt, das C-x C-cist gebunden an save-buffers-kill-terminal. Es beschreibt diese Funktion als "Angebot, jeden Puffer zu speichern und dann die aktuelle Verbindung zu beenden. Wenn der aktuelle Frame keinen Client hat, beenden Sie Emacs selbst." Ich bin mir nicht sicher, was es für einen Frame bedeutet, einen Client zu haben, aber es scheint nicht so, als ob C-x C-cer immer Emacs töten soll.
Tom Future
Versuchen Sie Bindung C-x C-can save-buffers-kill-emacsdurch diesen Code setzt am Ende Ihrer ~/.emacsStartdatei: (define-key global-map (kbd "C-x C-c") 'save-buffers-kill-emacs). Ich vermute, dass diese Funktion save-buffers-kill-terminaldas Verhalten verursacht, das Sie nicht mögen.
Fran
save-buffers-kill-emacserledigt den Job (nachdem ich gewarnt habe, dass eine andere Verbindung gelöscht wird, was sehr schön ist). Vielen Dank!
Tom Future