Bunuh buffer proses tanpa konfirmasi?

17

Saya sudah C-x C-kterikat kill-this-buffer. Tetapi ketika saya masuk ke buffer yang menjalankan proses seperti Python atau MySQL, jika saya C-x C-kbertanya

Buffer "* Python *" memiliki proses yang berjalan; bunuh saja (y atau n)?

Bagaimana saya bisa membunuh buffer proses tanpa konfirmasi?

ChillarAnand
sumber

Jawaban:

17

Hapus fungsi yang sesuai dari variabel yang relevan:

(setq kill-buffer-query-functions (delq 'process-kill-buffer-query-function kill-buffer-query-functions))

Bagaimana saya menemukan ini?

kill-this-buffermenggunakan kill-bufferinternal, yang mereferensikan variabel kill-buffer-query-functions.

YoungFrog
sumber
Saya memasukkan baris ini ke file startup saya dan tidak ada kesalahan yang ditampilkan di buffer pesan. Ketika saya memiliki proses skema berjalan (dimulai dengan run-scheme) ketika keluar masih muncul sebuah dialog dan bertanya "Proses aktif ada; bunuh mereka dan keluar bagaimanapun?".
user905686
@ user905686 Itu pertanyaan yang diajukan save-buffers-kill-emacsdan tidak ada hubungannya dengan membunuh buffer.
YoungFrog
Sekarang saya melihat bahwa itu bekerja hanya untuk membunuh buffer. Saya pikir keluar emacs akan mencoba untuk membunuh buffer dan oleh karena itu dialog konfirmasi memiliki asal yang sama. Saya mengajukan pertanyaan baru: Keluar dari emacs tanpa konfirmasi untuk menghentikan proses yang sedang berjalan .
user905686
5

Atau yang lebih sederhana adalah:

(setq kill-buffer-query-functions nil)

Terinspirasi dari konfigurasi abo-abo

azzamsa
sumber