From: Lars Ingebrigtsen Date: Sun, 14 Feb 2016 07:21:56 +0000 (+1100) Subject: * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias. X-Git-Tag: emacs-26.0.90~2548 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d9bf0c1c6a6ce90aa2edbb911fb58b26975d423b;p=emacs.git * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias. --- diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el index 51fcd8bcd5b..89dc608cc88 100644 --- a/lisp/gnus/mm-decode.el +++ b/lisp/gnus/mm-decode.el @@ -1806,7 +1806,7 @@ If RECURSIVE, search recursively." nil t)) (not (eq charset 'ascii))) (decode-coding-string (buffer-string) charset) - (mm-string-as-multibyte (buffer-string))) + (string-as-multibyte (buffer-string))) (erase-buffer) (mm-enable-multibyte))) (goto-char (point-min)) diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el index 234ad3d3121..c0f8742504e 100644 --- a/lisp/gnus/mm-util.el +++ b/lisp/gnus/mm-util.el @@ -29,39 +29,6 @@ (defvar mm-mime-mule-charset-alist) -;; Emulate functions that are not available in every (X)Emacs version. -;; The name of a function is prefixed with mm-, like `mm-char-int' for -;; `char-int' that is a native XEmacs function, not available in Emacs. -;; Gnus programs all should use mm- functions, not the original ones. -(eval-and-compile - (mapc - (lambda (elem) - (let ((nfunc (intern (format "mm-%s" (car elem))))) - (if (fboundp (car elem)) - (defalias nfunc (car elem)) - (defalias nfunc (cdr elem))))) - `( - ;; string-as-multibyte often doesn't really do what you think it does. - ;; Example: - ;; (aref (string-as-multibyte "\201") 0) -> 129 (aka ?\201) - ;; (aref (string-as-multibyte "\300") 0) -> 192 (aka ?\300) - ;; (aref (string-as-multibyte "\300\201") 0) -> 192 (aka ?\300) - ;; (aref (string-as-multibyte "\300\201") 1) -> 129 (aka ?\201) - ;; but - ;; (aref (string-as-multibyte "\201\300") 0) -> 2240 - ;; (aref (string-as-multibyte "\201\300") 1) -> - ;; Better use string-to-multibyte or encode-coding-string. - ;; If you really need string-as-multibyte somewhere it's usually - ;; because you're using the internal emacs-mule representation (maybe - ;; because you're using string-as-unibyte somewhere), which is - ;; generally a problem in itself. - ;; Here is an approximate equivalence table to help think about it: - ;; (string-as-multibyte s) ~= (decode-coding-string s 'emacs-mule) - ;; (string-to-multibyte s) ~= (decode-coding-string s 'binary) - ;; (string-make-multibyte s) ~= (decode-coding-string s locale-coding-system) - ;; `string-as-multibyte' is an Emacs function, not available in XEmacs. - (string-as-multibyte . identity)))) - (defun mm-ucs-to-char (codepoint) "Convert Unicode codepoint to character." (or (decode-char 'ucs codepoint) ?#)) diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index f9d6cd877b6..97cc87d06e3 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -664,7 +664,7 @@ be \"related\" or \"alternate\"." (if (setq encoding (cdr (assq 'encoding cont))) (setq encoding (intern (downcase encoding)))) (setq encoding (mm-encode-buffer type encoding) - coded (mm-string-as-multibyte (buffer-string)))) + coded (string-as-multibyte (buffer-string)))) (mml-insert-mime-headers cont type charset encoding nil) (insert "\n" coded)))) ((eq (car cont) 'external) diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el index 1af04fd3543..94589e1734d 100644 --- a/lisp/gnus/nnmail.el +++ b/lisp/gnus/nnmail.el @@ -1245,7 +1245,7 @@ Return the number of characters in the body." (insert (format "Xref: %s" (system-name))) (while group-alist (insert (if (mm-multibyte-p) - (mm-string-as-multibyte + (string-as-multibyte (format " %s:%d" (caar group-alist) (cdar group-alist))) (string-as-unibyte (format " %s:%d" (caar group-alist) (cdar group-alist)))))