summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorKenichi Handa <handa@m17n.org>2006-01-25 07:44:43 +0000
committerKenichi Handa <handa@m17n.org>2006-01-25 07:44:43 +0000
commitd1efee22033bff7c7d22d5eda93eee14e7796a8c (patch)
tree0cb4577bd9fe6fdc3cef734e6e591fca2b7ae369 /lisp
parent7347faa822b5ea177df5b2ed7a2b7d79194f0bcc (diff)
downloademacs-d1efee22033bff7c7d22d5eda93eee14e7796a8c.tar.gz
(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.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog18
-rw-r--r--lisp/international/mule.el16
2 files changed, 28 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 91de67fc48e..2dac117cf8b 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,21 @@
+2006-01-25 Kenichi Handa <handa@m17n.org>
+
+ * international/mule.el (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.
+
+2006-01-22 Kenichi Handa <handa@m17n.org>
+
+ * international/mule.el (make-subsidiary-coding-system): Reset
+ `coding-system-define-form' property of subsidiaries to nil.
+ Avoid duplicated entry in coding-system-alist.
+ (make-coding-system): Avoid duplicated entry in
+ coding-system-alist.
+ (define-coding-system-alias): Likewise.
+
2006-01-24 Luc Teirlinck <teirllm@auburn.edu>
* completion.el: Minor fixes in introductory comment.
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index 05c2b3aabc9..ba4fcef628b 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -315,14 +315,16 @@ Return nil if such a character is not supported.
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 @@ Return nil if CHAR is not included in CCS.
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 @@ code-point in CCS. Currently not supported and just ignored."
(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))