]> git.eshelyaron.com Git - emacs.git/commitdiff
net/browse-url.el (browse-url-mail): Insert body part of mailto url in mail buffer...
authorKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 10 Nov 2010 00:02:44 +0000 (00:02 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 10 Nov 2010 00:02:44 +0000 (00:02 +0000)
lisp/ChangeLog
lisp/net/browse-url.el

index fa3bdfc378083fa729f832b9b7048ee6ba1dd3d7..a6107edc716672936f323e1058e111ff1a34d1be 100644 (file)
@@ -1,3 +1,9 @@
+2010-11-10  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * net/browse-url.el (browse-url-mail): Insert body part of mailto url
+       in mail buffer; make yank-action always a command that yanks original
+       buffer.
+
 2010-11-09  Glenn Morris  <rgm@gnu.org>
 
        * progmodes/tcl.el (tcl-hairy-scan-for-comment): Doc fix.
index 45dde6dba3c39f4cbe083fed44f5d86a2d9bfaa3..c89d27fbf0c18075fd5ebe9b8d305bb94c575779 100644 (file)
@@ -1479,20 +1479,27 @@ used instead of `browse-url-new-window-flag'."
           (to (assoc "To" alist))
           (subject (assoc "Subject" alist))
           (body (assoc "Body" alist))
-          (rest (delete to (delete subject (delete body alist))))
+          (rest (delq to (delq subject (delq body alist))))
           (to (cdr to))
           (subject (cdr subject))
           (body (cdr body))
           (mail-citation-hook (unless body mail-citation-hook)))
       (if (browse-url-maybe-new-window new-window)
          (compose-mail-other-window to subject rest nil
-                                    (if body
-                                        (list 'insert body)
-                                      (list 'insert-buffer (current-buffer))))
+                                    (list 'insert-buffer (current-buffer)))
        (compose-mail to subject rest nil nil
-                     (if body
-                         (list 'insert body)
-                       (list 'insert-buffer (current-buffer))))))))
+                     (list 'insert-buffer (current-buffer))))
+      (when body
+       (goto-char (point-min))
+       (unless (or (search-forward (concat "\n" mail-header-separator "\n")
+                                   nil 'move)
+                   (bolp))
+         (insert "\n"))
+       (goto-char (prog1
+                      (point)
+                    (insert (replace-regexp-in-string "\r\n" "\n" body))
+                    (unless (bolp)
+                      (insert "\n"))))))))
 
 ;; --- Random browser ---