К сожалению, я думаю, вам нужно либо перепривязать q, либо настроить источник ediff-quit
. Как видно в источнике ediff-quit
подсказка всегда бывает.
(defun ediff-quit (reverse-default-keep-variants)
"Finish an Ediff session and exit Ediff.
Unselects the selected difference, if any, restores the read-only and modified
flags of the compared file buffers, kills Ediff buffers for this session
\(but not buffers A, B, C\).
If `ediff-keep-variants' is nil, the user will be asked whether the buffers
containing the variants should be removed \(if they haven't been modified\).
If it is t, they will be preserved unconditionally. A prefix argument,
temporarily reverses the meaning of this variable."
(interactive "P")
(ediff-barf-if-not-control-buffer)
(let ((ctl-buf (current-buffer))
(ctl-frm (selected-frame))
(minibuffer-auto-raise t))
(if (y-or-n-p (format "Quit this Ediff session%s? "
(if (ediff-buffer-live-p ediff-meta-buffer)
" & show containing session group" "")))
(progn
(message "")
(set-buffer ctl-buf)
(ediff-really-quit reverse-default-keep-variants))
(select-frame ctl-frm)
(raise-frame ctl-frm)
(message ""))))
Я бы посоветовал переопределить ediff-quit
в вашем .emacs
и отправить патч к источнику, добавив переменную настройки.
Помните, что источник реализации в emacs всегда находится в нескольких нажатиях клавиш. Предполагая, что источники elisp установлены, введите C-h f, введите имя функции и перейдите по ссылке, где оно определено.