Mercurial > emacs
diff lisp/international/mule.el @ 68381:2ed18bf835e1
(decode-char): Avoid the overhead of
calling utf-lookup-subst-table-for-decode if
utf-translate-cjk-mode is nil.
(encode-char): Avoid the overhead of calling
utf-lookup-subst-table-for-encode if utf-translate-cjk-mode is
nil.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Wed, 25 Jan 2006 07:43:41 +0000 |
parents | a7c2303e1399 |
children | f4bef16905cb 9b150bc96d33 |
line wrap: on
line diff
--- a/lisp/international/mule.el Wed Jan 25 06:47:24 2006 +0000 +++ b/lisp/international/mule.el Wed Jan 25 07:43:41 2006 +0000 @@ -315,14 +315,16 @@ Currently the only supported coded character set is `ucs' (ISO/IEC 10646: Universal Multi-Octet Coded Character Set), and the result is translated through the translation-table named -`utf-translation-table-for-decode' or the translation-hash-table named -`utf-subst-table-for-decode'. +`utf-translation-table-for-decode', or through the +translation-hash-table named `utf-subst-table-for-decode' +\(if `utf-translate-cjk-mode' is non-nil). Optional argument RESTRICTION specifies a way to map the pair of CCS and CODE-POINT to a character. Currently not supported and just ignored." (cond ((eq ccs 'ucs) - (or (utf-lookup-subst-table-for-decode code-point) + (or (and utf-translate-cjk-mode + (utf-lookup-subst-table-for-decode code-point)) (let ((c (cond ((< code-point 160) code-point) @@ -352,8 +354,9 @@ Currently the only supported coded character set is `ucs' (ISO/IEC 10646: Universal Multi-Octet Coded Character Set), and CHAR is first translated through the translation-table named -`utf-translation-table-for-encode' or the translation-hash-table named -`utf-subst-table-for-encode'. +`utf-translation-table-for-encode', or through the +translation-hash-table named `utf-subst-table-for-encode' \(if +`utf-translate-cjk-mode' is non-nil). CHAR should be in one of these charsets: ascii, latin-iso8859-1, mule-unicode-0100-24ff, mule-unicode-2500-33ff, @@ -366,7 +369,8 @@ (charset (car split)) trans) (cond ((eq ccs 'ucs) - (or (utf-lookup-subst-table-for-encode char) + (or (and utf-translate-cjk-mode + (utf-lookup-subst-table-for-encode char)) (let ((table (get 'utf-translation-table-for-encode 'translation-table))) (setq trans (aref table char))