# HG changeset patch # User Kenichi Handa # Date 1031127340 0 # Node ID 2af8e323b4493c901e68ee6e66d410aeedc5b363 # Parent 152238c09c6cace2731869022d11cb5508d40780 (decode-char): Translate a character by utf-8-translation-table-for-decode only when utf-8-fragment-on-decoding is non-nil. diff -r 152238c09c6c -r 2af8e323b449 lisp/international/mule.el --- a/lisp/international/mule.el Wed Sep 04 06:21:03 2002 +0000 +++ b/lisp/international/mule.el Wed Sep 04 08:15:40 2002 +0000 @@ -308,7 +308,8 @@ 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 char table `utf-8-translation-table-for-decode'. +translated through the char table `utf-8-translation-table-for-decode' +if the variable `utf-8-fragment-on-decoding' 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." @@ -331,7 +332,9 @@ (setq code-point (- code-point #xe000)) (make-char 'mule-unicode-e000-ffff (+ (/ code-point 96) 32) (+ (% code-point 96) 32)))))) - (if (and c (aref utf-8-translation-table-for-decode c)) + (if (and c + utf-8-fragment-on-decoding + (aref utf-8-translation-table-for-decode c)) (aref utf-8-translation-table-for-decode c) c))))) @@ -843,6 +846,11 @@ In the former case, the integer value is a valid byte code. In the latter case, the integers specify the range of valid byte codes. + o composition (meaningful only when TYPE is 0 or 2) + + If the value is non-nil, the coding system preserves information of + composition. + These properties are set in PLIST, a property list. This function also sets properties `coding-category' and `alias-coding-systems' automatically.