+(defsubst wl-draft-strip-subject-regexp (subject regexp)
+ "Remove REGEXP from SUBJECT string."
+ (if (string-match regexp subject)
+ (substring subject (match-end 0))
+ subject))
+
+(defun wl-draft-forward-make-subject (original-subject)
+ "Generate subject string for forwarding."
+ (cond ((functionp wl-forward-subject-prefix)
+ (concat (funcall wl-forward-subject-prefix)
+ original-subject))
+ ((stringp wl-forward-subject-prefix)
+ (concat wl-forward-subject-prefix
+ (wl-draft-strip-subject-regexp
+ (or original-subject "")
+ wl-subject-forward-prefix-regexp)))
+ (t original-subject)))
+
+(defun wl-draft-reply-make-subject (original-subject)
+ "Generate subject string for replying."
+ (cond ((functionp wl-reply-subject-prefix)
+ (concat (funcall wl-reply-subject-prefix)
+ original-subject))
+ ((stringp wl-reply-subject-prefix)
+ (concat wl-reply-subject-prefix
+ (wl-draft-strip-subject-regexp
+ (or original-subject "")
+ wl-subject-re-prefix-regexp)))
+ (t original-subject)))
+
+(defun wl-draft-forward (original-subject summary-buf &optional number)
+ (let (references parent-folder subject)