1 2000-01-20 MORIOKA Tomohiko <tomo@m17n.org>
3 * mule-charset.c (complex_vars_of_mule_charset): Don't define
4 `japanese-jisx0208-1990' in non-UTF-2000 Mule.
6 2000-01-11 MORIOKA Tomohiko <tomo@etl.go.jp>
8 * mule-charset.c (split_builtin_char): Don't support OBS_94x94.
10 * char-ucs.h (MIN_CHAR_OBS_94x94): Deleted.
11 (MAX_CHAR_OBS_94x94): Deleted.
13 2000-01-11 MORIOKA Tomohiko <tomo@etl.go.jp>
15 * mule-charset.c (split_builtin_char): Use `MAX_CHAR_BMP'.
17 * char-ucs.h (MAX_CHAR_BMP): New macro.
19 2000-01-10 MORIOKA Tomohiko <tomo@etl.go.jp>
21 * text-coding.c: Sync with r21-2-24.
23 2000-01-08 MORIOKA Tomohiko <tomo@etl.go.jp>
25 * file-coding.c: Modify for UTF-2000.
27 2000-01-18 MORIOKA Tomohiko <tomo@etl.go.jp>
29 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
32 2000-01-15 MORIOKA Tomohiko <tomo@etl.go.jp>
34 * mule-charset.c (split_builtin_char): Delete builtin support for
36 (complex_vars_of_mule_charset): Don't map `katakana-jisx0201' to
37 BMP area in builtin representation.
39 * char-ucs.h (MAKE_CHAR): Delete builtin support for
40 `Vcharset_katakana_jisx0201'.
42 1999-12-24 MORIOKA Tomohiko <tomo@etl.go.jp>
44 * mule-charset.c (Vcharset_mojikyo_pj_[1 .. 21]): New variable.
45 (Qisolated): New variable.
46 (Qinitial): New variable.
47 (Qmedial): New variable.
48 (Qfinal): New variable.
49 (Qvertical): New variable.
50 (Qsmall): New variable.
51 (to_char_code): Use `Qisolated', `Qinitial', `Qmedial', `Qfinal',
52 `Qvertical' and `Qsmall'.
53 (Qmojikyo_pj_[1 .. 21]): New variable.
54 (syms_of_mule_charset): Add new symbols `isolated', `initial',
55 `medial', `final', `vertical', `small' and `mojikyo-pj-[1 .. 21]'.
56 (complex_vars_of_mule_charset): Add new charset `mojikyo-pj-[1
59 1999-11-23 MORIOKA Tomohiko <tomo@etl.go.jp>
61 * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x60.
62 (LEADING_BYTE_MOJIKYO_PJ_[1 .. 21]): New macros.
63 (MAX_LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 32)'.
65 1999-11-18 MORIOKA Tomohiko <tomo@etl.go.jp>
67 * mule-charset.c (Vcharset_japanese_jisx0208_1990): New variable.
68 (Fdefine_char): Use Group 00 Plane 10 for non-coded variants of
70 (Qjapanese_jisx0208_1990): New variable.
71 (syms_of_mule_charset): Add new symbol `Qjapanese_jisx0208_1990'.
72 (complex_vars_of_mule_charset): Add new coded-charset
73 `japanese-jisx0208-1990'.
75 * char-ucs.h (LEADING_BYTE_JAPANESE_JISX0208_1990): New macro.
76 (MIN_CHAR_JIS_X0208_1990): New macro.
77 (MAX_CHAR_JIS_X0208_1990): New macro.
79 1999-11-16 MORIOKA Tomohiko <tomo@urania.m17n.org>
81 * text-coding.c (char_encode_iso2022): Output `~' if ISO 2022
82 coded-charset is not found.
84 1999-11-16 MORIOKA Tomohiko <tomo@urania.m17n.org>
86 * mule-charset.c (Fget_char_attribute): Forgot to `CHECK_CHAR'.
87 (Fdefine_char): Use `Fmake_char'.
89 1999-11-15 MORIOKA Tomohiko <tomo@urania.m17n.org>
91 * mule-charset.c (Vcharset_ideograph_daikanwa): New variable.
92 (Vcharset_hiragana_jisx0208): Deleted.
93 (Vcharset_katakana_jisx0208): Deleted.
94 (Qideograph_daikanwa): New variable.
95 (Qhiragana_jisx0208): Deleted.
96 (Qkatakana_jisx0208): Deleted.
97 (split_builtin_char): Split `ideograph-daikanwa'.
98 (Fsplit_char): New implementation for UTF-2000.
99 (syms_of_mule_charset): Add new symbol `ideograph-daikanwa';
100 delete symbol `hiragana-jisx0208' and `katakana-jisx0208'.
101 (complex_vars_of_mule_charset): Add new coded-charset
102 `ideograph-daikanwa'; delete coded-charset `hiragana-jisx0208' and
105 * char-ucs.h (LEADING_BYTE_DAIKANWA): New macro.
106 (LEADING_BYTE_HIRAGANA_JISX0208): Deleted.
107 (LEADING_BYTE_KATAKANA_JISX0208): Deleted.
108 (MIN_CHAR_DAIKANWA): New macro.
109 (MAX_CHAR_DAIKANWA): New macro.
111 1999-11-15 MORIOKA Tomohiko <tomo@urania.m17n.org>
113 * data.c (Fstring_to_number): Don't recognize floating point if
116 1999-11-15 MORIOKA Tomohiko <tomo@urania.m17n.org>
118 * mule-charset.c (Fput_char_attribute): Forgot to `CHECK_CHAR'.
120 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
122 * mule-charset.c (Qsquare): New variable.
123 (to_char_code): Add `Qsquare'.
124 (syms_of_mule_charset): Add new symbol `square'.
126 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
128 * mule-charset.c (Qcircle): New variable.
129 (to_char_code): Add `Qcircle'.
130 (syms_of_mule_charset): Add new symbol `circle'.
132 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
134 * mule-charset.c (Qfont): New variable.
135 (to_char_code): Add `Qfont'.
136 (syms_of_mule_charset): Add new symbol `font'.
138 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
140 * mule-charset.c (Qsub): New variable.
141 (to_char_code): Add `Qsub'.
142 (syms_of_mule_charset): Add new symbol `sub'.
144 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
146 * mule-charset.c (Fput_char_attribute): Convert each element of
147 VALUE to GL position if ATTRIBUTE is a GR-set,
149 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
151 * mule-charset.c (Fput_char_attribute): Allow GR code-point if a
152 coded-charset is a GR-set.
154 1999-11-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
156 * mule-charset.c (Fput_char_attribute): Check each element of
157 VALUE is a byte if ATTRIBUTE is a coded-charset or its name.
159 1999-11-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
161 * mule-charset.c (Vcharset_ethiopic_ucs): New variable in
163 (Qethiopic_ucs): New variable in UTF-2000.
164 (syms_of_mule_charset): Add new symbol `ethiopic-ucs' in UTF-2000.
165 (complex_vars_of_mule_charset): Add new coded-charset
166 `ethiopic-ucs' in UTF-2000.
168 * char-ucs.h (LEADING_BYTE_ETHIOPIC_UCS): New macro.
169 (LEADING_BYTE_HIRAGANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
171 (LEADING_BYTE_KATAKANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
173 (LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 11)'.
175 1999-11-13 MORIOKA Tomohiko <tomo@etl.go.jp>
177 * mule-charset.c (Fset_charset_mapping_table): Fix problem with
180 1999-11-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
182 * mule-charset.c (Vcharacter_variant_table): New variable.
183 (Q_ucs): New variable.
184 (Fchar_variants): New function.
185 (Fput_char_attribute): Register `->ucs' value to
186 `Vcharacter_variant_table'.
187 (syms_of_mule_charset): Add new function `char-variants' and new
189 (vars_of_mule_charset): Setup `Vcharacter_variant_table'.
191 1999-11-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
193 * mule-charset.c (get_char_code_table): Allow negative character
195 (put_char_code_table): Likewise.
196 (Vcharacter_composition_table): New variable.
197 (Q_decomposition): New variable.
198 (Qwide): New variable.
199 (Qnarrow): New variable.
200 (Qcompat): New variable.
201 (QnoBreak): New variable.
202 (Qsuper): New variable.
203 (Qfraction): New variable.
204 (to_char_code): New function.
205 (Fget_composite_char): New function.
206 (Fput_char_attribute): Register `->decomposition' value to
207 `Vcharacter_composition_table'.
208 (syms_of_mule_charset): Add new function `get-composite-char', new
209 symbol `->decomposition', `wide', `narrow', `compat', `noBreak',
210 `super' and `fraction'.
211 (vars_of_mule_charset): Setup `Vcharacter_composition_table'.
213 1999-11-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
215 * mule-charset.c (Fchar_attribute_alist): Check the argument is a
216 character; copy the return value.
218 1999-11-12 MORIOKA Tomohiko <tomo@etl.go.jp>
220 * char-ucs.h (SPLIT_CHAR): Use `split_builtin_char'.
222 * mule-charset.c (range_charset_code_point): Must use make_int.
223 (split_builtin_char): New function.
225 1999-11-12 MORIOKA Tomohiko <tomo@etl.go.jp>
227 * mule-charset.c (char_byte_table): Change name from
228 "char-code-table" to "char-byte-table".
229 (mark_char_code_table): New function.
230 (char_code_table_equal): New function.
231 (char_code_table_hash): New function.
232 (char_code_table_description): New constant.
233 (char_code_table): New type.
234 (make_char_code_table): New function.
235 (copy_char_code_table): New function.
236 (get_char_code_table): Modify for `char_code_table' type.
237 (put_char_code_table): Likewise.
238 (vars_of_mule_charset): Update `utf-2000-version' to 0.12
241 * char-ucs.h (char_code_table): New type.
242 (XCHAR_CODE_TABLE): New macro.
243 (XSETCHAR_CODE_TABLE): New macro.
244 (CHAR_CODE_TABLE_P): New macro.
245 (GC_CHAR_CODE_TABLE_P): New macro.
246 (struct Lisp_Char_Code_Table): New structure.
248 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
250 * mule-charset.c (Fmake_charset): Setup byte_offset for
253 1999-11-09 MORIOKA Tomohiko <tomo@urania.m17n.org>
255 * mule-charset.c (Fdefine_char): Fix problem with non-UCS
258 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
260 * char-ucs.h (SPLIT_CHAR): Don't make new cell if a charset slot
263 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
265 * mule-charset.c (Fget_char_attribute): If ATTRIBUTE is a name of
266 charset, it is regarded as a charset.
267 (put_char_attribute): New function in UTF-2000.
268 (Fput_char_attribute): If ATTRIBUTE is a charset or a name of
269 charset, mapping-table of the charset is modified.
270 (Fdefine_char): New function in UTF-2000.
271 (Fset_charset_mapping_table): Use `put_char_attribute' instead of
272 `Fput_char_attribute'.
273 (syms_of_mule_charset): Add new function `define-char' and new
274 symbol `ucs' in UTF-2000.
275 (vars_of_mule_charset): Update `utf-2000-version' to 0.11 (Shiki).
277 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
279 * mule-charset.c (Fcharset_name): Define `byte_offset' in
280 non-UTF-2000 configuration.
282 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
284 * text-coding.c (char_encode_shift_jis): Use `charset_code_point'
285 not to use `XCHARSET_ENCODING_TABLE (Vcharset_latin_jisx0201)'.
287 * mule-charset.c (mark_charset): `cs->encoding_table' has been
289 (make_charset): Don't use `CHARSET_ENCODING_TABLE(cs)'.
290 (Fset_charset_mapping_table): Likewise.
292 * char-ucs.h (struct Lisp_Charset): Delete `encoding_table'.
293 (CHARSET_ENCODING_TABLE): Delete.
294 (XCHARSET_ENCODING_TABLE): Delete.
295 (charset_code_point): New interface.
297 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
299 * text-coding.c (char_encode_iso2022): Use `charset_code_point'
300 instead of `charset_get_byte1' and `charset_get_byte2'.
302 * mule-charset.c, char-ucs.h (charset_get_byte1): Deleted.
303 (charset_get_byte2): Deleted.
305 1999-10-28 MORIOKA Tomohiko <tomo@etl.go.jp>
307 * char-ucs.h (SPLIT_CHAR): New inline function.
308 (breakup_char_1): Use `SPLIT_CHAR'.
310 * mule-charset.c (range_charset_code_point): New function.
311 (charset_code_point): New function.
313 * char-ucs.h (range_charset_code_point): New interface.
314 (breakup_char_1): Use `range_charset_code_point'.
316 1999-10-27 MORIOKA Tomohiko <tomo@etl.go.jp>
318 * mule-charset.c (Fmake_charset): Delete unused local variable
321 * char-ucs.h (Vcharacter_attribute_table): New extern variable.
322 (breakup_char_1): Find a charset and code-point in
323 `Vcharacter_attribute_table'.
325 1999-10-27 MORIOKA Tomohiko <tomo@etl.go.jp>
327 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
330 1999-10-25 MORIOKA Tomohiko <tomo@etl.go.jp>
332 * mule-charset.c (Vcharacter_attribute_table): New variable.
333 (Fchar_attribute_alist): New function.
334 (Fget_char_attribute): New function.
335 (Fput_char_attribute): New function.
336 (Fset_charset_mapping_table): Setup `Vcharacter_attribute_table'
338 (syms_of_mule_charset): Add new function `char-attribute-alist',
339 `get-char-attribute' and `put-char-attribute'.
340 (vars_of_mule_charset): Setup `Vcharacter_attribute_table'.
342 1999-10-19 MORIOKA Tomohiko <tomo@etl.go.jp>
344 * mule-charset.c (Fmake_charset): Just use
345 `get_unallocated_leading_byte'.
347 * char-ucs.h (LEADING_BYTE_*): Use ISO-IR numbers for official
348 sets; don't use final-byte based number for private sets.
350 1999-10-12 MORIOKA Tomohiko <tomo@etl.go.jp>
352 * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
355 1999-10-12 MORIOKA Tomohiko <tomo@etl.go.jp>
357 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
360 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
362 * regex.c (compile_extended_range): Use `CHAR_CHARSET_ID' instead
363 of `CHAR_LEADING_BYTE' in UTF-2000.
365 * insdel.c (find_charsets_in_bufbyte_string): Use
366 `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
367 (find_charsets_in_emchar_string): Likewise.
369 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use
370 `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
372 * char-ucs.h (CHAR_LEADING_BYTE): Deleted.
373 (CHAR_CHARSET_ID): New macro.
375 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
377 * chartab.c (get_char_table): Don't use type `Charset_ID' for
378 charset-id - MIN_LEADING_BYTE.
379 (put_char_table): Likewise.
381 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
383 * char-ucs.h (MIN_LEADING_BYTE): Changed to `-0x40'.
384 (NUM_LEADING_BYTES): Changed to (80 * 3 - MIN_LEADING_BYTE).
385 (CHARSET_LEADING_BYTE): Don't cast by `Bufbyte'.
386 (CHARSET_ID_OFFSET): New macro.
387 (LEADING_BYTE_CONTROL_1): Changed to (CHARSET_ID_OFFSET - 1).
388 (LEADING_BYTE_UCS_BMP): Changed to (CHARSET_ID_OFFSET - 2).
389 (LEADING_BYTE_LATIN_VISCII): Changed to (CHARSET_ID_OFFSET - 3).
390 (LEADING_BYTE_HIRAGANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
392 (LEADING_BYTE_KATAKANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
394 (MIN_LEADING_BYTE_PRIVATE): Changed to `MIN_LEADING_BYTE'.
395 (MAX_LEADING_BYTE_PRIVATE): Changed to (CHARSET_ID_OFFSET - 6).
396 (CHARSET_ID_OFFSET_94): Changed to (CHARSET_ID_OFFSET - '0').
397 (CHARSET_ID_OFFSET_96): Changed to (CHARSET_ID_OFFSET_94 + 80).
398 (CHARSET_ID_OFFSET_94x94): Changed to (CHARSET_ID_OFFSET_96 + 80).
400 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
402 * mule-charset.c (next_allocated_leading_byte): New variable in
404 (next_allocated_1_byte_leading_byte): Don't define in UTF-2000.
405 (next_allocated_2_byte_leading_byte): Don't define in UTF-2000.
406 (get_unallocated_leading_byte): Simply use
407 `next_allocated_leading_byte' [ignore dimension] in UTF-2000.
408 (vars_of_mule_charset): Setup `next_allocated_leading_byte' in
411 * char-ucs.h (MIN_LEADING_BYTE_PRIVATE): New macro.
412 (MAX_LEADING_BYTE_PRIVATE): New macro.
413 (MIN_LEADING_BYTE_OFFICIAL_2): Deleted.
414 (MAX_LEADING_BYTE_OFFICIAL_2): Deleted.
416 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
418 * mule-charset.c (Fmake_charset): Allocate final-byte based
419 charset-id for 94-set, 96-set and 94x94-set.
421 1999-10-11 MORIOKA Tomohiko <tomo@etl.go.jp>
423 * mule-charset.c (char_byte_table_equal): Fill braces to avoid
425 (Fmake_charset): Likewise.
426 (complex_vars_of_mule_charset): Modify the font registry of
427 `ucs-bmp' not to match `Ethiopic-Unicode'.
429 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
431 * mule-charset.c (complex_vars_of_mule_charset): Add font
432 registory of `ucs-bmp'.
434 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
436 * text-coding.c (char_encode_iso2022): Ignore non-ISO-2022
437 coded-charsets in `default-coded-charset-priority-list' when
438 breaking up a character.
440 * mule-charset.c (Vcharset_latin_viscii): New variable.
441 (Qlatin_viscii): New variable.
442 (make_charset): Don't use `decoding_table'.
443 (Fmake_charset): Regard graphic = 2 as 256^n-set; setup
445 (Fset_charset_mapping_table): New implementation.
446 (syms_of_mule_charset): Add new symbol `latin-viscii'.
447 (complex_vars_of_mule_charset): Set `graphic' attribute of charset
448 `ucs-bmp' and `latin_viscii' to 2; change font registry of charset
449 `latin-viscii-lower' to "MULEVISCII-LOWER"; change font registry
450 of charset `latin-viscii-upper' to "MULEVISCII-UPPER"; add new
451 charset `latin_viscii'.
453 * char-ucs.h (LEADING_BYTE_LATIN_VISCII): New macro.
454 (CHARSET_TYPE_94X94): Change to 1 from 2.
455 (CHARSET_TYPE_96): Change to 2 from 1.
456 (CHARSET_TYPE_128): New macro.
457 (CHARSET_TYPE_128X128): Change to 5 from 4.
458 (CHARSET_TYPE_256): New macro.
459 (CHARSET_TYPE_256X256): Change to 7 from 5.
460 (MAKE_CHAR): Use `XCHARSET_BYTE_OFFSET(charset)'.
462 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
464 * text-coding.c (char_encode_shift_jis): Refer
465 `XCHARSET_ENCODING_TABLE(Vcharset_latin_jisx0201)' instead of
466 `XCHARSET_TO_BYTE1_TABLE(Vcharset_latin_jisx0201)'.
468 * mule-charset.c (mark_char_byte_table): New function in UTF-2000.
469 (char_byte_table_equal): New function in UTF-2000.
470 (char_byte_table_hash): New function in UTF-2000.
471 (char_byte_table_description): New constant in UTF-2000.
472 (char_byte_table): New type in UTF-2000.
473 (make_char_byte_table): New function in UTF-2000.
474 (copy_char_byte_table): New function in UTF-2000.
475 (make_char_code_table): New macro in UTF-2000.
476 (get_char_code_table): New function in UTF-2000.
477 (put_char_code_table): New function in UTF-2000.
478 (mark_charset): Mark `cs->encoding_table' in UTF-2000.
479 (charset_description): Add setting in UTF-2000.
480 (make_charset): Setup `CHARSET_ENCODING_TABLE(cs)' instead of
481 `CHARSET_TO_BYTE1_TABLE(cs)'.
482 (charset_get_byte1): Refer `XCHARSET_ENCODING_TABLE(charset)'
483 instead of `XCHARSET_TO_BYTE1_TABLE(charset)'.
484 (charset_get_byte2): Refer `XCHARSET_ENCODING_TABLE(charset)'
485 instead of `XCHARSET_TO_BYTE2_TABLE(charset)'.
486 (Fset_charset_mapping_table): Setup `CHARSET_ENCODING_TABLE(cs)'
487 instead of `CHARSET_TO_BYTE1_TABLE(cs)' and
488 `CHARSET_TO_BYTE2_TABLE(cs)'.
490 * char-ucs.h (char_byte_table): New type.
491 (XCHAR_BYTE_TABLE): New macro.
492 (XSETCHAR_BYTE_TABLE): New macro.
493 (CHAR_BYTE_TABLE_P): New macro.
494 (GC_CHAR_BYTE_TABLE_P): New macro.
495 (struct Lisp_Char_Byte_Table): New structure.
496 (get_char_code_table): New interface.
497 (Emchar_to_byte_table): Deleted.
498 (get_byte_from_character_table): Deleted.
499 (struct Lisp_Charset): Add `encoding_table'; delete
500 `to_byte1_table' and `to_byte2_table'.
501 (CHARSET_ENCODING_TABLE): New macro.
502 (CHARSET_TO_BYTE1_TABLE): Deleted.
503 (CHARSET_TO_BYTE2_TABLE): Deleted.
504 (XCHARSET_ENCODING_TABLE): New macro.
505 (XCHARSET_TO_BYTE1_TABLE): Deleted.
506 (XCHARSET_TO_BYTE2_TABLE): Deleted.
508 1999-10-07 MORIOKA Tomohiko <tomo@etl.go.jp>
510 * mule-charset.c (syms_of_mule_charset): Delete charset alias
511 `vietnamese-viscii-*'.
513 1999-10-07 MORIOKA Tomohiko <tomo@etl.go.jp>
515 * mule-charset.c (Qvietnamese_viscii_lower): New variable.
516 (Qvietnamese_viscii_upper): New variable.
517 (Fdefine_charset_alias): New function.
518 (syms_of_mule_charset): Add new function `define-charset-alias'.
519 (syms_of_mule_charset): Rename charset `vietnamese-viscii-*' to
520 `latin-viscii-*'; define `vietnamese-viscii-*' as aliases for
523 1999-10-04 MORIOKA Tomohiko <tomo@etl.go.jp>
525 * char-ucs.h (MIN_CHAR_OBS_94x94): New macro.
526 (MAX_CHAR_OBS_94x94): New macro.
527 (breakup_char_1): Support obsolete XEmacs-UCS private code space
530 * mule-charset.c (put_byte_from_character_table): Change unit size
532 (mark_charset): Don't mark `cs->decoding_table' if `UTF2000' is
534 (Fmake_reverse_direction_charset): Modify dummy argument of
535 `make_charset' for non-UTF-2000 environment.
537 1999-10-03 MORIOKA Tomohiko <tomo@urania.m17n.org>
539 * char-ucs.h (MAKE_CHAR): Allow nested decoding-table.
541 * mule-charset.c (destroy_byte_from_character_table): New macro.
542 (latin_jisx0201_to_ucs): Deleted.
543 (latin_iso8859_2_to_ucs): Deleted.
544 (latin_iso8859_3_to_ucs): Deleted.
545 (latin_iso8859_4_to_ucs): Deleted.
546 (latin_iso8859_9_to_ucs): Deleted.
547 (latin_viscii_lower_to_ucs): Deleted.
548 (latin_viscii_upper_to_ucs): Deleted.
549 (mark_charset): Mark `cs->decoding_table'.
550 (Fcharset_mapping_table): Fix DOC-string.
551 (Fset_charset_mapping_table): New function.
552 (syms_of_mule_charset): Add nwe function
553 `set-charset-mapping-table'.
554 (complex_vars_of_mule_charset): Don't setup and use
557 1999-10-01 MORIOKA Tomohiko <tomo@urania.m17n.org>
559 * char-ucs.h (MAKE_CHAR): Check the result for range-represented
562 1999-09-30 MORIOKA Tomohiko <tomo@urania.m17n.org>
564 * mule-charset.c (Vcharset_hiragana_jisx0208): New variable.
565 (Vcharset_katakana_jisx0208): New variable.
566 (Qhiragana_jisx0208): New variable.
567 (Qkatakana_jisx0208): New variable.
568 (make_charset): Add new argument `byte_offset'.
569 (charset_get_byte1): Modify for new coded-charset definition; use
570 `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
571 `XCHARSET_BYTE_OFFSET'.
572 (Fmake_charset): Modify for `make_charset'.
573 (Fmake_reverse_direction_charset): Likewise.
574 (syms_of_mule_charset): Add new symbols `hiragana-jisx0208' and
576 (complex_vars_of_mule_charset): Modify for `make_charset'; quote
577 `.' in font registry of charset `katakana-jisx0201',
578 `latin-jisx0201', `vietnamese-viscii-lower' and
579 `vietnamese-viscii-upper'; modify DOC-string of charset
580 `japanese-jisx0208-1978' and `japanese-jisx0208'; modify font
581 registry of charset `japanese-jisx0208' not to use font for JIS
582 X0208:1990; add new charset `hiragana-jisx0208' and
585 * char-ucs.h (LEADING_BYTE_HIRAGANA_JISX0208): New macro.
586 (LEADING_BYTE_KATAKANA_JISX0208): New macro.
587 (struct Lisp_Charset): Add `byte_offset'.
588 (CHARSET_BYTE_OFFSET): New macro.
589 (XCHARSET_UCS_MIN): New macro.
590 (XCHARSET_UCS_MAX): New macro.
591 (XCHARSET_CODE_OFFSET): New macro.
592 (XCHARSET_BYTE_OFFSET): New macro.
593 (MIN_CHAR_HIRAGANA): New macro.
594 (MAX_CHAR_HIRAGANA): New macro.
595 (MIN_CHAR_KATAKANA): New macro.
596 (MAX_CHAR_KATAKANA): New macro.
597 (MAKE_CHAR): Modify for new coded-charset definition; use
598 `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
599 `XCHARSET_BYTE_OFFSET'.
601 1999-09-27 MORIOKA Tomohiko <tomo@etl.go.jp>
603 * mule-charset.c (CHAR96): Deleted.
604 (latin_jisx0201_to_ucs): Type is changed from array of <Emchar> to
606 (latin_iso8859_2_to_ucs): Likewise.
607 (latin_iso8859_3_to_ucs): Likewise.
608 (latin_iso8859_4_to_ucs): Likewise.
609 (latin_iso8859_9_to_ucs): Likewise.
610 (latin_viscii_lower_to_ucs): Likewise.
611 (latin_viscii_upper_to_ucs): Likewise.
612 (latin_tcvn5712_to_ucs): Commented out.
613 (make_charset): Change type of argument `decoding_table' from
614 <Emchar*> to <Lisp_Object> [vector of characters].
615 (Fmake_charset): Modify for `make_charset'.
616 (Fmake_reverse_direction_charset): Likewise.
617 (Fcharset_mapping_table): New function in UTF-2000.
618 (syms_of_mule_charset): Setup `Fcharset_mapping_table' in
620 (complex_vars_of_mule_charset): Modify for type change of
621 `*_to_ucs'; modify for `make_charset'.
623 * char-ucs.h (struct Lisp_Charset): Change type of
624 `decoding_table' from <Emchar*> to <Lisp_Object>.
625 (MAKE_CHAR): Modify for new specification of `decoding_table'.
627 1999-09-23 MORIOKA Tomohiko <tomo@etl.go.jp>
629 * mule-charset.c (Fmake_reverse_direction_charset): Fix compile
630 error with non-UTF-2000-Mule.
632 1999-09-21 MORIOKA Tomohiko <tomo@etl.go.jp>
634 * mule-charset.c (Vcharset_chinese_cns11643_3): Deleted [defined
636 (Vcharset_chinese_cns11643_4): Likewise.
637 (Vcharset_chinese_cns11643_5): Likewise.
638 (Vcharset_chinese_cns11643_6): Likewise.
639 (Vcharset_chinese_cns11643_7): Likewise.
640 (Qchinese_cns11643_3): Likewise.
641 (Qchinese_cns11643_4): Likewise.
642 (Qchinese_cns11643_5): Likewise.
643 (Qchinese_cns11643_6): Likewise.
644 (Qchinese_cns11643_7): Likewise.
645 (syms_of_mule_charset): Move definitions for `chinese-cns11643-3',
646 `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
647 and `chinese-cns11643-7' to lisp/mule/chinese.el.
648 (complex_vars_of_mule_charset): Likewise.
650 1999-09-18 MORIOKA Tomohiko <tomo@etl.go.jp>
652 * mule-charset.c (charset_get_byte1): Fix bug about 94- and
654 (Fmake_reverse_direction_charset): Inherit CHARSET_DECODING_TABLE,
655 CHARSET_UCS_MIN, CHARSET_UCS_MAX and CHARSET_CODE_OFFSET.
657 1999-09-17 MORIOKA Tomohiko <tomo@etl.go.jp>
659 * char-ucs.h (MIN_CHAR_HALFWIDTH_KATAKANA): Changed to 0xFF61 from
661 (MAKE_CHAR): Change offset for katakana-jisx0201 to 33 from 0x20.
662 (breakup_char_1): Likewise.
664 * text-coding.c (char_encode_iso2022): Keep designated charsets if
665 one of them includes the specified character.
667 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
669 * mule-charset.c: Update `utf-2000-version' to 0.8 (Kami).
671 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
673 * char-ucs.h (MAKE_CHAR): Fix problem in 2-dimension charset.
675 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
677 * mule-charset.c (latin_iso8859_2_to_ucs NULL): Add pseudo
678 definition for non-UTF-2000 Mule.
679 (latin_iso8859_3_to_ucs): Likewise.
680 (latin_iso8859_4_to_ucs): Likewise.
681 (latin_iso8859_9_to_ucs): Likewise.
682 (latin_jisx0201_to_ucs): Likewise.
683 (MIN_CHAR_THAI): Likewise.
684 (MAX_CHAR_THAI): Likewise.
685 (MIN_CHAR_GREEK): Likewise.
686 (MAX_CHAR_GREEK): Likewise.
687 (MIN_CHAR_HEBREW): Likewise.
688 (MAX_CHAR_HEBREW): Likewise.
689 (MIN_CHAR_HALFWIDTH_KATAKANA): Likewise.
690 (MAX_CHAR_HALFWIDTH_KATAKANA): Likewise.
691 (MIN_CHAR_CYRILLIC): Likewise.
692 (MAX_CHAR_CYRILLIC): Likewise.
694 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
696 * char-ucs.h (breakup_char_1): Use
697 `Vdefault_coded_charset_priority_list' for hebrew-iso8859-8,
698 thai-tis620 and katakana-jisx0201 area.
700 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
702 * char-ucs.h (breakup_char_1): Use
703 `Vdefault_coded_charset_priority_list' for cyrillic-iso8859-5
706 * text-coding.c (reset_encoding_stream): Fixed.
707 (char_encode_ucs4): Delete `& 255'.
709 * char-ucs.h (breakup_char_1): Use
710 `Vdefault_coded_charset_priority_list' for greek-iso8859-7 area.
712 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
714 * file-coding.c (Fmake_coding_system): Don't set up
715 `codesys->fixed.size'.
716 (encode_coding_no_conversion): Don't refer
717 `str->codesys->fixed.size'.
719 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
721 * mule-charset.c, char-ucs.h (latin_a_char_to_charset): Deleted.
722 (latin_a_char_to_byte1): Deleted.
723 (latin_a_char_to_byte2): Deleted.
725 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
727 * mule-charset.c (make_charset): Add new argument `ucs_min',
728 `ucs_max' and `code_offset'.
729 (charset_get_byte1): New implementation [delete specific charset
730 depended implementations].
731 (Fmake_charset): Modify for `make_charset'.
732 (Fmake_reverse_direction_charset): Likewise.
733 (complex_vars_of_mule_charset): Likewise.
735 * char-ucs.h (struct Lisp_Charset): Add `ucs_min', `ucs_max' and
737 (CHARSET_UCS_MIN): New macro.
738 (CHARSET_UCS_MAX): New macro.
739 (CHARSET_CODE_OFFSET): New macro.
740 (MAKE_CHAR): Delete charset depended definitions [except
743 1999-09-13 MORIOKA Tomohiko <tomo@etl.go.jp>
745 * char-ucs.h (breakup_char_1): Use
746 `Vdefault_coded_charset_priority_list' for C0-Controls,
747 Basic-Latin, C1-Controls and Latin-1-Supplement area.
749 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
751 * char-ucs.h (charset_get_byte1): New function.
752 (XCHARSET_GET_BYTE1): Deleted.
753 (charset_get_byte2): New function.
754 (XCHARSET_GET_BYTE2): Deleted.
755 (Vdefault_coded_charset_priority_list): New external variable.
756 (breakup_char_1): Use `charset_get_byte1', `charset_get_byte2' and
757 `Vdefault_preferred_coded_charset_list'.
759 * mule-charset.c (charset_get_byte1): New function.
760 (charset_get_byte2): New function.
761 (Vdefault_coded_charset_priority_list): New variable.
762 (vars_of_mule_charset): Add new variable
763 `default-coded-charset-priority-list'.
765 1999-09-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
767 * char-ucs.h (XCHARSET_GET_BYTE1): New inline function.
768 (XCHARSET_GET_BYTE2): New inline function.
769 (breakup_char_1): Use `XCHARSET_GET_BYTE1' and
770 `XCHARSET_GET_BYTE2'.
772 1999-09-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
774 * mule-charset.c (make_charset): Initialize
775 `CHARSET_TO_BYTE1_TABLE(cs)' and `CHARSET_TO_BYTE2_TABLE(cs)' by
776 NULL if table is not defined.
778 1999-09-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
780 * text-coding.c (char_encode_shift_jis): Use
781 `XCHARSET_TO_BYTE1_TABLE' for `Vcharset_latin_jisx0201' instead of
782 `ucs_to_latin_jisx0201'.
784 * mule-charset.c (ucs_to_latin_jisx0201): Deleted.
785 (ucs_to_latin_iso8859_2): Deleted.
786 (ucs_to_latin_iso8859_3): Deleted.
787 (ucs_to_latin_iso8859_4): Deleted.
788 (ucs_to_latin_iso8859_9): Deleted.
789 (ucs_to_latin_viscii_lower): Deleted.
790 (ucs_to_latin_viscii_upper): Deleted.
791 (ucs_to_latin_tcvn5712): Deleted.
792 (make_charset): Add new argument `decoding_table'; set up
793 `CHARSET_DECODING_TABLE(cs)' in UTF-2000; set up
794 `CHARSET_TO_BYTE1_TABLE(cs)' for 94-set and 96-set if
795 `decoding_table' is defined in UTF-2000.
796 (Fmake_charset): Modify for `make_charset'.
797 (Fmake_reverse_direction_charset): Likewise.
798 (complex_vars_of_mule_charset): Likewise; delete `GENERATE_94_SET'
799 and `GENERATE_96_SET'.
801 * char-ucs.h (latin_jisx0201_to_ucs): Deleted.
802 (ucs_to_latin_jisx0201): Deleted.
803 (latin_iso8859_2_to_ucs): Deleted.
804 (ucs_to_latin_iso8859_2): Deleted.
805 (latin_iso8859_3_to_ucs): Deleted.
806 (ucs_to_latin_iso8859_3): Deleted.
807 (latin_iso8859_4_to_ucs): Deleted.
808 (ucs_to_latin_iso8859_4): Deleted.
809 (latin_iso8859_9_to_ucs): Deleted.
810 (ucs_to_latin_iso8859_9): Deleted.
811 (latin_viscii_lower_to_ucs): Deleted.
812 (ucs_to_latin_viscii_lower): Deleted.
813 (latin_viscii_upper_to_ucs): Deleted.
814 (ucs_to_latin_viscii_upper): Deleted.
815 (struct Lisp_Charset): Renamed `encoding_table' to
816 `to_byte1_table'; add `to_byte2_table'.
817 (CHARSET_DECODING_TABLE): New macro.
818 (CHARSET_TO_BYTE1_TABLE): New macro.
819 (CHARSET_TO_BYTE2_TABLE): New macro.
820 (XCHARSET_DECODING_TABLE): New macro.
821 (XCHARSET_TO_BYTE1_TABLE): New macro.
822 (XCHARSET_TO_BYTE2_TABLE): New macro.
823 (MAKE_CHAR): Use `XCHARSET_DECODING_TABLE'; don't use `*_to_ucs'
825 (breakup_char_1): Use `XCHARSET_TO_BYTE1_TABLE' if it is defined;
826 don't use `ucs_to_*' tables.
828 1999-09-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
830 * text-coding.c (Fmake_coding_system): Don't set up
831 `codesys->fixed.size'.
832 (encode_coding_no_conversion): Use `if' instead of `switch'.
834 * file-coding.h (struct Lisp_Coding_System): Delete `fixed.size'.
836 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
838 * mule-charset.c (make_charset): Delete argument `rep_bytes'.
839 (Fmake_charset): Modify for `make_charset'.
840 (Fmake_reverse_direction_charset): Likewise.
841 (complex_vars_of_mule_charset): Likewise.
843 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
845 * text-coding.c (char_encode_shift_jis): Use table
846 `ucs_to_latin_jisx0201' and BREAKUP_CHAR.
848 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
850 * text-coding.c (text_encode_generic): Use `if' instead of
852 (decode_coding_sjis): Use `MAKE_CHAR' and `DECODE_ADD_UCS_CHAR' to
855 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
857 * text-coding.c (encode_coding_sjis): Deleted.
858 (char_encode_shift_jis): New function.
859 (char_finish_shift_jis): New function.
860 (reset_encoding_stream): Set up `encode_char' and `finish' for
861 `CODESYS_UCS4' and `CODESYS_SHIFT_JIS'.
862 (mule_encode): Use generic encoder for `CODESYS_SHIFT_JIS'.
863 (char_encode_utf8): Treat `eol_type'.
865 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
867 * file-coding.c (decode_coding_iso2022): Use
868 `DECODE_ADD_UCS_CHAR'; don't use `XCHARSET_REP_BYTES'.
870 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
872 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
875 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
877 * char-lb.h (CHAR_COLUMNS): New macro.
879 1999-09-09 MORIOKA Tomohiko <tomo@etl.go.jp>
881 * text-coding.c (char_encode_ucs4): New function.
882 (char_finish_ucs4): New function.
883 (encode_coding_ucs4): Deleted.
884 (mule_encode): Use generic encoder for `CODESYS_UCS4'.
885 (text_encode_generic): Delete local variable `charset' and `half'.
886 (ucs_to_mule_table): Deleted.
887 (mule_to_ucs_table): Deleted.
888 (Fset_ucs_char): Deleted.
889 (ucs_to_char): Deleted.
890 (Fucs_char): Deleted.
891 (Fset_char_ucs): Deleted.
892 (Fchar_ucs): Deleted.
893 (decode_ucs4): Deleted.
894 (mule_char_to_ucs4): Deleted.
895 (encode_ucs4): Deleted.
896 (decode_coding_ucs4): Use `DECODE_ADD_UCS_CHAR'.
897 (decode_coding_utf8): Likewise.
898 (decode_coding_iso2022): Likewise; don't use `XCHARSET_REP_BYTES'.
899 (char_encode_iso2022): Fixed.
900 (syms_of_file_coding): Delete `Fset_ucs_char', `Fucs_char',
901 `Fset_char_ucs' and `Fchar_ucs'.
902 (complex_vars_of_file_coding): Don't initialize
905 * objects-tty.c (tty_initialize_font_instance): Don't use
908 * mule-charset.c (make_charset): Don't set up CHARSET_REP_BYTES in
911 * redisplay-tty.c (tty_output_display_block): Use `CHAR_COLUMNS'
912 instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
914 * insdel.c (bufbyte_string_displayed_columns): Use `CHAR_COLUMNS'
915 instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
916 (emchar_string_displayed_columns): Likewise.
918 * indent.c (column_at_point): Use `CHAR_COLUMNS' instead of
919 `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
920 (string_column_at_point): Likewise.
921 (Fmove_to_column): Likewise.
923 * char-ucs.h (struct Lisp_Charset): Delete `rep_bytes'; add
924 `encoding_table' and `decoding_table'.
925 (CHARSET_REP_BYTES): Deleted.
926 (XCHARSET_REP_BYTES): Deleted.
927 (XCHARSET_COLUMNS): Deleted.
928 (CHAR_COLUMNS): New macro.
929 (lookup_composite_char): Deleted unconditionally.
930 (composite_char_string): Likewise.
932 1999-09-09 MORIOKA Tomohiko <tomo@etl.go.jp>
934 * char-ucs.h (Emchar_to_byte_table): New type.
935 (get_byte_from_character_table): New function interface.
936 (Vcharset_latin_jisx0201): New variable.
937 (latin_jisx0201_to_ucs): New variable.
938 (ucs_to_latin_jisx0201): New variable.
939 (Vcharset_latin_iso8859_2): New variable.
940 (latin_iso8859_2_to_ucs): New variable.
941 (ucs_to_latin_iso8859_2): New variable.
942 (Vcharset_latin_iso8859_3): New variable.
943 (latin_iso8859_3_to_ucs): New variable.
944 (ucs_to_latin_iso8859_3): New variable.
945 (Vcharset_latin_iso8859_4): New variable.
946 (latin_iso8859_4_to_ucs): New variable.
947 (ucs_to_latin_iso8859_4): New variable.
948 (Vcharset_latin_iso8859_9): New variable.
949 (latin_iso8859_9_to_ucs): New variable.
950 (ucs_to_latin_iso8859_9): New variable.
951 (Vcharset_latin_viscii_lower): New variable.
952 (latin_viscii_lower_to_ucs): New variable.
953 (ucs_to_latin_viscii_lower): New variable.
954 (Vcharset_latin_viscii_upper): New variable.
955 (latin_viscii_upper_to_ucs): New variable.
956 (ucs_to_latin_viscii_upper): New variable.
957 (CHARSET_ID_OFFSET_94): Changed from 0x60 to 0x55.
958 (LEADING_BYTE_LATIN_VISCII_LOWER): New macro.
959 (LEADING_BYTE_LATIN_VISCII_UPPER): New macro.
960 (MAKE_CHAR): Map `latin-iso8859-2', `latin-iso8859-3',
961 `latin-iso8859-4', `latin-iso8859-9', `latin-jisx0201',
962 `vietnamese-viscii-lower' and `vietnamese-viscii-upper' to BMP.
963 (breakup_char_1): Use `ucs_to_latin_iso8859_2',
964 `ucs_to_latin_iso8859_3', `ucs_to_latin_iso8859_4',
965 `ucs_to_latin_iso8859_9', `ucs_to_latin_viscii_lower',
966 `ucs_to_latin_viscii_upper' and `ucs_to_latin_jisx0201' tables.
968 * mule-charset.c (Vcharset_latin_viscii_lower): New variable.
969 (Vcharset_latin_viscii_upper): New variable.
970 (make_byte_from_character_table): New function.
971 (put_byte_from_character_table): New function.
972 (get_byte_from_character_table): New function.
974 (ucs_to_latin_jisx0201): New variable.
975 (latin_jisx0201_to_ucs): New variable.
976 (ucs_to_latin_iso8859_2): New variable.
977 (latin_iso8859_2_to_ucs): New variable.
978 (ucs_to_latin_iso8859_3): New variable.
979 (latin_iso8859_3_to_ucs): New variable.
980 (ucs_to_latin_iso8859_4): New variable.
981 (latin_iso8859_4_to_ucs): New variable.
982 (ucs_to_latin_iso8859_9): New variable.
983 (latin_iso8859_9_to_ucs): New variable.
984 (ucs_to_latin_viscii_lower): New variable.
985 (latin_viscii_lower_to_ucs): New variable.
986 (ucs_to_latin_viscii_upper): New variable.
987 (latin_viscii_upper_to_ucs): New variable.
988 (ucs_to_latin_tcvn5712): New variable.
989 (latin_tcvn5712_to_ucs): New variable.
990 (Qlatin_viscii_lower): New variable.
991 (Qlatin_viscii_upper): New variable.
992 (syms_of_mule_charset): Set up new symbol
993 `vietnamese-viscii-lower' and `vietnamese-viscii-upper'.
994 (complex_vars_of_mule_charset): Set up new charset
995 `vietnamese-viscii-lower' and `vietnamese-viscii-upper'; new macro
996 `GENERATE_94_SET' and `GENERATE_96_SET'; use them to generate
997 `ucs_to_<CHARSET>' tables.
999 1999-09-08 MORIOKA Tomohiko <tomo@etl.go.jp>
1001 * text-coding.c: New file.
1003 1999-09-07 MORIOKA Tomohiko <tomo@etl.go.jp>
1005 * mule-charset.c (Fmake_char): Fix problem of 256-set.
1007 * char-ucs.h (Vcharset_ucs_bmp): New variable.
1008 (MAKE_CHAR): Modify for `ucs-bmp'.
1009 (breakup_char_1): Return `ucs-bmp' and code point of BMP for
1010 non-MULE characters of BMP.
1012 1999-09-06 MORIOKA Tomohiko <tomo@etl.go.jp>
1014 * mule-charset.c (vars_of_mule_charset):
1015 Update `utf-2000-version' to 0.6.
1017 1999-09-05 MORIOKA Tomohiko <tomo@urania.m17n.org>
1020 - Include multibyte.h instead of character.h for `BYTE_ASCII_P'.
1021 - Include character.h for `CHAR_ASCII_P'.
1023 * mb-multibyte.h (CHAR_MULTIBYTE_P): Moved from mule-charset.h.
1025 * mule-charset.h (CHAR_MULTIBYTE_P): Moved to mb-multibyte.h.
1026 (CHAR_ASCII_P): Don't use `CHAR_MULTIBYTE_P'.
1028 * mb-multibyte.h (BYTE_ASCII_P): Moved from char-ucs.h.
1029 (BYTE_C0_P): Likewise.
1030 (BYTE_C1_P): Likewise.
1031 (Lstream_get_emchar_1): Likewise.
1032 (Lstream_fput_emchar): Likewise.
1033 (Lstream_funget_emchar): Likewise.
1034 (copy_internal_to_external): Likewise.
1035 (copy_external_to_internal): Likewise.
1037 * char-ucs.h (BYTE_ASCII_P): Moved to mb-multibyte.h.
1038 (BYTE_C0_P): Likewise.
1039 (BYTE_C1_P): Likewise.
1040 (Lstream_get_emchar_1): Likewise.
1041 (Lstream_fput_emchar): Likewise.
1042 (Lstream_funget_emchar): Likewise.
1043 (copy_internal_to_external): Likewise.
1044 (copy_external_to_internal): Likewise.
1046 * mb-1byte.h (BYTE_ASCII_P): Moved from buffer.h.
1047 (REP_BYTES_BY_FIRST_BYTE): Likewise.
1049 * buffer.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-1byte.h.
1050 (BYTE_ASCII_P): Moved to mb-1byte.h.
1052 1999-09-04 MORIOKA Tomohiko <tomo@urania.m17n.org>
1054 * mb-utf-8.h, mb-lb.h: Include mb-multibyte.h.
1056 * multibyte.h: Include mb-1byte.h in unibyte-XEmacs.
1057 (MAX_EMCHAR_LEN): Moved to mb-1byte.h.
1058 (VALID_CHARPTR_P): Moved to mb-*byte.h.
1059 (VALIDATE_CHARPTR_BACKWARD): Likewise.
1060 (VALIDATE_CHARPTR_FORWARD): Likewise.
1061 (simple_charptr_emchar): Moved to mb-multibyte.h.
1062 (simple_set_charptr_emchar): Likewise.
1063 (simple_charptr_copy_char): Likewise.
1064 (non_ascii_charptr_emchar): Likewise.
1065 (non_ascii_set_charptr_emchar): Likewise.
1066 (non_ascii_charptr_copy_char): Likewise.
1067 (charptr_emchar): Moved to mb-*byte.h.
1068 (set_charptr_emchar): Likewise.
1069 (charptr_copy_char): Likewise.
1071 * mb-1byte.h, mb-multibyte.h: New files.
1073 1999-09-03 MORIOKA Tomohiko <tomo@urania.m17n.org>
1075 * mb-utf-8.h (MULTIBYTE): New macro.
1076 (MAX_EMCHAR_LEN): Moved from buffer.h.
1077 (REP_BYTES_BY_FIRST_BYTE): Moved from char-ucs.h.
1079 * char-ucs.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-utf-8.h.
1081 * mb-lb.h, multibyte.h: New files.
1083 * char-1byte.h (Charset_ID): Moved from buffer.h.
1084 (MIN_LEADING_BYTE): Likewise.
1085 (LEADING_BYTE_ASCII): Likewise.
1086 (NUM_LEADING_BYTES): Likewise.
1087 (CHARSETP): Likewise.
1088 (CHARSET_BY_LEADING_BYTE): Likewise.
1089 (XCHARSET_LEADING_BYTE): Likewise.
1090 (XCHARSET_GRAPHIC): Likewise.
1091 (XCHARSET_COLUMNS): Likewise.
1092 (XCHARSET_DIMENSION): Likewise.
1093 (CHAR_CHARSET): Likewise.
1094 (CHAR_LEADING_BYTE): Likewise.
1095 (BREAKUP_CHAR): Likewise.
1096 (Vcharset_ascii): Likewise.
1098 * buffer.h: Include multibyte.h unconditionally.
1099 (VALID_CHARPTR_P): Moved to multibyte.h.
1100 (ASSERT_VALID_CHARPTR): Likewise.
1101 (REAL_INC_CHARPTR): Likewise.
1102 (REAL_INC_CHARBYTIND): Likewise.
1103 (REAL_DEC_CHARPTR): Likewise.
1104 (INC_CHARPTR): Likewise.
1105 (INC_CHARBYTIND): Likewise.
1106 (DEC_CHARPTR): Likewise.
1107 (VALIDATE_CHARPTR_BACKWARD): Likewise.
1108 (VALIDATE_CHARPTR_FORWARD): Likewise.
1109 (charptr_n_addr): Likewise.
1110 (MAX_EMCHAR_LEN): Moved to mb-*.h.
1111 (simple_charptr_emchar): Moved to multibyte.h.
1112 (simple_set_charptr_emchar): Likewise.
1113 (simple_charptr_copy_char): Likewise.
1114 (non_ascii_charptr_emchar): Likewise.
1115 (non_ascii_set_charptr_emchar): Likewise.
1116 (non_ascii_charptr_copy_char): Likewise.
1117 (charptr_emchar): Likewise.
1118 (set_charptr_emchar): Likewise.
1119 (charptr_copy_char): Likewise.
1120 (charptr_emchar_n): Likewise.
1121 (Charset_ID): Moved to char-1byte.h.
1122 (Vcharset_ascii): Likewise.
1123 (CHAR_CHARSET): Likewise.
1124 (CHAR_LEADING_BYTE): Likewise.
1125 (LEADING_BYTE_ASCII): Likewise.
1126 (NUM_LEADING_BYTES): Likewise.
1127 (MIN_LEADING_BYTE): Likewise.
1128 (CHARSETP): Likewise.
1129 (CHARSET_BY_LEADING_BYTE): Likewise.
1130 (XCHARSET_LEADING_BYTE): Likewise.
1131 (XCHARSET_GRAPHIC): Likewise.
1132 (XCHARSET_COLUMNS): Likewise.
1133 (XCHARSET_DIMENSION): Likewise.
1134 (BREAKUP_CHAR): Likewise.
1136 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
1138 * character.h: Add document about interface for characters.
1140 * char-ucs.h (CHAR_ASCII_P): Modify name of argument.
1141 (MAKE_CHAR): Delete comment about
1142 `FIELD2_TO_OFFICIAL_LEADING_BYTE' and
1143 `FIELD2_TO_PRIVATE_LEADING_BYTE'.
1144 (BREAKUP_CHAR): Modify name of arguments.
1145 (CHAR_CHARSET): Modify name of argument.
1147 * buffer.h: Delete document about Emchar accessors.
1149 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
1151 * character.h (CHAR_INTP): Moved from buffer.h
1152 (CHAR_OR_CHAR_INTP): Likewise.
1153 (XCHAR_OR_CHAR_INT): Likewise.
1154 (CHECK_CHAR_COERCE_INT): Likewise.
1156 * buffer.h (CHAR_INTP): Moved to character.h
1157 (CHAR_OR_CHAR_INTP): Likewise.
1158 (XCHAR_OR_CHAR_INT): Likewise.
1159 (CHECK_CHAR_COERCE_INT): Likewise.
1161 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
1164 - Move definitions about UCS-2000 (UCS-4) to char-ucs.h.
1165 - Include char-1byte.h, char-lb.h or char-ucs.h.
1167 * mb-utf-8.h (CHAR_ASCII_P): Moved to char-ucs.h.
1169 * buffer.h: Include character unconditionally.
1170 (valid_char_p): Moved to char-*.h.
1171 (non_ascii_valid_char_p): Moved to char-lb.h.
1173 * char-1byte.h, char-lb.h, char-ucs.h: New files.
1175 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
1177 * mule-ccl.c (ccl_driver): Don't define `CCL_WriteMultibyteChar2'
1178 in UTF-2000 because it is not ported yet and not to use
1179 `FIELD2_TO_OFFICIAL_LEADING_BYTE', `MIN_LEADING_BYTE_OFFICIAL_2',
1180 `FIELD1_TO_OFFICIAL_LEADING_BYTE' and
1181 `FIELD1_TO_PRIVATE_LEADING_BYTE'.
1183 * mb-utf-8.h (CHAR_MULTIBYTE_P): Moved from character.h.
1184 (CHAR_ASCII_P): Moved from character.h.
1186 * character.h (CHAR_MULTIBYTE_P): Moved to mb-utf-8.h.
1187 (CHAR_ASCII_P): Likewise.
1188 (CHAR_FIELD1_MASK): Deleted.
1189 (CHAR_FIELD2_MASK): Deleted.
1190 (CHAR_FIELD3_MASK): Deleted.
1191 (MAX_CHAR_BASIC_LATIN): New macro.
1192 (CHAR_FIELD1): Deleted.
1193 (CHAR_FIELD2_INTERNAL): Deleted.
1194 (CHAR_FIELD3_INTERNAL): Deleted.
1195 (FIELD1_TO_PRIVATE_LEADING_BYTE): Deleted.
1196 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Deleted.
1197 (FIELD2_TO_PRIVATE_LEADING_BYTE): Deleted.
1198 (FIELD2_TO_OFFICIAL_LEADING_BYTE): Deleted.
1199 (MIN_CHAR_FIELD1_OFFICIAL): Deleted.
1200 (MAX_CHAR_FIELD1_OFFICIAL): Deleted.
1201 (MIN_CHAR_FIELD2_PRIVATE): Deleted.
1202 (MAX_CHAR_FIELD2_PRIVATE): Deleted.
1203 (MIN_CHAR_FIELD1_PRIVATE): Deleted.
1204 (MAX_CHAR_FIELD1_PRIVATE): Deleted.
1205 (MULE_CHAR_PRIVATE_OFFSET): Deleted.
1206 (MIN_CHAR_PRIVATE_TYPE9N): Deleted.
1207 (MAX_CHAR_PRIVATE_TYPE9N): Deleted.
1208 (MIN_CHAR_PRIVATE_TYPE9NX9N): Deleted.
1209 (MIN_CHAR_OFFICIAL_TYPE9NX9N): Deleted.
1210 (MIN_CHAR_COMPOSITION): Deleted.
1211 (breakup_char_1): Use `MAX_CHAR_BASIC_LATIN' instead of
1212 `CHAR_ASCII_P'; use `0x7f' instead of `CHAR_FIELD3_INTERNAL'.
1214 1999-09-02 MORIOKA Tomohiko <tomo@m17n.org>
1216 * buffer.h: Include mb-utf-8.h in UTF-2000.
1218 * character.h (BUFBYTE_FIRST_BYTE_P): Moved to mb-utf-8.h.
1220 * mb-utf-8.h: New file.
1222 1999-09-02 MORIOKA Tomohiko <tomo@etl.go.jp>
1224 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use `Charset_ID'
1227 * mule-charset.h, buffer.h (Charset_ID): New type.
1229 1999-09-01 MORIOKA Tomohiko <tomo@etl.go.jp>
1231 * mule-canna.c (c2mu): Use `MAKE_CHAR',
1232 `Vcharset_japanese_jisx0212' and `Vcharset_japanese_jisx0208'
1233 instead of `MULE_CHAR_PRIVATE_OFFSET',
1234 `LEADING_BYTE_JAPANESE_JISX0212', `LEADING_BYTE_JAPANESE_JISX0208'
1235 and `FIELD1_TO_OFFICIAL_LEADING_BYTE'.
1236 (m2c): Use `BREAKUP_CHAR' and `XCHARSET_FINAL'.
1238 * character.h (Vcharset_japanese_jisx0212): New variable
1241 1999-09-01 MORIOKA Tomohiko <tomo@etl.go.jp>
1243 * mule-charset.c (Vcharset_ucs_bmp): New variable in UTF-2000.
1244 (charset_by_attributes): Delete array about direction.
1245 (latin_a_char_to_charset): New variable in UTF-2000.
1246 (latin_a_char_to_byte1): New variable in UTF-2000.
1247 (latin_a_char_to_byte2): New variable in UTF-2000.
1248 (Qucs_bmp): New variable.
1249 (next_allocated_1_byte_leading_byte): Use `Charset_ID' instead of
1251 (next_allocated_2_byte_leading_byte): Likewise.
1252 (non_ascii_set_charptr_emchar): Likewise.
1253 (make_charset): Likewise; add `CHARSET_TYPE_128X128' and
1254 `CHARSET_TYPE_256X256' in UTF-2000; modify for
1255 `charset_by_attributes'.
1256 (get_unallocated_leading_byte): Use `Charset_ID' instead of `int'.
1257 (char-charset): Use `CHAR_CHARSET' instead of `CHAR_LEADING_BYTE'
1258 and `CHARSET_BY_LEADING_BYTE'.
1259 (syms_of_mule_charset): Set up `ucs-bmp'; move setting of
1260 `utf-2000-version' to `vars_of_mule_charset'.
1261 (vars_of_mule_charset): Modify for `charset_by_attributes'; don't
1262 define `leading-code-private-11' in UTF-2000; move setting of
1263 `utf-2000-version' from `syms_of_mule_charset'.
1264 (complex_vars_of_mule_charset): Set up charset `ucs-bmp' in
1267 * character.h (Charset_ID): New type.
1268 (LEADING_BYTE_UCS_BMP): New macro.
1269 (LEADING_BYTE_CONTROL_1): Changed from 0x8F to 0x81.
1270 (CHARSET_ID_OFFSET_94): New macro.
1271 (MIN_CHARSET_ID_PRIVATE_94): New macro.
1272 (MAX_CHARSET_ID_PRIVATE_94): New macro.
1273 (LEADING_BYTE_ASCII): Changed to use CHARSET_ID_OFFSET_94 and
1275 (LEADING_BYTE_KATAKANA_JISX0201): Likewise.
1276 (LEADING_BYTE_LATIN_JISX0201): Likewise.
1277 (CHARSET_ID_OFFSET_96): New macro.
1278 (LEADING_BYTE_LATIN_ISO8859_1): Changed to use
1279 CHARSET_ID_OFFSET_96 and final-byte.
1280 (LEADING_BYTE_LATIN_ISO8859_2): Likewise.
1281 (LEADING_BYTE_LATIN_ISO8859_3): Likewise.
1282 (LEADING_BYTE_LATIN_ISO8859_4): Likewise.
1283 (LEADING_BYTE_GREEK_ISO8859_7): Likewise.
1284 (LEADING_BYTE_ARABIC_ISO8859_6): Likewise.
1285 (LEADING_BYTE_HEBREW_ISO8859_8): Likewise.
1286 (LEADING_BYTE_CYRILLIC_ISO8859_5): Likewise.
1287 (LEADING_BYTE_LATIN_ISO8859_9): Likewise.
1288 (LEADING_BYTE_THAI_TIS620): Likewise.
1289 (MIN_LEADING_BYTE_PRIVATE_1): Changed from 0x0D0 to 0xD0.
1290 (MAX_LEADING_BYTE_PRIVATE_1): Changed from 0x11f to 0xDF.
1291 (CHARSET_ID_OFFSET_94x94): New macro.
1292 (LEADING_BYTE_CHINESE_BIG5_1): Changed to use
1293 CHARSET_ID_OFFSET_94x94 and final-byte.
1294 (LEADING_BYTE_CHINESE_BIG5_2): Likewise.
1295 (MIN_LEADING_BYTE_PRIVATE_2): Likewise.
1296 (MAX_LEADING_BYTE_PRIVATE_2): Likewise.
1297 (LEADING_BYTE_JAPANESE_JISX0208_1978): Likewise.
1298 (LEADING_BYTE_CHINESE_GB2312): Likewise.
1299 (LEADING_BYTE_JAPANESE_JISX0208): Likewise.
1300 (LEADING_BYTE_KOREAN_KSC5601): Likewise.
1301 (LEADING_BYTE_JAPANESE_JISX0212): Likewise.
1302 (LEADING_BYTE_CHINESE_CCITT_GB): Likewise.
1303 (LEADING_BYTE_CHINESE_CNS11643_*): Likewise.
1304 (LEADING_BYTE_KOREAN_KPS9566): Likewise.
1305 (CHARSET_TYPE_128X128): New macro.
1306 (CHARSET_TYPE_256X256): New macro.
1307 (XCHARSET_PRIVATE_P): Delete unconditionally.
1308 (charset_by_attributes): Delete array about direction.
1309 (CHARSET_BY_LEADING_BYTE): Use `Charset_ID' instead of `int'.
1310 (CHARSET_BY_ATTRIBUTES): Modify for `charset_by_attributes'.
1311 (MIN_CHAR_94): New macro.
1312 (MAX_CHAR_94): New macro.
1313 (MIN_CHAR_96): New macro.
1314 (MAX_CHAR_96): New macro.
1315 (MIN_CHAR_94x94): New macro.
1316 (MAX_CHAR_94x94): New macro.
1317 (MIN_CHAR_96x96): New macro.
1318 (MAX_CHAR_96x96): New macro.
1319 (FIELD1_TO_PRIVATE_LEADING_BYTE): Use `CHARSET_ID_OFFSET_94x94'.
1320 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
1321 (FIELD2_TO_PRIVATE_LEADING_BYTE): Use `(MIN_LEADING_BYTE_PRIVATE_1
1323 (FIELD2_TO_OFFICIAL_LEADING_BYTE): Use `LEADING_BYTE_ASCII'.
1324 (MIN_CHAR_FIELD2_OFFICIAL): Deleted.
1325 (MAX_CHAR_FIELD2_OFFICIAL): Deleted.
1326 (MIN_CHAR_OFFICIAL_TYPE9N): Deleted.
1327 (MAX_CHAR_PRIVATE_TYPE9N): Changed.
1328 (MAKE_CHAR): Use `XCHARSET_FINAL' instead of
1329 `XCHARSET_LEADING_BYTE' to make code-point.
1330 (latin_a_char_to_charset): New variable.
1331 (latin_a_char_to_byte1): New variable.
1332 (latin_a_char_to_byte2): New variable.
1333 (breakup_char_1): Use `latin_a_char_to_{charset|byte1|byte2}' for
1334 Latin Extended-A; use `CHARSET_BY_ATTRIBUTES' instead of
1335 `CHARSET_BY_LEADING_BYTE' to get charset for ISO-2022 characters.
1337 * insdel.c (find_charsets_in_bufbyte_string): Use `Charset_ID'
1338 instead of `unsigned char'; use `MIN_LEADING_BYTE' instead of 128.
1339 (find_charsets_in_emchar_string): Likewise.
1340 (vars_of_insdel): Don't define local variable `i' in UTF-2000.
1342 * file-coding.c (Fdecode_big5_char): Use `Charset_ID' instead of
1344 (decode_coding_iso2022): Likewise.
1346 * toolbar-x.c (x_output_toolbar_button): Use `Charset_ID' instead
1349 * redisplay.c (redisplay_text_width_emchar_string): Use
1350 `Charset_ID' instead of `unsigned char'.
1351 (redisplay_frame_text_width_string): Likewise.
1353 * glyphs.c (glyph_height_internal): Use `Charset_ID' instead of
1356 * faces.h, faces.c (ensure_face_cachel_complete): Use `Charset_ID'
1357 instead of `unsigned char'.
1358 (face_cachel_charset_font_metric_info): Likewise.
1360 * chartab.c (print_char_table): Use `Charset_ID' instead of `int'.
1361 (get_non_ascii_char_table_value): Likewise.
1362 (get_char_table): Likewise.
1363 (put_char_table): Likewise.
1364 (map_over_other_charset): Likewise.
1365 (map_char_table): Likewise.
1367 * buffer.h (find_charsets_in_bufbyte_string): Use `Charset_ID'
1368 instead of `unsigned char'.
1370 1999-08-31 MORIOKA Tomohiko <tomo@etl.go.jp>
1372 * character.h (PRE_LEADING_BYTE_PRIVATE_1): Deleted.
1373 (PRE_LEADING_BYTE_PRIVATE_2): Deleted.
1375 * mule-charset.c (leading_code_private_11): Don't define in
1378 * mule-ccl.c (ccl_driver): Don't define `CCL_ReadMultibyteChar2'
1379 in UTF-2000 because it is not ported yet and not to use
1380 `PRE_LEADING_BYTE_PRIVATE_1' and `PRE_LEADING_BYTE_PRIVATE_2'.
1382 1999-08-30 MORIOKA Tomohiko <tomo@etl.go.jp>
1384 * character.h (LEADING_BYTE_COMPOSITE): Deleted.
1386 1999-08-29 MORIOKA Tomohiko <tomo@etl.go.jp>
1388 * regex.c (re_compile_fastmap): Don't use `LEADING_BYTE_PREFIX_P'
1391 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use int instead
1392 of unsigned char to store leading-byte.
1394 * chartab.c (get_non_ascii_char_table_value): Don't use
1395 `BREAKUP_CHAR_1_UNSAFE' in UTF-2000.
1397 * file-coding.c (encode_coding_big5): Delete bogus implementation
1400 * character.h (LEADING_BYTE_*): Delete definition for
1402 (LEADING_BYTE_PRIVATE_P): Deleted unconditionally.
1403 (LEADING_BYTE_PREFIX_P): Deleted.
1404 (PRIVATE_LEADING_BYTE_PREFIX): Deleted.
1405 (BUFBYTE_FIRST_BYTE_P): Delete definition for non-UTF-2000.
1406 (BUFBYTE_LEADING_BYTE_P): Deleted.
1407 (CHARSET_PRIVATE_P): Deleted unconditionally.
1408 (rep_bytes_by_first_byte): Deleted unconditionally.
1409 (REP_BYTES_BY_FIRST_BYTE): Delete definition for non-UTF-2000.
1410 (FIELD1_TO_PRIVATE_LEADING_BYTE): Likewise.
1411 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
1412 (FIELD2_TO_PRIVATE_LEADING_BYTE): Likewise.
1413 (CHAR_FIELD2): Deleted.
1414 (CHAR_FIELD3): Deleted.
1415 (MAKE_CHAR): Delete definition for non-UTF-2000.
1416 (BREAKUP_CHAR_1_UNSAFE): Deleted.
1417 (breakup_char_1): New implementation.
1418 (CHAR_CHARSET): Use `BREAKUP_CHAR'.
1419 (CHAR_LEADING_BYTE): Use `CHAR_CHARSET'.
1421 1999-08-29 MORIOKA Tomohiko <tomo@etl.go.jp>
1423 * character.h (REP_BYTES_BY_FIRST_BYTE): Change order of
1426 1999-08-28 MORIOKA Tomohiko <tomo@etl.go.jp>
1428 * character.h (LEADING_BYTE_PRIVATE_P): Don't define in UTF2000.
1429 (CHARSET_PRIVATE_P): Likewise.
1430 (XCHARSET_PRIVATE_P): Likewise.
1431 (MAKE_CHAR): Don't use XCHARSET_PRIVATE_P in UTF2000.
1433 * file-coding.c (encode_coding_ucs4): Delete bogus implement in
1435 (decode_coding_iso2022): Don't use XCHARSET_PRIVATE_P in UTF2000.
1437 1999-08-28 MORIOKA Tomohiko <tomo@etl.go.jp>
1439 * character.h (LEADING_BYTE_*): Changed in UTF2000.
1440 (NUM_LEADING_BYTES): Changed from 128 to 256.
1441 (FIELD1_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1442 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Change value to 0x80 in
1444 (FIELD2_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1446 * mule-charset.c (Vcharset_chinese_cns11643_3): New variable in
1448 (Vcharset_chinese_cns11643_4): New variable in UTF2000.
1449 (Vcharset_chinese_cns11643_5): New variable in UTF2000.
1450 (Vcharset_chinese_cns11643_6): New variable in UTF2000.
1451 (Vcharset_chinese_cns11643_7): New variable in UTF2000.
1452 (Qchinese_cns11643_3): New variable in UTF2000.
1453 (Qchinese_cns11643_4): New variable in UTF2000.
1454 (Qchinese_cns11643_5): New variable in UTF2000.
1455 (Qchinese_cns11643_6): New variable in UTF2000.
1456 (Qchinese_cns11643_7): New variable in UTF2000.
1457 (syms_of_mule_charset): Define `chinese-cns11643-3',
1458 `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
1459 and `chinese-cns11643-7' in UTF2000.
1460 (vars_of_mule_charset): Initialize
1461 next_allocated_2_byte_leading_byte by LEADING_BYTE_CHINESE_BIG5_2
1463 (complex_vars_of_mule_charset): Setup charset
1464 `chinese-cns11643-3', `chinese-cns11643-4', `chinese-cns11643-5',
1465 `chinese-cns11643-6' and `chinese-cns11643-7' in UTF2000.
1467 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
1469 * mule-charset.c: Move setting for `leading-code-private-11' from
1470 `syms_of_mule_charset' to `vars_of_mule_charset'.
1472 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
1474 * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
1475 and `NUM_LEADING_BYTES' in assert.
1477 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
1479 * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
1481 (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
1482 `NUM_LEADING_BYTES' instead of 128.
1484 1999-08-26 MORIOKA Tomohiko <tomo@etl.go.jp>
1486 * mule-charset.h (charset_by_leading_byte): Use
1487 `NUM_LEADING_BYTES' instead of 128.
1488 (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
1490 * mule-charset.c (charset_by_leading_byte): Use
1491 `NUM_LEADING_BYTES' instead of 128.
1492 (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
1494 * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
1497 1999-08-25 MORIOKA Tomohiko <tomo@etl.go.jp>
1499 * mule-charset.c (syms_of_mule_charset): Update to
1502 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
1504 * file-coding.c (encode_coding_sjis): New implementation for
1505 UTF2000. (decode_coding_sjis): Ditto.
1507 1999-06-17 MORIOKA Tomohiko <tomo@etl.go.jp>
1509 * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
1510 Don't define in UTF2000.
1512 * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
1515 * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1516 mule-ccl.c, lstream.h, buffer.h: Include character.h in every
1519 1999-06-17 MORIOKA Tomohiko <tomo@etl.go.jp>
1521 * config.h.in (CHAR_IS_UCS4): New macro.
1523 * mule-charset.c (rep_bytes_by_first_byte): Modify for
1524 conventional MULE representation.
1525 (syms_of_mule_charset): Update to 0.3 (Imamiya).
1527 * mule-charset.h: Reverted to original.
1529 * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1530 mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
1531 "mule-charset.h" if CHAR_IS_UCS4 is defined.
1533 * character.h: New file.
1535 * file-coding.c (Fmake_coding_system): Set 1 to
1536 `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
1538 (encode_coding_no_conversion): New implementation for UTF2000.
1540 * file-coding.h (struct Lisp_Coding_System): Add new member
1543 1999-06-16 MORIOKA Tomohiko <tomo@etl.go.jp>
1545 * file-coding.c (decode_coding_iso2022): Code-point arguments of
1546 `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
1547 (encode_coding_iso2022): New implementation for UTF2000.
1549 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1551 * mule-canna.c (c2mu): New implementation for UTF2000.
1554 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1556 * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
1558 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1560 * file-coding.c (reset_encoding_stream): Set 0 to
1561 `str->iso2022.current_char_boundary' in UTF2000.
1562 (encode_utf8): Don't define in UTF2000.
1563 (encode_coding_utf8): New implementation for UTF-8 representation
1565 (complex_vars_of_file_coding): Define coding-system `utf-8'.
1567 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1569 * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
1571 * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
1573 (REP_BYTES_BY_FIRST_BYTE): Likewise.
1575 * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
1577 * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
1578 local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
1579 as UTF-8 in UTF2000.
1580 (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
1581 (non_ascii_valid_char_p): Don't define in UTF2000.
1582 (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
1583 (Lstream_get_emchar_1): Likewise.
1584 (utf-2000-version): New variable in UTF2000.
1586 * lread.c (read_escape): Add new reader `u'.
1588 * insdel.c (three_to_one_table): Don't define in UTF2000.
1589 (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
1590 `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1592 (bytind_to_bufpos_func): Likewise.
1593 (buffer_mule_signal_inserted_region): Likewise.
1594 (vars_of_insdel): Don't initialize `three_to_one_table'.
1595 (init_buffer_text): Use `buf->text->mule_size' instead of
1596 `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1599 * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
1600 UTF-8 representation in UTF2000.
1601 (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
1602 (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
1603 (decode_coding_iso2022): Don't define local variable `lb' in
1604 UTF2000; don't use LEADING_BYTE in UTF2000; use
1605 `DECODE_ADD_UCS_CHAR' in UTF2000.
1606 (convert_to_external_format): Decode as UTF-8 in UTF2000.
1608 * config.h.in (UTF2000): New macro.
1610 * buffer.h (struct buffer_text): Add new member `mule_size' and
1611 don't add `mule_shifter' and `mule_three_p' in UTF2000.
1612 (valid_char_p): Return always 1 in UTF2000.
1613 (MAX_EMCHAR_LEN): 6 in UTF2000.
1614 (three_to_one_table): Don't define in UTF2000.
1615 (real_bufpos_to_bytind): Modify for UTF-8 representation in
1617 (real_bytind_to_bufpos): Likewise.
1619 * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
1621 1999-06-10 MORIOKA Tomohiko <tomo@etl.go.jp>
1623 * mule-charset.c (rep_bytes_by_first_byte): Modified for character
1624 representation change.
1625 (Vutf_2000_version): New variable.
1626 (leading_code_private_11): New variable.
1627 (syms_of_mule_charset): Add new variables `utf-2000-version' and
1628 `leading-code-private-11'.
1630 * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
1631 (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
1632 (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
1633 (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
1634 (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
1635 (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
1636 (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
1637 (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
1638 (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
1639 (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
1640 (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
1641 (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
1642 (MIN_CHAR_GREEK): New macro.
1643 (MAX_CHAR_GREEK): New macro.
1644 (MIN_CHAR_CYRILLIC): New macro.
1645 (MAX_CHAR_CYRILLIC): New macro.
1646 (MIN_CHAR_HEBREW): New macro.
1647 (MAX_CHAR_HEBREW): New macro.
1648 (MIN_CHAR_THAI): New macro.
1649 (MAX_CHAR_THAI): New macro.
1650 (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
1651 (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
1652 (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
1653 (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
1654 (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
1655 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
1656 (CHAR_FIELD2): New inline function.
1657 (CHAR_FIELD3): New inline function.
1658 (MULE_CHAR_PRIVATE_OFFSET): New macro.
1659 (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
1660 (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
1661 (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
1662 (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
1663 (MIN_CHAR_COMPOSITION): Likewise.
1664 (CHAR_LEADING_BYTE): Modified for character representation change.
1665 (MAKE_CHAR): Likewise.
1667 * lisp.h (Vcharset_latin_iso8859_1): New variable.
1668 (Vcharset_greek_iso8859_7): Likewise.
1669 (Vcharset_cyrillic_iso8859_5): Likewise.
1670 (Vcharset_hebrew_iso8859_8): Likewise.
1671 (Vcharset_thai_tis620): Likewise.
1672 (Vcharset_katakana_jisx0201): Likewise.
1674 2000-01-18 Martin Buchholz <martin@xemacs.org>
1676 * XEmacs 21.2.27 is released.
1678 2000-01-18 Martin Buchholz <martin@xemacs.org>
1680 * glyphs-eimage.c (struct tiff_error_struct):
1682 (tiff_warning_func):
1683 #if HAVE_VSNPRINTF ==> #ifdef HAVE_VSNPRINTF
1688 * unexec.c: Remove vestigial Lucid C code.
1693 Remove declarations of errno and strerror().
1695 * eval.c (Fbacktrace): Small Purify-cation. Fix docstring.
1697 * .dbxrc (run-temacs): Use the horrible ${1+"$@"} instead of "$@".
1699 2000-01-16 Martin Buchholz <martin@xemacs.org>
1701 * mule-charset.c (Fchar_octet): Resurrect from earlier in 1999.
1704 2000-01-14 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
1709 Change enum eol_type to eol_type_t.
1711 2000-01-17 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
1713 * gui.c (get_gui_callback): Check cons before accessing car.
1715 2000-01-17 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
1717 * specifier.h (XSPECIFIER_TYPE): Add error checking version.
1718 (XSETSPECIFIER_TYPE): Ditto.
1720 2000-01-17 Didier Verna <didier@xemacs.org>
1722 * redisplay.c (generate_fstring_runes): compute string size in
1723 characters, not bytes.
1725 2000-01-09 Hrvoje Niksic <hniksic@iskon.hr>
1727 * window.c (Fwindow_minibuffer_p): Make WINDOW optional.
1729 2000-01-14 Hrvoje Niksic <hniksic@iskon.hr>
1731 * print.c (print_error_message): Call print_prepare().
1733 2000-01-14 Martin Buchholz <martin@xemacs.org>
1735 * .dbxrc: Renamed from dbxrc.
1737 * events.c (event_to_character):
1738 Use `assert (foo)' instead of `if (!foo) abort()'
1740 * .gdbinit (xtype): Add documentation.
1741 * .gdbinit (check-temacs): New function.
1742 * .gdbinit (check-xemacs): New function.
1743 * dbxrc (check-xemacs): New function.
1744 * dbxrc (check-xemacs): New function.
1746 2000-01-14 Andy Piper <andy@xemacs.org>
1748 * glyphs-widget.c (widget_query_geometry): Make sure that we
1749 calculate default dimensions correctly.
1751 2000-01-13 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
1753 * symsinit.h: Added prototype for reinit_vars_of_frame_mswindows.
1755 * event-msw.c (vars_of_event_mswindows): Fixed a mistyped
1756 pdump_wire'd variable.
1758 * emacs.c: (main_1): Conditionalized calls to
1759 reinit_vars_of_scrollbar_x and reinit_vars_of_module.
1761 2000-01-13 Martin Buchholz <martin@xemacs.org>
1763 * window.c (Fset_window_configuration):
1764 * sysdep.c (_start):
1765 * input-method-motif.c (res):
1766 * event-Xt.c (Xt_process_to_emacs_event):
1767 Simple compiler warning fixes.
1769 * bytecode.c (funcall_compiled_function): Use the original
1770 function symbol on the backtrace list in preference to the
1771 compiled_function object in error messages.
1773 2000-01-13 Andy Piper <andy@xemacs.org>
1775 * glyphs-x.c (update_widget_face): Make sure we update the widget
1776 background as well as foreground.
1778 2000-01-13 Andy Piper <andy@xemacs.org>
1780 * glyphs.h (struct Lisp_Image_Instance): Move justify and orient
1781 fields to subwindow.
1782 (IMAGE_INSTANCE_SUBWINDOW_JUSTIFY): new macro.
1783 (XIMAGE_INSTANCE_SUBWINDOW_JUSTIFY): ditto.
1784 (IMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
1785 (XIMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
1787 * glyphs-widget.c (check_valid_tab_orientation): new function.
1788 (initialize_widget_image_instance): zero orientation and
1790 (widget_instantiate): pick up orientation.
1791 (tab_control_query_geometry): return appropriate values for
1794 * glyphs-msw.c: (mswindows_tab_control_instantiate): assign
1795 appropriate creation flags for left, right and bottom tabs.
1797 * s/cygwin32.h: add tab definitions.
1799 2000-01-12 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
1801 * glyphs-msw.c (mswindows_unmap_subwindow): Set focus back to the
1802 frame upon hiding a subwindow.
1803 (mswindows_button_instantiate): Changed the push button style to
1805 (mswindows_button_instantiate): Removed button BS_NOTIFY
1807 (mswindows_button_instantiate): Removed redundant check for
1808 a disabled gui item.
1809 (mswindows_button_instantiate): Made use of WS_TABSTOP
1810 consistent: "operable" controls (edit, button, tree, scroll) have
1811 this style, "display-only" ones (static, progress gauge) do
1812 not. This style is currently ignored by XEmacs though. Also,
1813 removed the WS_EX_CONTROLPARENT style - it is not for children,
1814 it is for their parents!
1815 (mswindows_edit_field_instantiate): Ditto.
1816 (mswindows_progress_gauge_instantiate): Ditto.
1817 (mswindows_tree_view_instantiate): Ditto.
1818 (mswindows_tab_control_instantiate): Ditto.
1819 (mswindows_scrollbar_instantiate): Ditto.
1820 (mswindows_combo_box_instantiate): Ditto.
1821 (mswindows_widget_instantiate): Added the WS_EX_CONTROLPARENT
1822 style to the "clip" window.
1823 (mswindows_button_instantiate): Removed compilation warning by
1824 equally typing terms of the ?: operator.
1826 2000-01-12 Didier Verna <didier@xemacs.org>
1828 * redisplay.c (generate_fstring_runes): new parameter holding the
1829 last modeline-format extent.
1830 (add_glyph_to_fstring_db_runes): new parameter holding the glyph
1831 extent, fill the glyph block with it.
1832 (generate_fstring_runes): handle these parameters.
1833 (generate_formatted_string_db): ditto.
1835 * keymap.c (get_relevant_keymaps): retreive the keymaps from the
1836 glyphs'extents in the modeline.
1838 1999-01-11 Mike Woolley <mike@bulsara.com>
1840 * ntheap.c: Reduced the reserved heap space from 1Gb down to
1841 256Mb, as a workaround for the non-starting problem many people
1844 2000-01-06 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
1846 * console-tty.c (Fset_console_tty_output_coding_system):
1847 Force redrawing tty frame.
1849 2000-01-10 Didier Verna <didier@xemacs.org>
1851 * redisplay.c (generate_fstring_runes): fix size computation bug.
1853 2000-01-09 William M. Perry <wmperry@aventail.com>
1855 * gpmevent.c: (gpm_next_event_cb): Don't return value from void function.
1857 2000-01-09 Andy Piper <andy@xemacs.org>
1859 * glyphs-msw.c: index -> i to avoid shadows.
1860 (xbm_create_bitmap_from_data): make static.
1861 (check_valid_string_or_int): deleted.
1862 (mswindows_control_wnd_proc): message -> msg to avoid shadows.
1864 * glyphs-x.c (x_update_subwindow): remove unused args.
1866 * glyphs.c (glyph_image_instance): return the thing. Don't set the
1867 back pointer - this is done in allocate_image_instance.
1868 (query_string_font): return Qnil to make the compiler happy.
1869 (unmap_subwindow): set to ~0 to make the compiler happy.
1870 (glyph_query_geometry): comment out until used.
1871 (glyph_layout): ditto.
1873 2000-01-09 Hrvoje Niksic <hniksic@iskon.hr>
1875 * insdel.c (signal_after_change): Remove extraneous unbind_to().