* mu4e-compose: invoke mu4e-compose-mode only when the message is complete;

this allows for more useful mu4e-compose-mode hooks
This commit is contained in:
djcb
2012-05-10 17:09:57 +03:00
parent 9d846e16bc
commit a118c125b5

View File

@ -487,14 +487,14 @@ or `mu4e~compose-newmsg-construct'. The editing buffer is using
Gnus' `message-mode'." Gnus' `message-mode'."
(unless mu4e-maildir (error "mu4e-maildir not set")) (unless mu4e-maildir (error "mu4e-maildir not set"))
(unless mu4e-drafts-folder (error "mu4e-drafts-folder not set")) (unless mu4e-drafts-folder (error "mu4e-drafts-folder not set"))
(let ((draft (let ((inhibit-read-only t)
(draft
(if (member compose-type '(reply forward new)) (if (member compose-type '(reply forward new))
(mu4e~compose-open-new-draft-file compose-type original-msg) (mu4e~compose-open-new-draft-file compose-type original-msg)
(if (eq compose-type 'edit) (if (eq compose-type 'edit)
(plist-get original-msg :path) (plist-get original-msg :path)
(error "unsupported compose-type %S" compose-type))))) (error "unsupported compose-type %S" compose-type)))))
(find-file draft) (find-file draft)
(mu4e-compose-mode)
;; insert mail-header-separator, which is needed by message mode to separate ;; insert mail-header-separator, which is needed by message mode to separate
;; headers and body. will be removed before saving to disk ;; headers and body. will be removed before saving to disk
(mu4e~compose-insert-mail-header-separator) (mu4e~compose-insert-mail-header-separator)
@ -529,6 +529,10 @@ Gnus' `message-mode'."
;; buffer is not user-modified yet ;; buffer is not user-modified yet
(mu4e~compose-set-friendly-buffer-name compose-type) (mu4e~compose-set-friendly-buffer-name compose-type)
(set-buffer-modified-p nil) (set-buffer-modified-p nil)
;; set compose mode -- so now hooks can run
(mu4e-compose-mode)
;; now jump to some use positions, and start writing that mail! ;; now jump to some use positions, and start writing that mail!
(if (member compose-type '(new forward)) (if (member compose-type '(new forward))
(message-goto-to) (message-goto-to)