eine Bestätigung nach Cx Cc vor dem Verlassen von Emacs

Antworten:

22

Setzen Sie die Variable confirm-kill-emacsauf so etwas wie yes-or-no-p.

Legoscia
quelle
2
Vielen Dank! Schade, dass es in der save-buffers-kill-terminalDokumentation nicht erwähnt wird ...
imz - Ivan Zakharyaschev
1
Es wird nur für erwähnt save-buffers-kill-emacs, die die Bindung für C-x C-cbis 23.1. Das sollte aktualisiert werden, wie es scheint.
Legoscia
1
@ imz - IvanZakharyaschev: Ja; ebenso kill-emacs-query-functions. Siehe Emacs- Fehler # 10794 . (Und Bug # 11181 , obwohl nicht direkt verwandt, ist auch hier relevant.)
Drew
6

Eine gebräuchliche Alternative ist das Aufheben der Bindung des Schlüssels mit

(global-unset-key (kbd "C-x C-c"))

Sie können jederzeit über beenden M-x save-buffers-kill-terminal

unperson325680
quelle
6

Ich benutze dies, was in allen Emacs-Versionen funktioniert:

(add-hook 'kill-emacs-query-functions
          (lambda () (y-or-n-p "Do you really want to exit Emacs? "))
          'append)
Drew
quelle
3
Es wäre schön zu erklären, wie sich das von der Einstellung unterscheidet confirm-kill-emacs. IIUC, der Unterschied ist, dass c-k-eignoriert wird, wenn modifizierte Puffer (die bereits eine Bestätigung verlangen ) oder aktive Prozesse (auch eine Bestätigung verlangen ) vorhanden sind.
YoungFrog
@YoungFrog: Was du sagst ist wahr, aber nur für Emacs 25, nicht früher. Und confirm-kill-emacsexistiert nicht vor Emacs 21.
Drew