konfirmasi setelah Cx Cc sebelum keluar dari Emacs

Jawaban:

22

Setel variabel confirm-kill-emacske sesuatu seperti yes-or-no-p.

legoscia
sumber
2
Terima kasih! Sayang sekali tidak disebutkan dalam save-buffers-kill-terminaldokumentasi ...
imz - Ivan Zakharyaschev
1
Itu hanya disebutkan untuk save-buffers-kill-emacs, yang digunakan untuk mengikat C-x C-chingga 23.1. Itu harus diperbarui, tampaknya.
legoscia
1
@ imz - IvanZakharyaschev: Ya; demikian juga kill-emacs-query-functions. Lihat bug Emacs # 10794 . (Dan bug # 11181 , meskipun tidak terkait langsung, juga relevan di sini.)
Drew
6

Alternatif umum adalah melepaskan ikatan menggunakan kunci

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

Anda selalu dapat berhenti melalui M-x save-buffers-kill-terminal

nperson325681
sumber
6

Saya menggunakan ini, yang workd di semua versi Emacs:

(add-hook 'kill-emacs-query-functions
          (lambda () (y-or-n-p "Do you really want to exit Emacs? "))
          'append)
Drew
sumber
3
Akan menyenangkan untuk menjelaskan bagaimana itu berbeda dari pengaturan confirm-kill-emacs. IIUC, perbedaannya adalah c-k-ediabaikan jika ada buffer yang dimodifikasi (yang sudah meminta konfirmasi) atau proses aktif (juga meminta konfirmasi).
YoungFrog
@YoungFrog: Apa yang Anda katakan itu benar, tetapi hanya untuk Emacs 25, tidak lebih awal. Dan confirm-kill-emacstidak ada sebelum Emacs 21.
Drew