"<#\\(part encrypt\\|secure.*mode=.*encrypt>\\)"
"Regular expression matching mml tags indicating encryption of part or message.")
-(defvar notmuch-draft-id nil
+(defvar-local notmuch-draft-id nil
"Message-id of the most recent saved draft of this message.")
-(make-variable-buffer-local 'notmuch-draft-id)
(defun notmuch-draft--mark-deleted ()
"Tag the last saved draft deleted.
(notmuch-tag notmuch-draft-id '("+deleted"))))
(defun notmuch-draft-quote-some-mml ()
- "Quote the mml tags in `notmuch-draft-quoted-tags`."
+ "Quote the mml tags in `notmuch-draft-quoted-tags'."
(save-excursion
;; First we deal with any secure tag separately.
(message-goto-body)
(insert "!"))))))
(defun notmuch-draft-unquote-some-mml ()
- "Unquote the mml tags in `notmuch-draft-quoted-tags`."
+ "Unquote the mml tags in `notmuch-draft-quoted-tags'."
(save-excursion
(when notmuch-draft-quoted-tags
(let ((re (concat "<#!+/?\\("
`notmuch-draft-save-plaintext' controls the behaviour."
(cl-case notmuch-draft-save-plaintext
- ((ask)
- (unless (yes-or-no-p
- "(Customize `notmuch-draft-save-plaintext' to avoid this warning)
+ ((ask)
+ (unless (yes-or-no-p
+ "(Customize `notmuch-draft-save-plaintext' to avoid this warning)
This message contains mml tags that suggest it is intended to be encrypted.
Really save and index an unencrypted copy? ")
- (error "Save aborted")))
- ((nil)
- (error "Refusing to save draft with encryption tags (see `%s')"
- 'notmuch-draft-save-plaintext))
- ((t)
- (ignore))))
+ (error "Save aborted")))
+ ((nil)
+ (error "Refusing to save draft with encryption tags (see `%s')"
+ 'notmuch-draft-save-plaintext))
+ ((t)
+ (ignore))))
(defun notmuch-draft--make-message-id ()
;; message-make-message-id gives the id inside a "<" ">" pair,
"Save the current draft message in the notmuch database.
This saves the current message in the database with tags
-`notmuch-draft-tags` (in addition to any default tags
+`notmuch-draft-tags' (in addition to any default tags
applied to newly inserted messages)."
(interactive)
(when (notmuch-draft--has-encryption-tag)
;; so that it is easier to search for the message, and the
;; latter so we have a way of accessing the saved message (for
;; example to delete it at a later time). We check that the
- ;; user has these in `message-deletable-headers` (the default)
+ ;; user has these in `message-deletable-headers' (the default)
;; as otherwise they are doing something strange and we
;; shouldn't interfere. Note, since we are doing this in a new
;; buffer we don't change the version in the compose buffer.
(draft (equal tags (notmuch-update-tags tags notmuch-draft-tags))))
(when (or draft
(yes-or-no-p "Message does not appear to be a draft: edit as new? "))
- (switch-to-buffer (get-buffer-create (concat "*notmuch-draft-" id "*")))
+ (pop-to-buffer-same-window
+ (get-buffer-create (concat "*notmuch-draft-" id "*")))
(setq buffer-read-only nil)
(erase-buffer)
(let ((coding-system-for-read 'no-conversion))
;; If the resumed message was a draft then set the draft
;; message-id so that we can delete the current saved draft if the
;; message is resaved or sent.
- (setq notmuch-draft-id (when draft id)))))
+ (setq notmuch-draft-id (and draft id)))))
(add-hook 'message-send-hook 'notmuch-draft--mark-deleted)