* gnus.el: Add autoloads for `gnus-summary-digest-post-forward' and
[elisp/gnus.git-] / lisp / rfc2047.el
index d744b3d..8214e20 100644 (file)
@@ -73,6 +73,8 @@ The values can be:
     (iso-2022-jp . B)
     (iso-2022-kr . B)
     (gb2312 . B)
+    (big5 . B)
+    (cn-big5 . B)
     (cn-gb . B)
     (cn-gb-2312 . B)
     (euc-kr . B)
@@ -277,6 +279,7 @@ The buffer may be narrowed."
 (defun rfc2047-encode (b e charset)
   "Encode the word in the region B to E with CHARSET."
   (let* ((mime-charset (mm-mime-charset charset))
+        (cs (mm-charset-to-coding-system mime-charset))
         (encoding (or (cdr (assq mime-charset
                                  rfc2047-charset-encoding-alist))
                       'B))
@@ -294,8 +297,8 @@ The buffer may be narrowed."
          (unless (eobp)
            (insert "\n"))))
       (if (and (mm-multibyte-p)
-              (mm-coding-system-p mime-charset))
-         (mm-encode-coding-region (point-min) (point-max) mime-charset))
+              (mm-coding-system-p cs))
+         (mm-encode-coding-region (point-min) (point-max) cs))
       (funcall (cdr (assq encoding rfc2047-encoding-function-alist))
               (point-min) (point-max))
       (goto-char (point-min))
@@ -410,7 +413,9 @@ The buffer may be narrowed."
                   (gnus-point-at-bol))))
        (while alist
          (when (looking-at (caar alist))
-           (quoted-printable-encode-region b e nil (cdar alist))
+           (mm-with-unibyte-current-buffer-mule4
+             (quoted-printable-encode-region 
+              (point-min) (point-max) nil (cdar alist)))
            (subst-char-in-region (point-min) (point-max) ?  ?_)
            (setq alist nil))
          (pop alist))