+2002-01-03 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
+
+ * mule-charset.c (Fmake_charset): Modify DOC-string for UTF-2000
+ extension.
+
+2001-12-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
+
+ * mule-charset.c (decode_builtin_char): Support mother charsets.
+
+2001-12-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
+
+ * mule-charset.c (Q94x94x60): New variable.
+ (charset_code_point): Support conversion `94x94x60'.
+ (Fmake_charset): Likewise.
+ (syms_of_mule_charset): Add new symbol `94x94x60'.
+
+ * char-ucs.h (CONVERSION_94x94x60): New macro.
+
+2001-12-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
+
+ * mule-charset.c (charset_code_point): Unify code about
+ `code-offset'.
+
+2001-12-30 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
+
+ * mule-charset.c (charset_code_point): Merge code about builtin
+ characters into code about mother charsets; don't use
+ `range_charset_code_point'.
+ (range_charset_code_point): Deleted.
+
+2001-12-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Qcode_offset): New variable.
+ (Fmake_charset): Use `XUINT' to get value of `min-code' and
+ `max-code'; accept new property `code-offset'.
+ (syms_of_mule_charset): Add new symbol `code-offset'.
+
+2001-12-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (range_charset_code_point): Fixed.
+
+2001-12-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (decode_builtin_char): Change semantics of
+ code-offset of coded-charset.
+ (charset_code_point): Likewise.
+ (range_charset_code_point): Likewise.
+ (complex_vars_of_mule_charset): Modify for the change.
+
+2001-12-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fencode_char): Reverse arguments.
+
+ * mule-charset.c (charset_code_point): Fixed.
+
+2001-12-25 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_mojikyo): Deleted.
+ (Vcharset_mojikyo_2022_1): Deleted.
+ (Vcharset_mojikyo_pj_{1..21}): Deleted.
+ (Qmin_code): New variable in UTF-2000.
+ (Qmax_code): Likewise.
+ (Qmother): Likewise.
+ (Qconversion): Likewise.
+ (Q94x60): Likewise.
+ (Qmojikyo): Deleted.
+ (Qmojikyo_2022_1): Deleted.
+ (Qmojikyo_pj_{1..22}): Deleted.
+ (mark_charset): Mark `cs->mother'.
+ (charset_description): Add description for `mother'.
+ (make_charset): Rename `ucs_{min|max}' to `{min|max}_code'; add
+ new arguments `mother' and `conversion'; use
+ `CHARSET_{MIN|MAX}_CODE' instead of `CHARSET_UCS_{MIN|MAX}'.
+ (charset_code_point): Moved from char-ucs.h; support `mother'
+ charset feature.
+ (range_charset_code_point): use `CHARSET_{MIN|MAX}_CODE' instead
+ of `CHARSET_UCS_{MIN|MAX}'; delete hard code for `mojikyo-2022-1'.
+ (Fmake_charset): Allow 3 and 4 as the value of `dimension' in
+ UTF-2000; allow 128 and 256 as the value of `chars' in UTF-2000;
+ allow 2 as the value of `graphic' in UTF-2000; add new properties
+ `min-code', `max-code', `mother', `conversion' in UTF-2000; don't
+ require `final' in UTF-2000; modify for `make_charset'.
+ (Fmake_reverse_direction_charset): use `CHARSET_{MIN|MAX}_CODE'
+ instead of `CHARSET_UCS_{MIN|MAX}'; modify for `make_charset'.
+ (Fcharset_property): Support `mother', `min-code' and `max-code'.
+ (Fencode_char): New function.
+ (syms_of_mule_charset): Add new builtin function `encode-char' in
+ UTF-2000; add new symbols `min-code', `max-code', `mother',
+ `conversion' and `94x60'; delete symbols `mojikyo',
+ `mojikyo-2022-1' and `mojikyo-pj-{1..21}'.
+ (complex_vars_of_mule_charset): Modify for `make_charset' change;
+ delete coded-charsets `mojikyo', `mojikyo-2022-1' and
+ `mojikyo-pj-{1..21}'; delete `DEF_MOJIKYO_PJ'.
+
+ * chartab.c (Fdefine_char): Use `XCHARSET_MAX_CODE' instead of
+ `XCHARSET_UCS_MAX'; regard `chinese-big5' as a base CCS.
+
+ * char-ucs.h (Vcharset_mojikyo): Deleted.
+ (Vcharset_mojikyo_2022_1): Deleted.
+ (LEADING_BYTE_MOJIKYO): Deleted.
+ (LEADING_BYTE_MOJIKYO_2022_1): Deleted.
+ (LEADING_BYTE_MOJIKYO_2022_2): Deleted.
+ (LEADING_BYTE_MOJIKYO_PJ_{1 .. 21}): Deleted.
+ (struct Lisp_Charset): Rename `ucs_{min|max}' to `{min|max}_code';
+ add new member `mother'; add new member `conversion'.
+ (CHARSET_MIN_CODE): Renamed from `CHARSET_UCS_MIN'.
+ (CHARSET_MAX_CODE): Renamed from `CHARSET_UCS_MAX'.
+ (CHARSET_MOTHER): New macro.
+ (CHARSET_CONVERSION): New macro.
+ (CONVERSION_IDENTICAL): New macro.
+ (CONVERSION_94x60): New macro.
+ (XCHARSET_MIN_CODE): Renamed from `CHARSET_MIN_CODE'.
+ (XCHARSET_MAX_CODE): Renamed from `CHARSET_MAX_CODE'.
+ (XCHARSET_MOTHER): New macro.
+ (XCHARSET_CONVERSION): New macro.
+ (MIN_CHAR_MOJIKYO): Deleted.
+ (MAX_CHAR_MOJIKYO): Deleted.
+ (DECODE_MOJIKYO_2022): Deleted.
+ (DECODE_CHAR): Delete hard code for builtin Mojikyo characters.
+ (charset_code_point): Changed to non-inline function.
+ (encode_char_1): Use `charset_code_point'.
+ (CHAR_TO_CHARC): Delete hard code for Mojikyo characters.
+
+2001-12-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * lread.c (read_compiled_function): Fix prototype.
+ (read_vector): Likewise.
+
+2001-12-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * lrecord.h (struct lrecord_header): Delete `older'.
+ (set_lheader_implementation): Delete code for `older'.
+ (set_lheader_older_implementation): Deleted.
+ (enum lrecord_type): Delete `lrecord_type_char_id_table'.
+ (OLDER_RECORD_P): Deleted.
+ (OLDER_RECORD_HEADER_P): Deleted.
+ (alloc_older_lcrecord): Deleted.
+ (alloc_older_lcrecord_type): Deleted.
+
+ * alloc.c (all_older_lcrecords): Deleted.
+ (alloc_older_lcrecord): Deleted.
+ (disksave_object_finalization_1): Delete code for older objects.
+ (mark_object): Don't use `OLDER_RECORD_HEADER_P'.
+ (reinit_alloc_once_early): Don't initialize `all_older_lcrecords'.
+
+2001-12-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (decoding_table_put_char): Use `make_vector'
+ instead of `make_older_vector'.
+ (put_char_ccs_code_point): Likewise.
+ (mark_charset): Mark `cs->decoding_table'.
+ (Fset_charset_mapping_table): Don't use `make_vector_newer'.
+
+ * lisp.h (make_older_vector): Deleted.
+ (make_vector_newer): Deleted.
+
+ * config.h.in (HAVE_GGC): Deleted.
+
+ * alloc.c (make_older_vector): Deleted.
+ (make_vector_newer_1): Deleted.
+ (make_vector_newer): Deleted.
+
+2001-12-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_ideograph_daikanwa_2): New variable.
+ (Qideograph_daikanwa_2): New variable.
+ (syms_of_mule_charset): Add new symbol `ideograph-daikanwa-2'.
+ (complex_vars_of_mule_charset): Add new coded-charset
+ `ideograph-daikanwa-2'; use `LEADING_BYTE_DAIKANWA_3' instead of
+ `LEADING_BYTE_DAIKANWA'.
+
+ * char-ucs.h (LEADING_BYTE_DAIKANWA_0): New macro.
+ (LEADING_BYTE_DAIKANWA_1): New macro.
+ (LEADING_BYTE_DAIKANWA_2): New macro.
+ (LEADING_BYTE_DAIKANWA_3): Renamed from `LEADING_BYTE_DAIKANWA'.
+
+2001-12-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (complex_vars_of_mule_charset): Change
+ DOC-strings and registry of `ideograph-daikanwa'; now it indicates
+ the second revised version.
+
+2001-12-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_ucs_smp): New variable.
+ (Vcharset_ucs_sip): New variable.
+ (Qucs_smp): New variable.
+ (Qucs_sip): New variable.
+ (encode_builtin_char_1): Treat MIN_CHAR_{SMP|SIP} to
+ MAX_CHAR_{SMP|SIP} as `ucs-{smp|sip}'.
+ (syms_of_mule_charset): Add new symbols `ucs-smp' and `ucs-sip'.
+ (complex_vars_of_mule_charset): Modify middle-DOC and registry of
+ `ucs-bmp'; add new coded-charset `ucs-smp' and `ucs-sip'; change
+ charset width of `ucs-cns', `ucs-jis', `ucs-ks' and `ucs-big5'.
+
+ * char-ucs.h (LEADING_BYTE_UCS_SMP): New macro.
+ (LEADING_BYTE_UCS_SIP): New macro.
+ (MIN_CHAR_SMP): New macro.
+ (MAX_CHAR_SMP): New macro.
+ (MIN_CHAR_SIP): New macro.
+ (MAX_CHAR_SIP): New macro.
+
+2001-11-30 Yoshiki Hayashi <yoshiki@xemacs.org>
+
+ * dumper.c (PDUMP_HASH_SIZE): Increase the size of hash table when
+ utf-2000.
+
+2001-11-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (put_char_ccs_code_point): Return canonicalized
+ value; don't store value into `encoding_table' of `Lisp_Charset'.
+ (mark_charset): `encoding_table' was deleted.
+ (charset_description): Likewise.
+ (make_charset): Likewise.
+ (Fset_charset_mapping_table): Use `Fput_char_attribute' instead of
+ `put_char_ccs_code_point'.
+
+ * chartab.h (Fput_char_attribute): New EXFUN.
+
+ * chartab.c (Fchar_attribute_alist): Name space of CCS-attributes
+ is unified with normal symbol space.
+ (Fget_char_attribute): Likewise.
+ (Fput_char_attribute): Likewise; behavior of
+ `put_char_ccs_code_point' is changed.
+
+ * char-ucs.h: Include "elhash.h".
+ (Vchar_attribute_hash_table): New external variable.
+ (struct Lisp_Charset): Delete `encoding_table'.
+ (CHARSET_ENCODING_TABLE): New implementation; refer
+ `Vchar_attribute_hash_table' instead of `encoding_table' of struct
+ `Lisp_Charset'.
+
+2001-11-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fcharset_property): Return Qnil if CHARSET_FINAL
+ (cs) == 0.
+
+2001-11-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c (char_encode_big5): Prefer charset-g1 than
+ `chinese-big5'.
+
+2001-11-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (uint8_byte_table_description): New constant.
+ (uint8-byte-table): Use `uint8_byte_table_description'.
+ (uint16_byte_table_description): New constant.
+ (uint16-byte-table): Use `uint16_byte_table_description'.
+
+2001-10-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (complex_vars_of_mule_charset): Don't use builtin
+ range MIN_CHAR_BIG5_CDP .. MAX_CHAR_BIG5_CDP.
+
+2001-10-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_ucs_ks): New variable.
+ (Qucs_ks): New variable.
+ (syms_of_mule_charset): Add new symbol `ucs-ks'.
+ (complex_vars_of_mule_charset): Add new coded-charset `ucs-ks'.
+
+ * char-ucs.h (LEADING_BYTE_UCS_KS): New macro.
+
+2001-10-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.h (Fmake_char): New EXFUN; moved from chartab.c.
+ (Fdecode_char): Likewise.
+
+ * chartab.c: Move EXFUN for Fmake_char and Fdecode_char into
+ chartab.h.
+ (Fdefine_char): Modify for Fdecode_char.
+ (Ffind_char): Likewise.
+
+ * mule-charset.c (Fdecode_char): Add new optional argument
+ `defined-only'.
+ (Fdecode_builtin_char): Modify for `Fdecode_char'.
+
+2001-10-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c (mark_coding_system): Mark initial-charset-g0 and
+ -g1 of CODESYS_BIG5 in XEmacs UTF-2000.
+ (allocate_coding_system): Initialize initial-charsets of
+ CODESYS_BIG5 in XEmacs UTF-2000.
+ (Fmake_coding_system): Accept `charset-g0' and `charset-g1' for
+ CODESYS_BIG5 in XEmacs UTF-2000.
+ (decode_coding_big5): Use initial-charset-g0 and -g1 of
+ CODESYS_BIG5 in XEmacs UTF-2000; use `DECODE_DEFINED_CHAR'.
+
+ * mule-charset.c (Vcharset_ideograph_hanziku_{1 .. 12}): New
+ variables.
+ (Qideograph_hanziku_{1 .. 12}): Likewise.
+ (syms_of_mule_charset): Add new symbols `ideograph-hanziku-{1
+ .. 12}'.
+ (complex_vars_of_mule_charset): Use `MIN_CHAR_BIG5_CDP' to
+ `MAX_CHAR_BIG5_CDP' for `chinese-big5'; add news coded-charsets
+ `ideograph-hanziku-{1 .. 12}'.
+
+ * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x200.
+ (LEADING_BYTE_HANZIKU_{1 .. 12}): New macros.
+ ({MIN|MAX}_CHAR_BIG5_CDP): New macros.
+ ({MIN|MAX}_CHAR_HANZIKU_{1 .. 12}): New macros.
+ (DECODE_DEFINED_CHAR): New inline function.
+ (DECODE_CHAR): Use `DECODE_DEFINED_CHAR'.
+
+2001-10-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_china3_jef): Renamed from
+ `Vcharset_japanese_jef_china3'.
+ (Qchina3_jef): Renamed from `Qjapanese_jef_china3'.
+ (encode_builtin_char_1): Rename `{MIN|MAX}_CHAR_CHINA3_JEF' from
+ `{MIN|MAX}_CHAR_JEF_CHINA3'..
+ (syms_of_mule_charset): Rename `china3-jef' from
+ `japanese-jef-china3'.
+ (complex_vars_of_mule_charset): Likewise; rename
+ `LEADING_BYTE_CHINA3_JEF' from `LEADING_BYTE_JEF_CHINA3'.
+
+ * char-ucs.h (LEADING_BYTE_CHINA3_JEF): Renamed from
+ `LEADING_BYTE_JEF_CHINA3'.
+ (MIN_CHAR_CHINA3_JEF): Renamed from `MIN_CHAR_JEF_CHINA3'.
+ (MAX_CHAR_CHINA3_JEF): Renamed from `MAX_CHAR_JEF_CHINA3'.
+
+2001-10-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (encode_builtin_char_1): Comment out special code
+ for MIN_CHAR_MOJIKYO_0 ... MAX_CHAR_MOJIKYO_0.
+
+ * char-ucs.h (MIN_CHAR_MOJIKYO_0): Comment out.
+ (MAX_CHAR_MOJIKYO_0): Comment out.
+ (MIN_CHAR_CBETA): Changed to 0x00E20000.
+ (MAX_CHAR_CBETA): Changed to 0x00E2FFFF.
+ (MIN_CHAR_JEF_CHINA3): Changed to 0x00E80000.
+ (MAX_CHAR_JEF_CHINA3): Changed to 0x00E8FFFF.
+
+2001-10-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_ideograph_cbeta): New variable.
+ (Qideograph_cbeta): New variable.
+ (encode_builtin_char_1): Comment out special code for
+ coded-charset `mojikyo' and `japanese-jef-china3'.
+ (syms_of_mule_charset): Add new symbol `ideograph-cbeta'.
+ (complex_vars_of_mule_charset): Add new coded-charset
+ `ideograph-cbeta'.
+
+ * char-ucs.h (LEADING_BYTE_CBETA): New macro.
+ (MIN_CHAR_CBETA): New macro.
+ (MAX_CHAR_CBETA): New macro.
+
+2001-10-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x100.
+ (LEADING_BYTE_JEF_CHINA3): New macro.
+ (MIN_CHAR_JEF_CHINA3): New macro.
+ (MAX_CHAR_JEF_CHINA3): Likewise.
+ (DECODE_CHAR): Fixed.
+
+2001-10-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_japanese_jef_china3): New variable.
+ (Qjapanese_jef_china3): New variable.
+ (encode_builtin_char_1): Support `japanese-jef-china3'.
+ (syms_of_mule_charset): Add new symbol `japanese-jef-china3'.
+ (complex_vars_of_mule_charset): Add new coded-charset
+ `japanese-jef-china3'.
+
+2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (XCHARSET_CELL_RANGE): New inline function.
+ (decode_char_table_range): Use `XCHARSET_CELL_RANGE'; accept 94^3,
+ 94^4, 96^3, 96^4, 128^n and 256^n set.
+ (put_char_table): Use `XCHARSET_CELL_RANGE'.
+ (map_char_table): Likewise.
+
+2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (get_char_table): Use `get_char_id_table' in XEmacs
+ UTF-2000.
+
+2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.h (get_char_id_table): New inline function.
+
+ * chartab.c (get_char_id_table): Moved to chartab.h as an inline
+ function.
+
+2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.h (decode_char_table_range): New prototype in XEmacs
+ UTF-2000.
+ (put_char_id_table): New inline function in XEmacs UTF-2000.
+
+ * chartab.c (put_char_id_table): Moved to chartab.h as an inline
+ function.
+ (decode_char_table_range): Delete static declaration in XEmacs
+ UTF-2000.
+
+2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (put_char_id_table): Use `put_char_table'.
+
+2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_over_uint8_byte_table): Delete argument `ccs'.
+ (map_over_uint16_byte_table): Likewise.
+ (map_over_byte_table): Likewise.
+ (map_char_table): Modify for `map_over_uint8_byte_table',
+ `map_over_uint16_byte_table' and `map_over_byte_table' in XEmacs
+ UTF-2000.
+
+2001-09-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (struct map_char_table_for_charset_arg): New
+ structure.
+ (map_char_table_for_charset_fun): New function.
+ (map_char_table): Use `map_char_table' for encoding_table of
+ `range->charset'.
+
+2001-09-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_char_table): Check a character is found in
+ range->charset instead of non default value is defined in
+ char-table when range is CHARTAB_RANGE_ROW.
+
+2001-09-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_char_id_table): Deleted.
+ (Fmap_char_attribute): Use `map_char_table' instead of
+ `map_char_id_table'.
+
+2001-09-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * syntax.h (SYNTAX_CODE_UNSAFE): New implementation in XEmacs
+ UTF-2000.
+ (update_syntax_table): Deleted in XEmacs UTF-2000.
+
+ * syntax.c (find_defun_start): Use `syntax_table' instead of
+ `mirror_syntax_table' in XEmacs UTF-2000.
+ (Fset_syntax_table): Don't use `mirror_syntax_table' in XEmacs
+ UTF-2000.
+ (Fchar_syntax): Use `syntax_table' instead of `mirror_table' in
+ XEmacs UTF-2000.
+ (Fmatching_paren): Likewise.
+ (scan_words): Use `syntax_table' instead of `mirror_syntax_table'
+ in XEmacs UTF-2000.
+ (find_start_of_comment): Likewise.
+ (find_end_of_comment): Likewise.
+ (Fforward_comment): Likewise.
+ (scan_lists): Likewise.
+ (char_quoted): Likewise.
+ (Fbackward_prefix_chars): Likewise.
+ (scan_sexps_forward): Likewise.
+ (update_just_this_syntax_table): Deleted in XEmacs UTF-2000.
+ (update_syntax_table): Likewise.
+
+ * search.c (skip_chars): Use `syntax_table' instead of
+ `mirror_syntax_table' in XEmacs UTF-2000.
+ (wordify): Likewise.
+ (Freplace_match): Likewise.
+
+ * regex.c (re_compile_fastmap): Use `syntax_table' instead of
+ `mirror_syntax_table' in XEmacs UTF-2000.
+ (WORDCHAR_P_UNSAFE): Likewise.
+ (re_match_2_internal): Likewise.
+
+ * font-lock.c (find_context): Use `buf->syntax_table' instead of
+ `buf->mirror_syntax_table' in XEmacs UTF-2000.
+
+ * cmds.c (internal_self_insert): Use `buf->syntax_table' instead
+ of `buf->mirror_syntax_table' in XEmacs UTF-2000.
+
+ * chartab.h (struct Lisp_Char_Table): Delete `mirror_table' in
+ XEmacs UTF-2000.
+
+ * chartab.c (mark_char_table): Don't mark `mirror_table' in XEmacs
+ UTF-2000.
+ (print_char_table): Print `default_value' in XEmacs UTF-2000.
+ (char_table_description): Delete `mirror_table' in XEmacs
+ UTF-2000.
+ (fill_char_table): Don't call `update_syntax_table' in XEmacs
+ UTF-2000.
+ (Fmake_char_table): Don't use `mirror_table' in XEmacs UTF-2000.
+ (Fcopy_char_table): Likewise.
+ (put_char_table): Don't call `update_syntax_table' in XEmacs
+ UTF-2000.
+
+ * casefiddle.c (casify_object): Use `buf->syntax_table' instead of
+ `buf->mirror_syntax_table' in XEmacs UTF-2000.
+ (casify_region_internal): Likewise.
+
+ * bufslots.h: Delete `mirror_syntax_table' in XEmacs UTF-2000.
+
+ * buffer.c (common_init_complex_vars_of_buffer): Don't use
+ `mirror_syntax_table' in XEmacs UTF-2000.
+
+ * abbrev.c (abbrev_match): Use `buf->syntax_table' instead of
+ `buf->mirror_syntax_table' in XEmacs UTF-2000.
+ (Fexpand_abbrev): Likewise.
+
+2001-09-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (vars_of_chartab): Update `utf-2000-version' to 0.18.
+
+2001-09-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_over_uint8_byte_table): Cancel temporary hack.
+ (map_over_uint16_byte_table): Likewise.
+ (map_over_byte_table): Likewise.
+ (get_char_id_table): Refer `cit->default_value'.
+ (put_char_id_table): Support `CHARTAB_RANGE_DEFAULT'.
+ (map_char_id_table): Use `1 << 30' instead of `1 << 24' as number
+ of character-id ranges.
+ (mark_char_table): Mark `ct->default_value'.
+ (char_table_description): Add `default_value'.
+ (fill_char_table): Use `default_value'.
+ (decode_char_table_range): Decode `nil' as
+ `CHARTAB_RANGE_DEFAULT'.
+ (get_char_id_table): Refer `cit->default_value'.
+ (put_char_id_table): Support `CHARTAB_RANGE_DEFAULT'.
+ (map_char_table): Support `CHARTAB_RANGE_DEFAULT'; cancel
+ temporary hack; check value of char-table is bound or not.
+ (slow_map_char_table_fun): Support `CHARTAB_RANGE_DEFAULT'.
+
+ * chartab.h (struct Lisp_Char_Table): Add new member
+ `default_value' in XEmacs UTF-2000.
+ (CHAR_TABLE_VALUE_UNSAFE): Use `default_value'.
+ (enum chartab_range_type): Add `CHARTAB_RANGE_DEFAULT' in XEmacs
+ UTF-2000.
+
+2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.h (Lisp_Char_ID_Table): Deleted.
+
+ * chartab.c (char_table_description): Fix typo.
+ (Fmap_char_attribute): Use `Lisp_Char_Table' instead of
+ `Lisp_Char_ID_Table'.
+
+2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c (COMPOSE_ADD_CHAR): Use `CHAR_TABLEP' instead of
+ `CHAR_ID_TABLE_P'.
+
+ * mule-charset.c (remove_char_ccs): Use `CHAR_TABLEP' instead of
+ `CHAR_ID_TABLE_P'.
+
+ * chartab.h (XCHAR_ID_TABLE): Deleted.
+ (XSETCHAR_ID_TABLE): Deleted.
+ (CHAR_ID_TABLE_P): Deleted.
+
+ * chartab.c (put_char_id_table): Use `CHAR_TABLEP' instead of
+ `CHAR_ID_TABLE_P'.
+ (Fget_composite_char): Likewise.
+ (put_char_table): Likewise.
+ (add_char_attribute_alist_mapper): Fixed.
+ (Fchar_attribute_alist): Use `CHAR_TABLEP' instead of
+ `CHAR_ID_TABLE_P'.
+ (Fget_char_attribute): Likewise.
+ (Fget_char_attribute): Likewise.
+ (Fmap_char_attribute): Likewise.
+
+ * char-ucs.h (charset_code_point): Use `CHAR_TABLEP' instead of
+ `CHAR_ID_TABLE_P'.
+ (encode_char_1): Likewise.
+
+2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c (COMPOSE_ADD_CHAR): Use `XCHAR_TABLE' instead of
+ `XCHAR_ID_TABLE'.
+
+ * mule-charset.c (put_char_ccs_code_point): Use `XCHAR_TABLE'
+ instead of `XCHAR_ID_TABLE'.
+ (remove_char_ccs): Likewise.
+
+ * chartab.c (put_char_id_table): Use `XCHAR_TABLE' instead of
+ `XCHAR_ID_TABLE'.
+ (Fget_composite_char): Likewise.
+ (Fchar_variants): Likewise.
+ (put_char_table): Likewise.
+ (add_char_attribute_alist_mapper): Likewise.
+ (Fchar_attribute_alist): Likewise.
+ (Fget_char_attribute): Likewise.
+ (Fput_char_attribute): Likewise.
+ (Fmap_char_attribute): Likewise.
+ (Fmap_char_attribute): Likewise.
+
+ * char-ucs.h (charset_code_point): Use `XCHAR_TABLE' instead of
+ `XCHAR_ID_TABLE'.
+ (encode_char_1): Likewise.
+
+2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_char_id_table): Use `Lisp_Char_Table' instead of
+ `Lisp_Char_ID_Table'.
+ (mark_char_id_table): Deleted.
+ (print_char_id_table): Likewise.
+ (char_id_table_equal): Likewise.
+ (char_id_table_hash): Likewise.
+ (char_id_table_description): Likewise.
+ (char_id_table): Likewise.
+ (make_char_id_table): Use `Fmake_char_table' and
+ `fill_char_table'.
+ (get_char_id_table): Use `Lisp_Char_Table' instead of
+ `Lisp_Char_ID_Table'.
+ (put_char_id_table): Likewise.
+ (Fput_char_attribute): Use `XCHAR_TABLE' instead of
+ `XCHAR_ID_TABLE'.
+ (Fremove_char_attribute): Likewise.
+ (syms_of_chartab): Don't define type `char-id-table'.
+
+ * chartab.h (struct Lisp_Char_ID_Table): Deleted.
+ (char_id_table): Likewise.
+ (GC_CHAR_ID_TABLE_P): Likewise.
+ (Lisp_Char_ID_Table): Use structure `Lisp_Char_Table'.
+ (XCHAR_ID_TABLE): Use `XCHAR_TABLE'.
+ (XSETCHAR_ID_TABLE): Use `XSETCHAR_TABLE'.
+ (CHAR_ID_TABLE_P): Use `CHAR_TABLEP'.
+ (get_char_id_table): Use `Lisp_Char_Table' instead of
+ `Lisp_Char_ID_Table'.
+ (put_char_id_table_0): Likewise.
+ (put_char_id_table): Likewise.
+
+2001-09-02 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
+
+ * chartab.h: Lisp_Byte_Table related codes are moved from
+ chartab.h.
+
+ * char-ucs.h: Move Lisp_Byte_Table related codes to chartab.h.
+
+2001-09-02 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
+
+ * chartab.h: Don't include "chartab.h".
+ (struct Lisp_Char_ID_Table): Moved from char-ucs.h.
+ (Lisp_Char_ID_Table): Likewise.
+ (char_id_table): Likewise.
+ (XCHAR_ID_TABLE): Likewise.
+ (XSETCHAR_ID_TABLE): Likewise.
+ (CHAR_ID_TABLE_P): Likewise.
+ (GC_CHAR_ID_TABLE_P): Likewise.
+ (get_char_id_table): Likewise.
+
+ * char-ucs.h: Include "chartab.h".
+ (struct Lisp_Char_ID_Table): Moved to chartab.h.
+ (Lisp_Char_ID_Table): Likewise.
+ (char_id_table): Likewise.
+ (XCHAR_ID_TABLE): Likewise.
+ (XSETCHAR_ID_TABLE): Likewise.
+ (CHAR_ID_TABLE_P): Likewise.
+ (GC_CHAR_ID_TABLE_P): Likewise.
+ (get_char_id_table): Likewise.
+
+2001-09-01 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
+
+ * chartab.c (copy_uint8_byte_table): New function.
+ (copy_uint16_byte_table): New function.
+ (copy_byte_table): New function.
+ (map_over_uint8_byte_table): Modify to avoid huge numbers of
+ characters to call.
+ (map_over_uint16_byte_table): Likewise.
+ (map_over_byte_table): Likewise.
+ (get_byte_table): Move prototype to chartab.h.
+ (put_byte_table): Likewise.
+ (put_char_id_table_0): Moved to chartab.h.
+ (mark_char_table_entry): Don't define in XEmacs UTF-2000.
+ (char_table_entry_equal): Likewise.
+ (char_table_entry_hash): Likewise.
+ (char_table_entry_description): Likewise.
+ (char_table_entry): Likewise.
+ (make_char_table_entry): Likewise.
+ (copy_char_table_entry): Likewise.
+ (get_non_ascii_char_table_value): Likewise.
+ (map_over_charset_ascii): Likewise.
+ (map_over_charset_control_1): Likewise.
+ (map_over_charset_row): Likewise.
+ (map_over_other_charset): Likewise.
+ (mark_char_table): Modify for new structure in XEmacs UTF-2000.
+ (print_char_table): Likewise.
+ (char_table_equal): Likewise.
+ (char_table_hash): Likewise.
+ (char_table_description): Likewise.
+ (fill_char_table): Likewise.
+ (Fcopy_char_table): Likewise.
+ (get_char_table): Likewise.
+ (Fget_range_char_table): Likewise.
+ (put_char_table): Likewise.
+ (map_char_table): Likewise.
+ (syms_of_chartab): Don't define `char_table_entry' in XEmacs
+ UTF-2000.
+
+2001-08-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * cmds.c (vars_of_cmds): Use `put_char_id_table_0' for
+ `Vauto_fill_chars' in XEmacs UTF-2000.
+
+ * chartab.h (get_byte_table): New prototype [moved from
+ chartab.c].
+ (put_byte_table): Likewise [moved from chartab.c].
+ (put_char_id_table_0): New inline function [moved from chartab.c].
+ (struct Lisp_Char_Table_Entry): Don't define in XEmacs UTF-2000.
+ (Lisp_Char_Table_Entry): Likewise.
+ (char_table_entry): Likewise.
+ (XCHAR_TABLE_ENTRY): Likewise.
+ (XSETCHAR_TABLE_ENTRY): Likewise.
+ (CHAR_TABLE_ENTRYP): Likewise.
+ (CHECK_CHAR_TABLE_ENTRY): Likewise.
+ (NUM_ASCII_CHARS): Likewise.
+ (struct Lisp_Char_Table): New implementation in XEmacs UTF-2000.
+ (CHAR_TABLE_VALUE_UNSAFE): Likewise.
+
+2001-08-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (get_char_id_table): Change interface.
+ (put_char_id_table_0): New function.
+ (put_char_id_table): Change interface; new implementation.
+ (Fget_composite_char): Modify for interface change of
+ `get_char_id_table'.
+ (Fchar_variants): Likewise.
+ (add_char_attribute_alist_mapper): Likewise.
+ (Fchar_attribute_alist): Likewise.
+ (Fget_char_attribute): Likewise.
+ (Fput_char_attribute): Allow coded-charset or [CODED-CHARSET ROW]
+ as same as character as the first argument like `put-char-table';
+ modify for interface change of `put_char_id_table'.
+ (Fremove_char_attribute): Modify for interface change of
+ `put_char_id_table'.
+
+2001-08-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c: Sync up with XEmacs 21.2.41.
+ (COMPOSE_ADD_CHAR): Modify for interface change of
+ `get_char_id_table'.
+
+ * mule-charset.c (put_char_ccs_code_point): Modify for interface
+ change of `put_char_id_table'.
+ (remove_char_ccs): Likewise.
+
+ * chartab.h (put_char_id_table): Change interface.
+
+ * char-ucs.h (get_char_id_table): Change interface.
+ (charset_code_point): Modify for interface change of
+ `get_char_id_table'.
+ (encode_char_1): Likewise.
+
+2001-08-19 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_over_uint8_byte_table): Change arguments; add new
+ argument `ccs'.
+ (map_over_uint16_byte_table): Likewise.
+ (map_over_byte_table): Likewise.
+ (map_char_id_table): Add new argument `range' like
+ `map_char_table'.
+ (Fmap_char_attribute): Add new argument `range' like
+ `Fmap_char_table'.
+
+2001-08-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (map_over_uint8_byte_table): Change interface of
+ mapping function to use struct chartab_range instead of Emchar.
+ (map_over_uint16_byte_table): Likewise.
+ (map_over_byte_table): Likewise.
+ (map_char_id_table): Likewise.
+ (struct slow_map_char_id_table_arg): Deleted.
+ (slow_map_char_id_table_fun): Deleted.
+ (Fmap_char_attribute): Use struct `slow_map_char_table_arg' and
+ function `slow_map_char_table_fun' instead of struct
+ `slow_map_char_id_table_arg' and function
+ `slow_map_char_id_table_fun'.
+
+2001-08-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c: Move char-it-table related codes to chartab.c.
+ (Vutf_2000_version): Moved to chartab.c.
+ (Fdefine_char): Likewise.
+ (Ffind_char): Likewise.
+ (syms_of_mule_charset): Move types `uint8-byte-table',
+ `uint16-byte-table', `byte-table' and `char-id-table' to
+ chartab.c; move functions `char_attribute_list,
+ `find_char_attribute_table, `char_attribute_alist,
+ `get_char_attribute, `put_char_attribute, `remove_char_attribute,
+ `map_char_attribute, `define_char, `find_char, `char_variants and
+ `get_composite_char to chartab.c; move symbols `=>ucs',
+ `->decomposition', `compat', `isolated', `initial', `medial',
+ `final', `vertical', `noBreak', `fraction', `super', `sub',
+ `circle', `square', `wide', `narrow', `small' and `font' to
+ chartab.c.
+ (vars_of_mule_charset): Move `utf-2000-version' to chartab.c; move
+ setting codes for `Vcharacter_composition_table' and
+ `Vcharacter_variant_table' to chartab.c.
+ (complex_vars_of_mule_charset): Move setting code for
+ `Vchar_attribute_hash_table' to chartab.c.
+
+ * chartab.h: Include "char-ucs.h" if --with-utf-2000 is specified.
+ (make_char_id_table): New prototype.
+ (put_char_id_table): Likewise.
+ (Fget_char_attribute): Likewise.
+
+ * chartab.c: Move char-id-table related code from mule-charset.c.
+ (Vutf_2000_version): Moved from mule-charset.c.
+
+ * char-ucs.h (Qucs): New external variable.
+ (put_char_ccs_code_point): New prototype.
+ (remove_char_ccs): Likewise.
+
+2001-08-14 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
+
+ * mule-charset.c (Vcharset_ucs_jis): New variable.
+ (Qucs_jis): Likewise.
+ (syms_of_mule_charset): Add new symbol `ucs-jis'.
+ (complex_vars_of_mule_charset): Add new coded-charset `ucs-jis'.
+
+ * char-ucs.h (LEADING_BYTE_UCS_JIS): New macro.
+
+2001-08-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (map_over_uint8_byte_table): New function.
+ (map_over_uint16_byte_table): Likewise.
+ (map_over_byte_table): Likewise.
+ (map_char_id_table): Likewise.
+ (slow_map_char_id_table_fun): Likewise.
+ (Fmap_char_attribute): Likewise.
+ (syms_of_mule_charset): Add new function `map-char-attribute'.
+
+2001-08-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Ffind_char): New function in XEmacs UTF-2000.
+ (syms_of_mule_charset): Add new function `find-char'.
+
+2001-08-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_chinese_big5_cdp): New variable in
+ XEmacs UTF-2000.
+ (Qchinese_big5_cdp): New variable in XEmacs UTF-2000.
+ (syms_of_mule_charset): Add new symbol `chinese-big5-cdp' in
+ XEmacs UTF-2000.
+ (complex_vars_of_mule_charset): Add new coded-charset
+ `chinese-big5-cdp' in XEmacs UTF-2000; change registry of
+ `ideograph-gt-pj-*'.
+
+ * char-ucs.h (LEADING_BYTE_CHINESE_BIG5_CDP): New macro.
+
+2001-07-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (encode_builtin_char_1): Purge codes about
+ {MIN|MAX}_CHAR_{GREEK|CYRILLIC}; comment out code about
+ {MIN|MAX}_CHAR_HEBREW.
+ (complex_vars_of_mule_charset): Comment out {MIN|MAX}_CHAR_HEBREW;
+ don't use {MIN|MAX}_CHAR_HEBREW to define `hebrew-iso8859-8'.
+
+ * char-ucs.h (MIN_CHAR_GREEK): Purged.
+ (MAX_CHAR_GREEK): Purged.
+ (MIN_CHAR_CYRILLIC): Purged.
+ (MAX_CHAR_CYRILLIC): Purged.
+ (MIN_CHAR_HEBREW): Commented out.
+ (MAX_CHAR_HEBREW): Likewise.
+
+2001-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Qto_ucs): New variable.
+ (Fput_char_attribute): Treat `=>ucs' as same as `->ucs'.
+ (Fdefine_char): Likewise.
+ (syms_of_mule_charset): Add new symbol `=>ucs'.
+
+2001-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fdecode_char): Fixed.
+
+2001-07-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (complex_vars_of_mule_charset): Modify registry
+ of latin-tcvn5712 to accept "tcvn5712.1993-1" as same as
+ "tcvn5712-1".
+
+2001-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_ucs_big5): New variable.
+ (Qucs_big5): Likewise.
+ (syms_of_mule_charset): Add new symbol `ucs-big5'.
+ (complex_vars_of_mule_charset): Add new coded-charset `ucs-big5'.
+
+ * char-ucs.h (LEADING_BYTE_UCS_BIG5): New macro.
+
+2001-07-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (decode_builtin_char): Check Big5 code range
+ which can be mapped to `chinese-big5-1' and `chinese-big5-2'.
+
+2001-07-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Vcharset_chinese_gb12345): New variable.
+ (Qchinese_gb12345): Likewise.
+ (Fdecode_builtin_char): Fixed.
+ (syms_of_mule_charset): Add `chinese-gb12345'.
+ (complex_vars_of_mule_charset): Add coded-charset
+ `chinese-gb12345'.
+
+ * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x70.
+ (LEADING_BYTE_CHINESE_GB12345): New macro.
+
+2001-07-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fdecode_builtin_char): Use `latin-viscii-lower'
+ and `latin-viscii-upper' for `latin-viscii'.
+
+2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fdecode_builtin_char): Comment out
+ regularization code for ISO-IR GR representation.
+
+2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (decode_builtin_char): New function; renamed from
+ `make_builtin_char'; return -1 instead of signal.
+ (Fdecode_builtin_char): Use `decode_builtin_char'.
+
+ * char-ucs.h (decode_builtin_char): New prototype; renamed from
+ `make_builtin_char'.
+ (DECODE_CHAR): Use `decode_builtin_char' instead of
+ `make_builtin_char'; use mapping table of `chinese-big5' for
+ `chinese-big5-{1,2}'.
+
+2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c (char_encode_big5): New function.
+ (char_finish_big5): Likewise.
+ (reset_encoding_stream): Use `char_encode_big5' and
+ `char_finish_big5' for CODESYS_BIG5.
+ (mule_encode): Don't use `encode_coding_big5'.
+ (encode_coding_big5): Deleted.
+
+2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * text-coding.c (BYTE_BIG5_TWO_BYTE_1_P): Support private area
+ 0x81- in XEmacs UTF-2000.
+ (detect_coding_big5): Likewise.
+