Synch to No Gnus 200411282151.
[elisp/gnus.git-] / lisp / mm-util.el
index bf208cc..6bd8af9 100644 (file)
@@ -163,6 +163,10 @@ system object in XEmacs."
               (mm-coding-system-p 'cp1250))
          '((windows-1250 . cp1250)))
     ;; A Microsoft misunderstanding.
+    ,@(if (and (not (mm-coding-system-p 'unicode))
+              (mm-coding-system-p 'utf-16-le))
+         '((unicode . utf-16-le)))
+    ;; A Microsoft misunderstanding.
     ,@(unless (mm-coding-system-p 'ks_c_5601-1987)
        (if (mm-coding-system-p 'cp949)
            '((ks_c_5601-1987 . cp949))
@@ -270,9 +274,10 @@ system object in XEmacs."
 This function will run when the `un-define' module is loaded under
 XEmacs, and fill the `utf-8' entry in `mm-mime-mule-charset-alist'
 with Mule charsets.  It is completely useless for Emacs."
-  (setq after-load-alist
-       (delete '("un-define" (mm-enrich-utf-8-by-mule-ucs))
-               after-load-alist))
+  (unless (cdr (delete '(mm-enrich-utf-8-by-mule-ucs)
+                      (assoc "un-define" after-load-alist)))
+    (setq after-load-alist
+         (delete '("un-define") after-load-alist)))
   (when (boundp 'unicode-basic-translation-charset-order-list)
     (condition-case nil
        (let ((val (delq
@@ -340,14 +345,17 @@ Valid elements include:
   (if (boundp 'current-language-environment)
       (let ((lang (symbol-value 'current-language-environment)))
        (cond ((string= lang "Japanese")
-              ;; Japanese users may prefer iso-2022-jp to shift_jis.
-              '(iso-2022-jp iso-2022-jp-2 shift_jis iso-8859-1 utf-8)))))
+              ;; Japanese users prefer iso-2022-jp to euc-japan or
+              ;; shift_jis, however iso-8859-1 should be used when
+              ;; there are only ASCII text and Latin-1 characters.
+              '(iso-8859-1 iso-2022-jp iso-2022-jp-2 shift_jis utf-8)))))
   "Preferred coding systems for encoding outgoing messages.
 
 More than one suitable coding system may be found for some text.
 By default, the coding system with the highest priority is used
 to encode outgoing messages (see `sort-coding-systems').  If this
 variable is set, it overrides the default priority."
+  :version "21.2"
   :type '(repeat (symbol :tag "Coding system"))
   :group 'mime)