diff lisp/gnus/mml.el @ 90294:c5406394f567

Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-13 Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 43-57) - Update from CVS - Merge from erc--emacs--0 - Make constrain-to-field notice overlays - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 18-21) - Update from CVS - Merge from emacs--devo--0
author Miles Bader <miles@gnu.org>
date Wed, 08 Feb 2006 04:26:44 +0000
parents d6f8fe3307c8 d9dde5b81e71
children 5754737d1e04
line wrap: on
line diff
--- a/lisp/gnus/mml.el	Sun Feb 05 02:46:54 2006 +0000
+++ b/lisp/gnus/mml.el	Wed Feb 08 04:26:44 2006 +0000
@@ -663,10 +663,10 @@
 	 "Can't encode a part with several charsets"))
       (insert "Content-Type: " type)
       (when charset
-	(insert "; " (mail-header-encode-parameter
-		      "charset" (symbol-name charset))))
+	(mml-insert-parameter
+	 (mail-header-encode-parameter "charset" (symbol-name charset))))
       (when flowed
-	(insert "; format=flowed"))
+	(mml-insert-parameter "format=flowed"))
       (when parameters
 	(mml-insert-parameter-string
 	 cont mml-content-type-parameters))
@@ -686,8 +686,11 @@
     (unless (eq encoding '7bit)
       (insert (format "Content-Transfer-Encoding: %s\n" encoding)))
     (when (setq description (cdr (assq 'description cont)))
-      (insert "Content-Description: "
-	      (mail-encode-encoded-word-string description) "\n"))))
+      (insert "Content-Description: ")
+      (setq description (prog1
+			    (point)
+			  (insert description "\n")))
+      (mail-encode-encoded-word-region description (point)))))
 
 (defun mml-parameter-string (cont types)
   (let ((string "")
@@ -840,14 +843,20 @@
 
 (defun mml-insert-parameter (&rest parameters)
   "Insert PARAMETERS in a nice way."
-  (dolist (param parameters)
-    (insert ";")
-    (let ((point (point)))
+  (let (start end)
+    (dolist (param parameters)
+      (insert ";")
+      (setq start (point))
       (insert " " param)
-      (when (> (current-column) 71)
-	(goto-char point)
-	(insert "\n ")
-	(end-of-line)))))
+      (setq end (point))
+      (goto-char start)
+      (end-of-line)
+      (if (> (current-column) 76)
+	  (progn
+	    (goto-char start)
+	    (insert "\n")
+	    (goto-char (1+ end)))
+	(goto-char end)))))
 
 ;;;
 ;;; Mode for inserting and editing MML forms