aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa2000-04-03 04:05:41 +0000
committerKenichi Handa2000-04-03 04:05:41 +0000
commit993b2a7dd4fdb4960ac5a022eac0307c6881211c (patch)
tree2fca80863f47a2b60e4f7726f1684a0b85f4963d
parent14c04384b50ece1d25b3560398b37bc7ef9ae1cb (diff)
downloademacs-993b2a7dd4fdb4960ac5a022eac0307c6881211c.tar.gz
emacs-993b2a7dd4fdb4960ac5a022eac0307c6881211c.zip
(encoded-string-description):
Rewritten. Try pretty description for ISO 2022 escape sequences only if CODING-SYSTEM is based on ISO 2022.
-rw-r--r--lisp/international/mule-cmds.el24
1 files changed, 7 insertions, 17 deletions
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index 4193e81030d..c575a142364 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -1815,23 +1815,13 @@ It can be retrieved with `(get-char-code-property CHAR PROPNAME)'."
1815(defun encoded-string-description (str coding-system) 1815(defun encoded-string-description (str coding-system)
1816 "Return a pretty description of STR that is encoded by CODING-SYSTEM." 1816 "Return a pretty description of STR that is encoded by CODING-SYSTEM."
1817 (setq str (string-as-unibyte str)) 1817 (setq str (string-as-unibyte str))
1818 (let ((char (aref str 0)) 1818 (mapconcat
1819 desc) 1819 (if (eq (coding-system-type coding-system) 2)
1820 (when (< char 128) 1820 ;; Try to get a pretty description for ISO 2022 escape sequences.
1821 (setq desc (or (cdr (assq char iso-2022-control-alist)) 1821 (function (lambda (x) (or (cdr (assq x iso-2022-control-alist))
1822 (char-to-string char))) 1822 (format "%02X" x))))
1823 (let ((i 1) 1823 (function (lambda (x) (format "0x%02x" x))))
1824 (len (length str))) 1824 str " "))
1825 (while (< i len)
1826 (setq char (aref str i))
1827 (if (>= char 128)
1828 (setq desc nil i len)
1829 (setq desc (concat desc " "
1830 (or (cdr (assq char iso-2022-control-alist))
1831 (char-to-string char)))
1832 i (1+ i))))))
1833 (or desc
1834 (mapconcat (function (lambda (x) (format "0x%02x" x))) str " "))))
1835 1825
1836(defun encode-coding-char (char coding-system) 1826(defun encode-coding-char (char coding-system)
1837 "Encode CHAR by CODING-SYSTEM and return the resulting string. 1827 "Encode CHAR by CODING-SYSTEM and return the resulting string.