From 9f7c6da9c5bfd16c1b52a25c39731edb13fecf6c Mon Sep 17 00:00:00 2001 From: Gerd Moellmann Date: Fri, 24 Mar 2000 12:12:58 +0000 Subject: [PATCH] (rmail-confirm-expunge): New user-option. (rmail-expunge): Ask for confirmation depending on the setting of rmail-confirm-expunge. --- lisp/mail/rmail.el | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el index 1586f37b000..1aab4a4b4b2 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el @@ -218,6 +218,15 @@ and the value of the environment variable MAIL overrides it)." :type 'regexp :group 'rmail-files) +;;;###autoload +(defcustom rmail-confirm-expunge 'yes-or-no-p + "*Whether and how to ask for confirmation before expunging deleted messages." + :type '(choice (const :tag "No confirmation" nil) + (const :tag "Confirm with y-or-n-p" y-or-n-p) + (const :tag "Confirm with yes-or-no-p" yes-or-no-p)) + :version "21.1" + :group 'rmail-files) + ;;;###autoload (defvar rmail-mode-hook nil "List of functions to call when Rmail is invoked.") @@ -2674,10 +2683,13 @@ Deleted messages stay in the file until the \\[rmail-expunge] command is given." (defun rmail-expunge () "Erase deleted messages from Rmail file and summary buffer." (interactive) - (rmail-only-expunge) - (if (rmail-summary-exists) - (rmail-select-summary - (rmail-update-summary)))) + (when (or (null rmail-confirm-expunge) + (funcall rmail-confirm-expunge + "Erase deleted messages from Rmail file? ")) + (rmail-only-expunge) + (if (rmail-summary-exists) + (rmail-select-summary + (rmail-update-summary))))) ;;;; *** Rmail Mailing Commands *** -- 2.39.5