我从不想回答要求我保存更改的提示。
每当我关闭 Emacs 时,我都会被对话框和提示轰炸。我该如何避免它们并让 Emacs 自动保存所有未保存的更改?
另外,当我关闭单个缓冲区时,如何避免出现提示C-k并让 Emacs 自动保存更改?
答案1
为了避免退出 Emacs 时提示保存文件,您可以向 传递前缀参数C-x C-c
,即使用 退出C-u C-x C-c
。
或者,将以下代码添加到您的.emacs
文件中:
(global-set-key (kbd "C-x C-c")
#'(lambda ()
(interactive)
(save-buffers-kill-terminal t)))
使用通常的键绑定无需提示即可退出C-x C-c
。
不要忘记,在这些提示下,你可以按!
保存全部文件。
答案2
我想这就是你所要求的:
(defun kill-buffer-no-query (&optional buffer)
"Kill BUFFER without querying."
(interactive)
(unless buffer (setq buffer (current-buffer)))
(let ((kill-buffer-query-functions ())
(buffer-save-without-query t)
(buffer-modified-p (buffer-modified-p)))
(unwind-protect
(progn (set-buffer-modified-p nil)
(kill-buffer buffer))
(when (get-buffer buffer)
(set-buffer-modified-p buffer-modified-p)))))