New variable.
(utf-translate-cjk-set-unicode-range): New function.
(utf-translate-cjk-unicode-range): Make it customizable.
(utf-8-post-read-conversion): Use
utf-translate-cjk-unicode-range-string.
utilize key-translation-map instead of minor mode map.
(encoded-kbd-iso2022-non-ascii-map): Delete it.
(encoded-kbd-coding, encoded-kbd-handle-8bit): Delete them.
(encoded-kbd-last-key): New function.
(encoded-kbd-iso2022-single-shift): New function.
(encoded-kbd-iso2022-designation)
(encoded-kbd-self-insert-iso2022-7bit)
(encoded-kbd-self-insert-iso2022-8bit)
(encoded-kbd-self-insert-sjis, encoded-kbd-self-insert-big5)
(encoded-kbd-self-insert-ccl): Make them suitable for bindings in
key-translation-map.
(encoded-kbd-setup-keymap): Setup key-translation-map.
(saved-key-translation-map): New variable.
(encoded-kbd-mode): Save/restore key-translation-map. Adjusted
for the change of encoded-kbd-setup-keymap.
pair correctly. Call ccl-mule-utf-untrans for untranslable chars.
(utf-16le-decode-loop): Set r5 to -1 before loop.
(utf-16be-decode-loop): Likewise.
(ccl-decode-mule-utf-16le): Add EOF processing block.
(ccl-decode-mule-utf-16be): Likewise.
(ccl-decode-mule-utf-16le-with-signature): Likewise.
(ccl-decode-mule-utf-16be-with-signature): Likewise.
(ccl-decode-mule-utf-16): Likewise. Set r5 to -1 initially.
(ccl-mule-utf-16-encode-untrans): New CCL.
(utf-16-decode-to-ucs): Handle pre-read character.
(utf-16le-encode-loop): Handle surrogate pair.
(utf-16be-encode-loop): Likewise.
(ccl-encode-mule-utf-16le-with-signature): Adjusted for the change
of utf-16le-encode-loop.
(ccl-encode-mule-utf-16be-with-signature): Adjusted for the change
of utf-16be-encode-loop.
(mule-utf-16-post-read-conversion): Call
utf-8-post-read-conversion at first.
(mule-utf-16[{le|be}], mule-utf-16{le|be}-with-signature): Include
CJK charsets in safe-charsets if utf-translate-cjk-mode is on.
Add post-read-conversion and pre-write-conversion.
variable.
(utf-translate-cjk-unicode-range): New variable.
(utf-translate-cjk-load-tables): New function.
(utf-lookup-subst-table-for-decode): New function.
(utf-lookup-subst-table-for-encode): New function.
(utf-translate-cjk-mode): Init-value changed to t. Don't load
tables here. Update safe-charsets of utf-* coding systems.
(ccl-mule-utf-untrans): New CCL.
(ccl-decode-mule-utf-8): Call ccl-mule-utf-untrans. Use `repeat'
at end of each branch.
(ccl-mule-utf-8-encode-untrans): New CCL.
(ccl-encode-mule-utf-8): Call ccl-mule-utf-8-encode-untrans.
(ccl-untranslated-to-ucs): Handle 2-byte encoding. Set r1 to the
length of encoding. Don't return r0.
(utf-8-compose): New arg hash-table. Handle 2-byte encoding.
(utf-8-post-read-conversion): Narrow to region properly. If
utf-translate-cjk-mode is on, load tables if necessary. Call
utf-8-compose with hash-table arg if necessary. Call
XXX-compose-region instead of XXX-post-read-convesion.
(utf-8-pre-write-conversion): New function.
(mule-utf-8): Include CJK charsets in safe-charsets if
utf-translate-cjk-mode is on. Add pre-write-conversion.