diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index bf62b656..b80e5976 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -142,6 +142,16 @@ to `notmuch-mua-send-hook'." :type 'regexp :group 'notmuch-send) +(defcustom notmuch-mua-subject-regexp + "[[:blank:]]*$" + "Message subject indicating that something may be amiss. +By default, this checks for empty subject lines. + +This is not used unless `notmuch-mua-subject-check' is added to +`notmuch-mua-send-hook'." + :type 'regexp + :group 'notmuch-send) + ;;; Various functions (defun notmuch-mua-attachment-check () @@ -179,6 +189,19 @@ Typically this is added to `notmuch-mua-send-hook'." ;; ...signal an error. (error "Missing attachment"))) +(defun notmuch-mua-subject-check () + "Signal an error if the subject seems amiss. +More precisely, if the subject conforms to +`notmuch-mua-subject-regexp'. + +Typically this is added to `notmuch-mua-send-hook'." + (or (save-excursion + (message-goto-subject) + (message-beginning-of-header t) + (not (looking-at-p notmuch-mua-subject-regexp))) + (y-or-n-p "Subject may be erroneous – is that okay?") + (error "Erroneous subject"))) + (defun notmuch-mua-get-switch-function () "Get a switch function according to `notmuch-mua-compose-in'." (pcase notmuch-mua-compose-in