(condition-case nil
(progn
(when wl-draft-send-confirm-with-preview
- (let (wl-draft-send-hook)
+ (let (wl-draft-send-hook
+ (pgg-decrypt-automatically nil))
(wl-draft-preview-message)))
(save-excursion
(goto-char (point-min)) ; to show recipients in header
(goto-char delimline)
(goto-char (point-min))
(if (search-forward "\n\n" nil t)
- (delete-backward-char 1)
+ (delete-char -1)
(goto-char (point-max))))
(wl-draft-check-new-line)
(put-text-property (point)
(goto-char (point-min))
(search-forward mail-header-separator)
(forward-line 1)
- (insert body-text))
+ (insert body-text)
+ (or (bolp) (insert "\n")))
;;;###autoload
(defun wl-user-agent-compose (&optional to subject other-headers continue
switch-function yank-action
- send-actions)
+ send-actions return-action)
"Support the `compose-mail' interface for wl.
Only support for TO, SUBJECT, and OTHER-HEADERS has been implemented.
-Support for CONTINUE, YANK-ACTION, and SEND-ACTIONS has not
+Support for CONTINUE, YANK-ACTION, SEND-ACTIONS and RETURN-ACTION has not
been implemented yet. Partial support for SWITCH-FUNCTION now supported."
(unless (featurep 'wl)
;; to be necessary to protect the values used w/in
(let ((wl-user-agent-headers-and-body-alist other-headers)
(wl-draft-use-frame (eq switch-function 'switch-to-buffer-other-frame))
- (wl-draft-buffer-style switch-function))
+ (wl-draft-buffer-style switch-function)
+ tem)
(if to
- (if (wl-string-match-assoc "to" wl-user-agent-headers-and-body-alist
- 'ignore-case)
- (setcdr
- (wl-string-match-assoc "to" wl-user-agent-headers-and-body-alist
- 'ignore-case)
- to)
+ (if (setq tem (wl-string-match-assoc
+ "\\`to\\'"
+ wl-user-agent-headers-and-body-alist
+ 'ignore-case))
+ (setcdr tem to)
(setq wl-user-agent-headers-and-body-alist
(cons (cons "to" to)
wl-user-agent-headers-and-body-alist))))
(if subject
- (if (wl-string-match-assoc "subject"
- wl-user-agent-headers-and-body-alist
- 'ignore-case)
- (setcdr
- (wl-string-match-assoc "subject"
- wl-user-agent-headers-and-body-alist
- 'ignore-case)
- subject)
+ (if (setq tem (wl-string-match-assoc
+ "\\`subject\\'"
+ wl-user-agent-headers-and-body-alist
+ 'ignore-case))
+ (setcdr tem subject)
(setq wl-user-agent-headers-and-body-alist
(cons (cons "subject" subject)
wl-user-agent-headers-and-body-alist))))
;; highlight headers (from wl-draft in wl-draft.el)
(wl-highlight-headers 'for-draft)
;; insert body
- (if (wl-string-match-assoc "body" wl-user-agent-headers-and-body-alist
- 'ignore-case)
- (wl-user-agent-insert-body
- (cdr (wl-string-match-assoc
- "body"
- wl-user-agent-headers-and-body-alist 'ignore-case)))))
+ (let ((body (wl-string-match-assoc "\\`body\\'"
+ wl-user-agent-headers-and-body-alist
+ 'ignore-case)))
+ (if body
+ (wl-user-agent-insert-body (cdr body)))))
t))
(defun wl-draft-setup-parent-flag (flag)