update.
[chise/xemacs-chise.git] / src / ChangeLog
1 2000-02-24  MORIOKA Tomohiko  <tomo@m17n.org>
2
3         * mule-charset.c (Vcharset_mojikyo): New variable.
4         (Fdefine_char): Don't use coded-charset which does not have
5         non-builtin character range to allocate character-id.
6         (Qmojikyo): New variable.
7         (syms_of_mule_charset): Add new symbol `mojikyo'.
8         (complex_vars_of_mule_charset): Add new coded-charset `mojikyo'.
9
10         * char-ucs.h (LEADING_BYTE_DAIKANWA_EKANJI): New macro.
11         (LEADING_BYTE_MOJIKYO): New macro.
12         (MIN_CHAR_MOJIKYO): New macro.
13         (MIN_CHAR_DAIKANWA): Use `MIN_CHAR_MOJIKYO'.
14         (MAX_CHAR_MOJIKYO): New macro.
15
16 2000-02-12  MORIOKA Tomohiko  <tomo@m17n.org>
17
18         * mule-charset.c (remove_char_attribute): Fixed.
19
20 2000-02-08  MORIOKA Tomohiko  <tomo@m17n.org>
21
22         * mule-charset.c (remove_char_attribute): New function.
23         (Fremove_char_attribute): New function.
24         (encode_builtin_char_1): Comment out builtin-support for
25         greek-iso8859-7 and cyrillic-iso8859-5.
26         (Fdecode_char): Check `code' is an integer.
27         (syms_of_mule_charset): Add `remove-char-attribute'.
28         (MIN_CHAR_GREEK): Deleted.
29         (MAX_CHAR_GREEK): Likewise.
30         (MIN_CHAR_CYRILLIC): Likewise.
31         (MAX_CHAR_CYRILLIC): Likewise.
32         (complex_vars_of_mule_charset): Don't use MIN_CHAR_GREEK and
33         MAX_CHAR_GREEK for `greek-iso8859-7'.
34
35         * char-ucs.h (MIN_CHAR_GREEK): Comment out.
36         (MAX_CHAR_GREEK): Likewise.
37         (MIN_CHAR_CYRILLIC): Likewise.
38         (MAX_CHAR_CYRILLIC): Likewise.
39
40 2000-02-02  MORIOKA Tomohiko  <tomo@m17n.org>
41
42         * mule-charset.c (Fdefine_char): Fix problem when new code-point
43         format is used without `ucs' property.
44         (Fdecode_char): Fix problem with GR representation.
45         (complex_vars_of_mule_charset): Don't use `MIN_CHAR_CYRILLIC' and
46         `MAX_CHAR_CYRILLIC' as range of builtin `cyrillic-iso8859-5'.
47
48 2000-01-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
49
50         * mule-charset.c (make_builtin_char): New function.
51         (encode_builtin_char_1): Check ISO-2022-charset is defined or not.
52         (Fset_charset_mapping_table): Modify for new representation of
53         code-point.
54         (Fdecode_char): New function.
55         (syms_of_mule_charset): Add new builtin function `decode-char' in
56         UTF-2000.
57
58         * char-ucs.h (make_builtin_char): New prototype.
59         (DECODE_CHAR): New inline function.
60         (MAKE_CHAR): Use `DECODE_CHAR'.
61
62 2000-01-28  MORIOKA Tomohiko  <tomo@m17n.org>
63
64         * text-coding.c (parse_charset_conversion_specs): Use
65         `XCHARSET_CHARS' and `XCHARSET_DIMENSION' instead of
66         `XCHARSET_TYPE'.
67         (iso2022_designate): Likewise.
68
69         * chartab.c (decode_char_table_range): Use `XCHARSET_CHARS' and
70         `XCHARSET_DIMENSION' instead of `XCHARSET_TYPE'.
71
72         * mule-charset.c (Vcharset_ucs): New variable.
73         (print_charset): Change design; use `CHARSET_CHARS' and
74         `CHARSET_DIMENSION' instead of `CHARSET_TYPE'.
75         (make_charset): Change signature to specify `chars' and
76         `dimension' instead of `type'.
77         (range_charset_code_point): Modify for 256^n-set.
78         (encode_builtin_char_1): Encode as `ucs' in default.
79         (Fmake_charset): Modify for `make_charset'.
80         (Fmake_reverse_direction_charset): Likewise.
81         (Fsplit_char): Use `ENCODE_CHAR' instead of `BREAKUP_CHAR' in
82         UTF-2000.
83         (complex_vars_of_mule_charset): Add coded-charset `ucs'; modify
84         for `make_charset'.
85
86         * char-ucs.h (Vcharset_ucs): New variable.
87         (LEADING_BYTE_UCS): New macro.
88         (struct Lisp_Charset): Delete `type'; change type of `dimension'
89         and `chars' to `unsigned short' from `unsigned int'.
90         (CHARSET_TYPE): Deleted.
91         (XCHARSET_TYPE): Deleted.
92
93 2000-01-27  MORIOKA Tomohiko  <tomo@m17n.org>
94
95         * mule-charset.c (charset_code_point): Moved to char-ucs.h.
96
97         * char-ucs.h (charset_code_point): Moved from mule-charset.c.
98         (ENCODE_CHAR): New macro.
99
100 2000-01-26  MORIOKA Tomohiko  <tomo@etl.go.jp>
101
102         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
103         to 0.14 (Kawachi-Katakami).
104
105 2000-01-26  MORIOKA Tomohiko  <tomo@etl.go.jp>
106
107         * text-coding.c (char_encode_shift_jis): Modify for
108         `charset_code_point'.
109         (char_encode_iso2022): Likewise.
110
111         * mule-charset.c (Fput_char_attribute): Use <Lisp_Object>
112         (integer) instead of list of <Lisp_Object>s (integers) as the
113         format of code-point of a coded-charset.
114         (range_charset_code_point): Return <int> instead of <Lisp_Object>.
115         (encode_builtin_char_1): New function; delete
116         `split_builtin_char'.
117         (charset_code_point): Return <int> instead of <Lisp_Object>.
118         (Fsplit_char): Don't use `SPLIT_CHAR'.
119
120         * char-ucs.h (encode_builtin_char_1): New prototype; delete
121         prototype for `split_builtin_char'.
122         (range_charset_code_point): Return <int> instead of <Lisp_Object>.
123         (charset_code_point): Likewise.
124         (encode_char_1): New inline function; delete `SPLIT_CHAR'.
125         (breakup_char_1): Use `encode_char_1' instead of `SPLIT_CHAR'.
126
127 2000-01-20  MORIOKA Tomohiko  <tomo@m17n.org>
128
129         * mule-charset.c (complex_vars_of_mule_charset): Don't define
130         `japanese-jisx0208-1990' in non-UTF-2000 Mule.
131
132 2000-01-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
133
134         * mule-charset.c (split_builtin_char): Don't support OBS_94x94.
135
136         * char-ucs.h (MIN_CHAR_OBS_94x94): Deleted.
137         (MAX_CHAR_OBS_94x94): Deleted.
138
139 2000-01-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
140
141         * mule-charset.c (split_builtin_char): Use `MAX_CHAR_BMP'.
142
143         * char-ucs.h (MAX_CHAR_BMP): New macro.
144
145 2000-01-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
146
147         * text-coding.c: Sync with r21-2-24.
148
149 2000-01-08  MORIOKA Tomohiko  <tomo@etl.go.jp>
150
151         * file-coding.c: Modify for UTF-2000.
152
153 2000-01-18  MORIOKA Tomohiko  <tomo@etl.go.jp>
154
155         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
156         to 0.13 (Takaida).
157
158 2000-01-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
159
160         * mule-charset.c (split_builtin_char): Delete builtin support for
161         `katakana-jisx0201'.
162         (complex_vars_of_mule_charset): Don't map `katakana-jisx0201' to
163         BMP area in builtin representation.
164
165         * char-ucs.h (MAKE_CHAR): Delete builtin support for
166         `Vcharset_katakana_jisx0201'.
167
168 1999-12-24  MORIOKA Tomohiko  <tomo@etl.go.jp>
169
170         * mule-charset.c (Vcharset_mojikyo_pj_[1 .. 21]): New variable.
171         (Qisolated): New variable.
172         (Qinitial): New variable.
173         (Qmedial): New variable.
174         (Qfinal): New variable.
175         (Qvertical): New variable.
176         (Qsmall): New variable.
177         (to_char_code): Use `Qisolated', `Qinitial', `Qmedial', `Qfinal',
178         `Qvertical' and `Qsmall'.
179         (Qmojikyo_pj_[1 .. 21]): New variable.
180         (syms_of_mule_charset): Add new symbols `isolated', `initial',
181         `medial', `final', `vertical', `small' and `mojikyo-pj-[1 .. 21]'.
182         (complex_vars_of_mule_charset): Add new charset `mojikyo-pj-[1
183         .. 21]'.
184
185 1999-11-23  MORIOKA Tomohiko  <tomo@etl.go.jp>
186
187         * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x60.
188         (LEADING_BYTE_MOJIKYO_PJ_[1 .. 21]): New macros.
189         (MAX_LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 32)'.
190
191 1999-11-18  MORIOKA Tomohiko  <tomo@etl.go.jp>
192
193         * mule-charset.c (Vcharset_japanese_jisx0208_1990): New variable.
194         (Fdefine_char): Use Group 00 Plane 10 for non-coded variants of
195         BMP.
196         (Qjapanese_jisx0208_1990): New variable.
197         (syms_of_mule_charset): Add new symbol `Qjapanese_jisx0208_1990'.
198         (complex_vars_of_mule_charset): Add new coded-charset
199         `japanese-jisx0208-1990'.
200
201         * char-ucs.h (LEADING_BYTE_JAPANESE_JISX0208_1990): New macro.
202         (MIN_CHAR_JIS_X0208_1990): New macro.
203         (MAX_CHAR_JIS_X0208_1990): New macro.
204
205 1999-11-16  MORIOKA Tomohiko  <tomo@urania.m17n.org>
206
207         * text-coding.c (char_encode_iso2022): Output `~' if ISO 2022
208         coded-charset is not found.
209
210 1999-11-16  MORIOKA Tomohiko  <tomo@urania.m17n.org>
211
212         * mule-charset.c (Fget_char_attribute): Forgot to `CHECK_CHAR'.
213         (Fdefine_char): Use `Fmake_char'.
214
215 1999-11-15  MORIOKA Tomohiko  <tomo@urania.m17n.org>
216
217         * mule-charset.c (Vcharset_ideograph_daikanwa): New variable.
218         (Vcharset_hiragana_jisx0208): Deleted.
219         (Vcharset_katakana_jisx0208): Deleted.
220         (Qideograph_daikanwa): New variable.
221         (Qhiragana_jisx0208): Deleted.
222         (Qkatakana_jisx0208): Deleted.
223         (split_builtin_char): Split `ideograph-daikanwa'.
224         (Fsplit_char): New implementation for UTF-2000.
225         (syms_of_mule_charset): Add new symbol `ideograph-daikanwa';
226         delete symbol `hiragana-jisx0208' and `katakana-jisx0208'.
227         (complex_vars_of_mule_charset): Add new coded-charset
228         `ideograph-daikanwa'; delete coded-charset `hiragana-jisx0208' and
229         `katakana-jisx0208'.
230
231         * char-ucs.h (LEADING_BYTE_DAIKANWA): New macro.
232         (LEADING_BYTE_HIRAGANA_JISX0208): Deleted.
233         (LEADING_BYTE_KATAKANA_JISX0208): Deleted.
234         (MIN_CHAR_DAIKANWA): New macro.
235         (MAX_CHAR_DAIKANWA): New macro.
236
237 1999-11-15  MORIOKA Tomohiko  <tomo@urania.m17n.org>
238
239         * data.c (Fstring_to_number): Don't recognize floating point if
240         base is not 10.
241
242 1999-11-15  MORIOKA Tomohiko  <tomo@urania.m17n.org>
243
244         * mule-charset.c (Fput_char_attribute): Forgot to `CHECK_CHAR'.
245
246 1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
247
248         * mule-charset.c (Qsquare): New variable.
249         (to_char_code): Add `Qsquare'.
250         (syms_of_mule_charset): Add new symbol `square'.
251
252 1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
253
254         * mule-charset.c (Qcircle): New variable.
255         (to_char_code): Add `Qcircle'.
256         (syms_of_mule_charset): Add new symbol `circle'.
257
258 1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
259
260         * mule-charset.c (Qfont): New variable.
261         (to_char_code): Add `Qfont'.
262         (syms_of_mule_charset): Add new symbol `font'.
263
264 1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
265
266         * mule-charset.c (Qsub): New variable.
267         (to_char_code): Add `Qsub'.
268         (syms_of_mule_charset): Add new symbol `sub'.
269
270 1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
271
272         * mule-charset.c (Fput_char_attribute): Convert each element of
273         VALUE to GL position if ATTRIBUTE is a GR-set,
274
275 1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
276
277         * mule-charset.c (Fput_char_attribute): Allow GR code-point if a
278         coded-charset is a GR-set.
279
280 1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
281
282         * mule-charset.c (Fput_char_attribute): Check each element of
283         VALUE is a byte if ATTRIBUTE is a coded-charset or its name.
284
285 1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
286
287         * mule-charset.c (Vcharset_ethiopic_ucs): New variable in
288         UTF-2000.
289         (Qethiopic_ucs): New variable in UTF-2000.
290         (syms_of_mule_charset): Add new symbol `ethiopic-ucs' in UTF-2000.
291         (complex_vars_of_mule_charset): Add new coded-charset
292         `ethiopic-ucs' in UTF-2000.
293
294         * char-ucs.h (LEADING_BYTE_ETHIOPIC_UCS): New macro.
295         (LEADING_BYTE_HIRAGANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
296         9)'.
297         (LEADING_BYTE_KATAKANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
298         10)'.
299         (LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 11)'.
300
301 1999-11-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
302
303         * mule-charset.c (Fset_charset_mapping_table): Fix problem with
304         `ascii'.
305
306 1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
307
308         * mule-charset.c (Vcharacter_variant_table): New variable.
309         (Q_ucs): New variable.
310         (Fchar_variants): New function.
311         (Fput_char_attribute): Register `->ucs' value to
312         `Vcharacter_variant_table'.
313         (syms_of_mule_charset): Add new function `char-variants' and new
314         symbol `->ucs'.
315         (vars_of_mule_charset): Setup `Vcharacter_variant_table'.
316
317 1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
318
319         * mule-charset.c (get_char_code_table): Allow negative character
320         code.
321         (put_char_code_table): Likewise.
322         (Vcharacter_composition_table): New variable.
323         (Q_decomposition): New variable.
324         (Qwide): New variable.
325         (Qnarrow): New variable.
326         (Qcompat): New variable.
327         (QnoBreak): New variable.
328         (Qsuper): New variable.
329         (Qfraction): New variable.
330         (to_char_code): New function.
331         (Fget_composite_char): New function.
332         (Fput_char_attribute): Register `->decomposition' value to
333         `Vcharacter_composition_table'.
334         (syms_of_mule_charset): Add new function `get-composite-char', new
335         symbol `->decomposition', `wide', `narrow', `compat', `noBreak',
336         `super' and `fraction'.
337         (vars_of_mule_charset): Setup `Vcharacter_composition_table'.
338
339 1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
340
341         * mule-charset.c (Fchar_attribute_alist): Check the argument is a
342         character; copy the return value.
343
344 1999-11-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
345
346         * char-ucs.h (SPLIT_CHAR): Use `split_builtin_char'.
347
348         * mule-charset.c (range_charset_code_point): Must use make_int.
349         (split_builtin_char): New function.
350
351 1999-11-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
352
353         * mule-charset.c (char_byte_table): Change name from
354         "char-code-table" to "char-byte-table".
355         (mark_char_code_table): New function.
356         (char_code_table_equal): New function.
357         (char_code_table_hash): New function.
358         (char_code_table_description): New constant.
359         (char_code_table): New type.
360         (make_char_code_table): New function.
361         (copy_char_code_table): New function.
362         (get_char_code_table): Modify for `char_code_table' type.
363         (put_char_code_table): Likewise.
364         (vars_of_mule_charset): Update `utf-2000-version' to 0.12
365         (Kashiwara).
366
367         * char-ucs.h (char_code_table): New type.
368         (XCHAR_CODE_TABLE): New macro.
369         (XSETCHAR_CODE_TABLE): New macro.
370         (CHAR_CODE_TABLE_P): New macro.
371         (GC_CHAR_CODE_TABLE_P): New macro.
372         (struct Lisp_Char_Code_Table): New structure.
373
374 1999-11-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
375
376         * mule-charset.c (Fmake_charset): Setup byte_offset for
377         {94|96}^n-set.
378
379 1999-11-09  MORIOKA Tomohiko  <tomo@urania.m17n.org>
380
381         * mule-charset.c (Fdefine_char): Fix problem with non-UCS
382         character.
383
384 1999-11-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
385
386         * char-ucs.h (SPLIT_CHAR): Don't make new cell if a charset slot
387         is found.
388
389 1999-11-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
390
391         * mule-charset.c (Fget_char_attribute): If ATTRIBUTE is a name of
392         charset, it is regarded as a charset.
393         (put_char_attribute): New function in UTF-2000.
394         (Fput_char_attribute): If ATTRIBUTE is a charset or a name of
395         charset, mapping-table of the charset is modified.
396         (Fdefine_char): New function in UTF-2000.
397         (Fset_charset_mapping_table): Use `put_char_attribute' instead of
398         `Fput_char_attribute'.
399         (syms_of_mule_charset): Add new function `define-char' and new
400         symbol `ucs' in UTF-2000.
401         (vars_of_mule_charset): Update `utf-2000-version' to 0.11 (Shiki).
402
403 1999-10-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
404
405         * mule-charset.c (Fcharset_name): Define `byte_offset' in
406         non-UTF-2000 configuration.
407
408 1999-10-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
409
410         * text-coding.c (char_encode_shift_jis): Use `charset_code_point'
411         not to use `XCHARSET_ENCODING_TABLE (Vcharset_latin_jisx0201)'.
412
413         * mule-charset.c (mark_charset): `cs->encoding_table' has been
414         deleted.
415         (make_charset): Don't use `CHARSET_ENCODING_TABLE(cs)'.
416         (Fset_charset_mapping_table): Likewise.
417
418         * char-ucs.h (struct Lisp_Charset): Delete `encoding_table'.
419         (CHARSET_ENCODING_TABLE): Delete.
420         (XCHARSET_ENCODING_TABLE): Delete.
421         (charset_code_point): New interface.
422
423 1999-10-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
424
425         * text-coding.c (char_encode_iso2022): Use `charset_code_point'
426         instead of `charset_get_byte1' and `charset_get_byte2'.
427
428         * mule-charset.c, char-ucs.h (charset_get_byte1): Deleted.
429         (charset_get_byte2): Deleted.
430
431 1999-10-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
432
433         * char-ucs.h (SPLIT_CHAR): New inline function.
434         (breakup_char_1): Use `SPLIT_CHAR'.
435
436         * mule-charset.c (range_charset_code_point): New function.
437         (charset_code_point): New function.
438
439         * char-ucs.h (range_charset_code_point): New interface.
440         (breakup_char_1): Use `range_charset_code_point'.
441
442 1999-10-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
443
444         * mule-charset.c (Fmake_charset): Delete unused local variable
445         `code_offset'.
446
447         * char-ucs.h (Vcharacter_attribute_table): New extern variable.
448         (breakup_char_1): Find a charset and code-point in
449         `Vcharacter_attribute_table'.
450
451 1999-10-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
452
453         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
454         to 0.10 (Yao).
455
456 1999-10-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
457
458         * mule-charset.c (Vcharacter_attribute_table): New variable.
459         (Fchar_attribute_alist): New function.
460         (Fget_char_attribute): New function.
461         (Fput_char_attribute): New function.
462         (Fset_charset_mapping_table): Setup `Vcharacter_attribute_table'
463         too.
464         (syms_of_mule_charset): Add new function `char-attribute-alist',
465         `get-char-attribute' and `put-char-attribute'.
466         (vars_of_mule_charset): Setup `Vcharacter_attribute_table'.
467
468 1999-10-19  MORIOKA Tomohiko  <tomo@etl.go.jp>
469
470         * mule-charset.c (Fmake_charset): Just use
471         `get_unallocated_leading_byte'.
472
473         * char-ucs.h (LEADING_BYTE_*): Use ISO-IR numbers for official
474         sets; don't use final-byte based number for private sets.
475
476 1999-10-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
477
478         * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
479         integer.
480
481 1999-10-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
482
483         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
484         to 0.9.
485
486 1999-10-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
487
488         * regex.c (compile_extended_range): Use `CHAR_CHARSET_ID' instead
489         of `CHAR_LEADING_BYTE' in UTF-2000.
490
491         * insdel.c (find_charsets_in_bufbyte_string): Use
492         `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
493         (find_charsets_in_emchar_string): Likewise.
494
495         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use
496         `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
497
498         * char-ucs.h (CHAR_LEADING_BYTE): Deleted.
499         (CHAR_CHARSET_ID): New macro.
500
501 1999-10-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
502
503         * chartab.c (get_char_table): Don't use type `Charset_ID' for
504         charset-id - MIN_LEADING_BYTE.
505         (put_char_table): Likewise.
506
507 1999-10-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
508
509         * char-ucs.h (MIN_LEADING_BYTE): Changed to `-0x40'.
510         (NUM_LEADING_BYTES): Changed to (80 * 3 - MIN_LEADING_BYTE).
511         (CHARSET_LEADING_BYTE): Don't cast by `Bufbyte'.
512         (CHARSET_ID_OFFSET): New macro.
513         (LEADING_BYTE_CONTROL_1): Changed to (CHARSET_ID_OFFSET - 1).
514         (LEADING_BYTE_UCS_BMP): Changed to (CHARSET_ID_OFFSET - 2).
515         (LEADING_BYTE_LATIN_VISCII): Changed to (CHARSET_ID_OFFSET - 3).
516         (LEADING_BYTE_HIRAGANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
517         4).
518         (LEADING_BYTE_KATAKANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
519         5).
520         (MIN_LEADING_BYTE_PRIVATE): Changed to `MIN_LEADING_BYTE'.
521         (MAX_LEADING_BYTE_PRIVATE): Changed to (CHARSET_ID_OFFSET - 6).
522         (CHARSET_ID_OFFSET_94): Changed to (CHARSET_ID_OFFSET - '0').
523         (CHARSET_ID_OFFSET_96): Changed to (CHARSET_ID_OFFSET_94 + 80).
524         (CHARSET_ID_OFFSET_94x94): Changed to (CHARSET_ID_OFFSET_96 + 80).
525
526 1999-10-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
527
528         * mule-charset.c (next_allocated_leading_byte): New variable in
529         UTF-2000.
530         (next_allocated_1_byte_leading_byte): Don't define in UTF-2000.
531         (next_allocated_2_byte_leading_byte): Don't define in UTF-2000.
532         (get_unallocated_leading_byte): Simply use
533         `next_allocated_leading_byte' [ignore dimension] in UTF-2000.
534         (vars_of_mule_charset): Setup `next_allocated_leading_byte' in
535         UTF-2000.
536
537         * char-ucs.h (MIN_LEADING_BYTE_PRIVATE): New macro.
538         (MAX_LEADING_BYTE_PRIVATE): New macro.
539         (MIN_LEADING_BYTE_OFFICIAL_2): Deleted.
540         (MAX_LEADING_BYTE_OFFICIAL_2): Deleted.
541
542 1999-10-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
543
544         * mule-charset.c (Fmake_charset): Allocate final-byte based
545         charset-id for 94-set, 96-set and 94x94-set.
546
547 1999-10-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
548
549         * mule-charset.c (char_byte_table_equal): Fill braces to avoid
550         ambiguous `else'.
551         (Fmake_charset): Likewise.
552         (complex_vars_of_mule_charset): Modify the font registry of
553         `ucs-bmp' not to match `Ethiopic-Unicode'.
554
555 1999-10-10  MORIOKA Tomohiko  <tomo@urania.m17n.org>
556
557         * mule-charset.c (complex_vars_of_mule_charset): Add font
558         registory of `ucs-bmp'.
559
560 1999-10-10  MORIOKA Tomohiko  <tomo@urania.m17n.org>
561
562         * text-coding.c (char_encode_iso2022): Ignore non-ISO-2022
563         coded-charsets in `default-coded-charset-priority-list' when
564         breaking up a character.
565
566         * mule-charset.c (Vcharset_latin_viscii): New variable.
567         (Qlatin_viscii): New variable.
568         (make_charset): Don't use `decoding_table'.
569         (Fmake_charset): Regard graphic = 2 as 256^n-set; setup
570         byte_offset.
571         (Fset_charset_mapping_table): New implementation.
572         (syms_of_mule_charset): Add new symbol `latin-viscii'.
573         (complex_vars_of_mule_charset): Set `graphic' attribute of charset
574         `ucs-bmp' and `latin_viscii' to 2; change font registry of charset
575         `latin-viscii-lower' to "MULEVISCII-LOWER"; change font registry
576         of charset `latin-viscii-upper' to "MULEVISCII-UPPER"; add new
577         charset `latin_viscii'.
578
579         * char-ucs.h (LEADING_BYTE_LATIN_VISCII): New macro.
580         (CHARSET_TYPE_94X94): Change to 1 from 2.
581         (CHARSET_TYPE_96): Change to 2 from 1.
582         (CHARSET_TYPE_128): New macro.
583         (CHARSET_TYPE_128X128): Change to 5 from 4.
584         (CHARSET_TYPE_256): New macro.
585         (CHARSET_TYPE_256X256): Change to 7 from 5.
586         (MAKE_CHAR): Use `XCHARSET_BYTE_OFFSET(charset)'.
587
588 1999-10-10  MORIOKA Tomohiko  <tomo@urania.m17n.org>
589
590         * text-coding.c (char_encode_shift_jis): Refer
591         `XCHARSET_ENCODING_TABLE(Vcharset_latin_jisx0201)' instead of
592         `XCHARSET_TO_BYTE1_TABLE(Vcharset_latin_jisx0201)'.
593
594         * mule-charset.c (mark_char_byte_table): New function in UTF-2000.
595         (char_byte_table_equal): New function in UTF-2000.
596         (char_byte_table_hash): New function in UTF-2000.
597         (char_byte_table_description): New constant in UTF-2000.
598         (char_byte_table): New type in UTF-2000.
599         (make_char_byte_table): New function in UTF-2000.
600         (copy_char_byte_table): New function in UTF-2000.
601         (make_char_code_table): New macro in UTF-2000.
602         (get_char_code_table): New function in UTF-2000.
603         (put_char_code_table): New function in UTF-2000.
604         (mark_charset): Mark `cs->encoding_table' in UTF-2000.
605         (charset_description): Add setting in UTF-2000.
606         (make_charset): Setup `CHARSET_ENCODING_TABLE(cs)' instead of
607         `CHARSET_TO_BYTE1_TABLE(cs)'.
608         (charset_get_byte1): Refer `XCHARSET_ENCODING_TABLE(charset)'
609         instead of `XCHARSET_TO_BYTE1_TABLE(charset)'.
610         (charset_get_byte2): Refer `XCHARSET_ENCODING_TABLE(charset)'
611         instead of `XCHARSET_TO_BYTE2_TABLE(charset)'.
612         (Fset_charset_mapping_table): Setup `CHARSET_ENCODING_TABLE(cs)'
613         instead of `CHARSET_TO_BYTE1_TABLE(cs)' and
614         `CHARSET_TO_BYTE2_TABLE(cs)'.
615
616         * char-ucs.h (char_byte_table): New type.
617         (XCHAR_BYTE_TABLE): New macro.
618         (XSETCHAR_BYTE_TABLE): New macro.
619         (CHAR_BYTE_TABLE_P): New macro.
620         (GC_CHAR_BYTE_TABLE_P): New macro.
621         (struct Lisp_Char_Byte_Table): New structure.
622         (get_char_code_table): New interface.
623         (Emchar_to_byte_table): Deleted.
624         (get_byte_from_character_table): Deleted.
625         (struct Lisp_Charset): Add `encoding_table'; delete
626         `to_byte1_table' and `to_byte2_table'.
627         (CHARSET_ENCODING_TABLE): New macro.
628         (CHARSET_TO_BYTE1_TABLE): Deleted.
629         (CHARSET_TO_BYTE2_TABLE): Deleted.
630         (XCHARSET_ENCODING_TABLE): New macro.
631         (XCHARSET_TO_BYTE1_TABLE): Deleted.
632         (XCHARSET_TO_BYTE2_TABLE): Deleted.
633
634 1999-10-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
635
636         * mule-charset.c (syms_of_mule_charset): Delete charset alias
637         `vietnamese-viscii-*'.
638
639 1999-10-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
640
641         * mule-charset.c (Qvietnamese_viscii_lower): New variable.
642         (Qvietnamese_viscii_upper): New variable.
643         (Fdefine_charset_alias): New function.
644         (syms_of_mule_charset): Add new function `define-charset-alias'.
645         (syms_of_mule_charset): Rename charset `vietnamese-viscii-*' to
646         `latin-viscii-*'; define `vietnamese-viscii-*' as aliases for
647         `latin-viscii-*'.
648
649 1999-10-04  MORIOKA Tomohiko  <tomo@etl.go.jp>
650
651         * char-ucs.h (MIN_CHAR_OBS_94x94): New macro.
652         (MAX_CHAR_OBS_94x94): New macro.
653         (breakup_char_1): Support obsolete XEmacs-UCS private code space
654         for 94x94 sets.
655
656         * mule-charset.c (put_byte_from_character_table): Change unit size
657         from 128 to 256.
658         (mark_charset): Don't mark `cs->decoding_table' if `UTF2000' is
659         not defined.
660         (Fmake_reverse_direction_charset): Modify dummy argument of
661         `make_charset' for non-UTF-2000 environment.
662
663 1999-10-03  MORIOKA Tomohiko  <tomo@urania.m17n.org>
664
665         * char-ucs.h (MAKE_CHAR): Allow nested decoding-table.
666
667         * mule-charset.c (destroy_byte_from_character_table): New macro.
668         (latin_jisx0201_to_ucs): Deleted.
669         (latin_iso8859_2_to_ucs): Deleted.
670         (latin_iso8859_3_to_ucs): Deleted.
671         (latin_iso8859_4_to_ucs): Deleted.
672         (latin_iso8859_9_to_ucs): Deleted.
673         (latin_viscii_lower_to_ucs): Deleted.
674         (latin_viscii_upper_to_ucs): Deleted.
675         (mark_charset): Mark `cs->decoding_table'.
676         (Fcharset_mapping_table): Fix DOC-string.
677         (Fset_charset_mapping_table): New function.
678         (syms_of_mule_charset): Add nwe function
679         `set-charset-mapping-table'.
680         (complex_vars_of_mule_charset): Don't setup and use
681         `latin_*_to_ucs'.
682
683 1999-10-01  MORIOKA Tomohiko  <tomo@urania.m17n.org>
684
685         * char-ucs.h (MAKE_CHAR): Check the result for range-represented
686         charset.
687
688 1999-09-30  MORIOKA Tomohiko  <tomo@urania.m17n.org>
689
690         * mule-charset.c (Vcharset_hiragana_jisx0208): New variable.
691         (Vcharset_katakana_jisx0208): New variable.
692         (Qhiragana_jisx0208): New variable.
693         (Qkatakana_jisx0208): New variable.
694         (make_charset): Add new argument `byte_offset'.
695         (charset_get_byte1): Modify for new coded-charset definition; use
696         `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
697         `XCHARSET_BYTE_OFFSET'.
698         (Fmake_charset): Modify for `make_charset'.
699         (Fmake_reverse_direction_charset): Likewise.
700         (syms_of_mule_charset): Add new symbols `hiragana-jisx0208' and
701         `katakana-jisx0208'.
702         (complex_vars_of_mule_charset): Modify for `make_charset'; quote
703         `.'  in font registry of charset `katakana-jisx0201',
704         `latin-jisx0201', `vietnamese-viscii-lower' and
705         `vietnamese-viscii-upper'; modify DOC-string of charset
706         `japanese-jisx0208-1978' and `japanese-jisx0208'; modify font
707         registry of charset `japanese-jisx0208' not to use font for JIS
708         X0208:1990; add new charset `hiragana-jisx0208' and
709         `katakana-jisx0208'.
710
711         * char-ucs.h (LEADING_BYTE_HIRAGANA_JISX0208): New macro.
712         (LEADING_BYTE_KATAKANA_JISX0208): New macro.
713         (struct Lisp_Charset): Add `byte_offset'.
714         (CHARSET_BYTE_OFFSET): New macro.
715         (XCHARSET_UCS_MIN): New macro.
716         (XCHARSET_UCS_MAX): New macro.
717         (XCHARSET_CODE_OFFSET): New macro.
718         (XCHARSET_BYTE_OFFSET): New macro.
719         (MIN_CHAR_HIRAGANA): New macro.
720         (MAX_CHAR_HIRAGANA): New macro.
721         (MIN_CHAR_KATAKANA): New macro.
722         (MAX_CHAR_KATAKANA): New macro.
723         (MAKE_CHAR): Modify for new coded-charset definition; use
724         `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
725         `XCHARSET_BYTE_OFFSET'.
726
727 1999-09-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
728
729         * mule-charset.c (CHAR96): Deleted.
730         (latin_jisx0201_to_ucs): Type is changed from array of <Emchar> to
731         <Lisp_Object>.
732         (latin_iso8859_2_to_ucs): Likewise.
733         (latin_iso8859_3_to_ucs): Likewise.
734         (latin_iso8859_4_to_ucs): Likewise.
735         (latin_iso8859_9_to_ucs): Likewise.
736         (latin_viscii_lower_to_ucs): Likewise.
737         (latin_viscii_upper_to_ucs): Likewise.
738         (latin_tcvn5712_to_ucs): Commented out.
739         (make_charset): Change type of argument `decoding_table' from
740         <Emchar*> to <Lisp_Object> [vector of characters].
741         (Fmake_charset): Modify for `make_charset'.
742         (Fmake_reverse_direction_charset): Likewise.
743         (Fcharset_mapping_table): New function in UTF-2000.
744         (syms_of_mule_charset): Setup `Fcharset_mapping_table' in
745         UTF-2000.
746         (complex_vars_of_mule_charset): Modify for type change of
747         `*_to_ucs'; modify for `make_charset'.
748
749         * char-ucs.h (struct Lisp_Charset): Change type of
750         `decoding_table' from <Emchar*> to <Lisp_Object>.
751         (MAKE_CHAR): Modify for new specification of `decoding_table'.
752
753 1999-09-23  MORIOKA Tomohiko  <tomo@etl.go.jp>
754
755         * mule-charset.c (Fmake_reverse_direction_charset): Fix compile
756         error with non-UTF-2000-Mule.
757
758 1999-09-21  MORIOKA Tomohiko  <tomo@etl.go.jp>
759
760         * mule-charset.c (Vcharset_chinese_cns11643_3): Deleted [defined
761         in lisp again].
762         (Vcharset_chinese_cns11643_4): Likewise.
763         (Vcharset_chinese_cns11643_5): Likewise.
764         (Vcharset_chinese_cns11643_6): Likewise.
765         (Vcharset_chinese_cns11643_7): Likewise.
766         (Qchinese_cns11643_3): Likewise.
767         (Qchinese_cns11643_4): Likewise.
768         (Qchinese_cns11643_5): Likewise.
769         (Qchinese_cns11643_6): Likewise.
770         (Qchinese_cns11643_7): Likewise.
771         (syms_of_mule_charset): Move definitions for `chinese-cns11643-3',
772         `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
773         and `chinese-cns11643-7' to lisp/mule/chinese.el.
774         (complex_vars_of_mule_charset): Likewise.
775
776 1999-09-18  MORIOKA Tomohiko  <tomo@etl.go.jp>
777
778         * mule-charset.c (charset_get_byte1): Fix bug about 94- and
779         96-set.
780         (Fmake_reverse_direction_charset): Inherit CHARSET_DECODING_TABLE,
781         CHARSET_UCS_MIN, CHARSET_UCS_MAX and CHARSET_CODE_OFFSET.
782
783 1999-09-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
784
785         * char-ucs.h (MIN_CHAR_HALFWIDTH_KATAKANA): Changed to 0xFF61 from
786         0xFF60.
787         (MAKE_CHAR): Change offset for katakana-jisx0201 to 33 from 0x20.
788         (breakup_char_1): Likewise.
789
790         * text-coding.c (char_encode_iso2022): Keep designated charsets if
791         one of them includes the specified character.
792
793 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
794
795         * mule-charset.c: Update `utf-2000-version' to 0.8 (Kami).
796
797 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
798
799         * char-ucs.h (MAKE_CHAR): Fix problem in 2-dimension charset.
800
801 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
802
803         * mule-charset.c (latin_iso8859_2_to_ucs NULL): Add pseudo
804         definition for non-UTF-2000 Mule.
805         (latin_iso8859_3_to_ucs): Likewise.
806         (latin_iso8859_4_to_ucs): Likewise.
807         (latin_iso8859_9_to_ucs): Likewise.
808         (latin_jisx0201_to_ucs): Likewise.
809         (MIN_CHAR_THAI): Likewise.
810         (MAX_CHAR_THAI): Likewise.
811         (MIN_CHAR_GREEK): Likewise.
812         (MAX_CHAR_GREEK): Likewise.
813         (MIN_CHAR_HEBREW): Likewise.
814         (MAX_CHAR_HEBREW): Likewise.
815         (MIN_CHAR_HALFWIDTH_KATAKANA): Likewise.
816         (MAX_CHAR_HALFWIDTH_KATAKANA): Likewise.
817         (MIN_CHAR_CYRILLIC): Likewise.
818         (MAX_CHAR_CYRILLIC): Likewise.
819
820 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
821
822         * char-ucs.h (breakup_char_1): Use
823         `Vdefault_coded_charset_priority_list' for hebrew-iso8859-8,
824         thai-tis620 and katakana-jisx0201 area.
825
826 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
827
828         * char-ucs.h (breakup_char_1): Use
829         `Vdefault_coded_charset_priority_list' for cyrillic-iso8859-5
830         area.
831
832         * text-coding.c (reset_encoding_stream): Fixed.
833         (char_encode_ucs4): Delete `& 255'.
834
835         * char-ucs.h (breakup_char_1): Use
836         `Vdefault_coded_charset_priority_list' for greek-iso8859-7 area.
837
838 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
839
840         * file-coding.c (Fmake_coding_system): Don't set up
841         `codesys->fixed.size'.
842         (encode_coding_no_conversion): Don't refer
843         `str->codesys->fixed.size'.
844
845 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
846
847         * mule-charset.c, char-ucs.h (latin_a_char_to_charset): Deleted.
848         (latin_a_char_to_byte1): Deleted.
849         (latin_a_char_to_byte2): Deleted.
850
851 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
852
853         * mule-charset.c (make_charset): Add new argument `ucs_min',
854         `ucs_max' and `code_offset'.
855         (charset_get_byte1): New implementation [delete specific charset
856         depended implementations].
857         (Fmake_charset): Modify for `make_charset'.
858         (Fmake_reverse_direction_charset): Likewise.
859         (complex_vars_of_mule_charset): Likewise.
860
861         * char-ucs.h (struct Lisp_Charset): Add `ucs_min', `ucs_max' and
862         `code_offset'.
863         (CHARSET_UCS_MIN): New macro.
864         (CHARSET_UCS_MAX): New macro.
865         (CHARSET_CODE_OFFSET): New macro.
866         (MAKE_CHAR): Delete charset depended definitions [except
867         katakana-jisx0201].
868
869 1999-09-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
870
871         * char-ucs.h (breakup_char_1): Use
872         `Vdefault_coded_charset_priority_list' for C0-Controls,
873         Basic-Latin, C1-Controls and Latin-1-Supplement area.
874
875 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
876
877         * char-ucs.h (charset_get_byte1): New function.
878         (XCHARSET_GET_BYTE1): Deleted.
879         (charset_get_byte2): New function.
880         (XCHARSET_GET_BYTE2): Deleted.
881         (Vdefault_coded_charset_priority_list): New external variable.
882         (breakup_char_1): Use `charset_get_byte1', `charset_get_byte2' and
883         `Vdefault_preferred_coded_charset_list'.
884
885         * mule-charset.c (charset_get_byte1): New function.
886         (charset_get_byte2): New function.
887         (Vdefault_coded_charset_priority_list): New variable.
888         (vars_of_mule_charset): Add new variable
889         `default-coded-charset-priority-list'.
890
891 1999-09-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
892
893         * char-ucs.h (XCHARSET_GET_BYTE1): New inline function.
894         (XCHARSET_GET_BYTE2): New inline function.
895         (breakup_char_1): Use `XCHARSET_GET_BYTE1' and
896         `XCHARSET_GET_BYTE2'.
897
898 1999-09-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
899
900         * mule-charset.c (make_charset): Initialize
901         `CHARSET_TO_BYTE1_TABLE(cs)' and `CHARSET_TO_BYTE2_TABLE(cs)' by
902         NULL if table is not defined.
903
904 1999-09-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
905
906         * text-coding.c (char_encode_shift_jis): Use
907         `XCHARSET_TO_BYTE1_TABLE' for `Vcharset_latin_jisx0201' instead of
908         `ucs_to_latin_jisx0201'.
909
910         * mule-charset.c (ucs_to_latin_jisx0201): Deleted.
911         (ucs_to_latin_iso8859_2): Deleted.
912         (ucs_to_latin_iso8859_3): Deleted.
913         (ucs_to_latin_iso8859_4): Deleted.
914         (ucs_to_latin_iso8859_9): Deleted.
915         (ucs_to_latin_viscii_lower): Deleted.
916         (ucs_to_latin_viscii_upper): Deleted.
917         (ucs_to_latin_tcvn5712): Deleted.
918         (make_charset): Add new argument `decoding_table'; set up
919         `CHARSET_DECODING_TABLE(cs)' in UTF-2000; set up
920         `CHARSET_TO_BYTE1_TABLE(cs)' for 94-set and 96-set if
921         `decoding_table' is defined in UTF-2000.
922         (Fmake_charset): Modify for `make_charset'.
923         (Fmake_reverse_direction_charset): Likewise.
924         (complex_vars_of_mule_charset): Likewise; delete `GENERATE_94_SET'
925         and `GENERATE_96_SET'.
926
927         * char-ucs.h (latin_jisx0201_to_ucs): Deleted.
928         (ucs_to_latin_jisx0201): Deleted.
929         (latin_iso8859_2_to_ucs): Deleted.
930         (ucs_to_latin_iso8859_2): Deleted.
931         (latin_iso8859_3_to_ucs): Deleted.
932         (ucs_to_latin_iso8859_3): Deleted.
933         (latin_iso8859_4_to_ucs): Deleted.
934         (ucs_to_latin_iso8859_4): Deleted.
935         (latin_iso8859_9_to_ucs): Deleted.
936         (ucs_to_latin_iso8859_9): Deleted.
937         (latin_viscii_lower_to_ucs): Deleted.
938         (ucs_to_latin_viscii_lower): Deleted.
939         (latin_viscii_upper_to_ucs): Deleted.
940         (ucs_to_latin_viscii_upper): Deleted.
941         (struct Lisp_Charset): Renamed `encoding_table' to
942         `to_byte1_table'; add `to_byte2_table'.
943         (CHARSET_DECODING_TABLE): New macro.
944         (CHARSET_TO_BYTE1_TABLE): New macro.
945         (CHARSET_TO_BYTE2_TABLE): New macro.
946         (XCHARSET_DECODING_TABLE): New macro.
947         (XCHARSET_TO_BYTE1_TABLE): New macro.
948         (XCHARSET_TO_BYTE2_TABLE): New macro.
949         (MAKE_CHAR): Use `XCHARSET_DECODING_TABLE'; don't use `*_to_ucs'
950         tables.
951         (breakup_char_1): Use `XCHARSET_TO_BYTE1_TABLE' if it is defined;
952         don't use `ucs_to_*' tables.
953
954 1999-09-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
955
956         * text-coding.c (Fmake_coding_system): Don't set up
957         `codesys->fixed.size'.
958         (encode_coding_no_conversion): Use `if' instead of `switch'.
959
960         * file-coding.h (struct Lisp_Coding_System): Delete `fixed.size'.
961
962 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
963
964         * mule-charset.c (make_charset): Delete argument `rep_bytes'.
965         (Fmake_charset): Modify for `make_charset'.
966         (Fmake_reverse_direction_charset): Likewise.
967         (complex_vars_of_mule_charset): Likewise.
968
969 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
970
971         * text-coding.c (char_encode_shift_jis): Use table
972         `ucs_to_latin_jisx0201' and BREAKUP_CHAR.
973
974 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
975
976         * text-coding.c (text_encode_generic): Use `if' instead of
977         `switch'.
978         (decode_coding_sjis): Use `MAKE_CHAR' and `DECODE_ADD_UCS_CHAR' to
979         decode JIS-Latin.
980
981 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
982
983         * text-coding.c (encode_coding_sjis): Deleted.
984         (char_encode_shift_jis): New function.
985         (char_finish_shift_jis): New function.
986         (reset_encoding_stream): Set up `encode_char' and `finish' for
987         `CODESYS_UCS4' and `CODESYS_SHIFT_JIS'.
988         (mule_encode): Use generic encoder for `CODESYS_SHIFT_JIS'.
989         (char_encode_utf8): Treat `eol_type'.
990
991 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
992
993         * file-coding.c (decode_coding_iso2022): Use
994         `DECODE_ADD_UCS_CHAR'; don't use `XCHARSET_REP_BYTES'.
995
996 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
997
998         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
999         to 0.7 (Hirano).
1000
1001 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
1002
1003         * char-lb.h (CHAR_COLUMNS): New macro.
1004
1005 1999-09-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
1006
1007         * text-coding.c (char_encode_ucs4): New function.
1008         (char_finish_ucs4): New function.
1009         (encode_coding_ucs4): Deleted.
1010         (mule_encode): Use generic encoder for `CODESYS_UCS4'.
1011         (text_encode_generic): Delete local variable `charset' and `half'.
1012         (ucs_to_mule_table): Deleted.
1013         (mule_to_ucs_table): Deleted.
1014         (Fset_ucs_char): Deleted.
1015         (ucs_to_char): Deleted.
1016         (Fucs_char): Deleted.
1017         (Fset_char_ucs): Deleted.
1018         (Fchar_ucs): Deleted.
1019         (decode_ucs4): Deleted.
1020         (mule_char_to_ucs4): Deleted.
1021         (encode_ucs4): Deleted.
1022         (decode_coding_ucs4): Use `DECODE_ADD_UCS_CHAR'.
1023         (decode_coding_utf8): Likewise.
1024         (decode_coding_iso2022): Likewise; don't use `XCHARSET_REP_BYTES'.
1025         (char_encode_iso2022): Fixed.
1026         (syms_of_file_coding): Delete `Fset_ucs_char', `Fucs_char',
1027         `Fset_char_ucs' and `Fchar_ucs'.
1028         (complex_vars_of_file_coding): Don't initialize
1029         `ucs_to_mule_table'.
1030
1031         * objects-tty.c (tty_initialize_font_instance): Don't use
1032         `XCHARSET_COLUMNS'.
1033
1034         * mule-charset.c (make_charset): Don't set up CHARSET_REP_BYTES in
1035         UTF-2000.
1036
1037         * redisplay-tty.c (tty_output_display_block): Use `CHAR_COLUMNS'
1038         instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
1039
1040         * insdel.c (bufbyte_string_displayed_columns): Use `CHAR_COLUMNS'
1041         instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
1042         (emchar_string_displayed_columns): Likewise.
1043
1044         * indent.c (column_at_point): Use `CHAR_COLUMNS' instead of
1045         `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
1046         (string_column_at_point): Likewise.
1047         (Fmove_to_column): Likewise.
1048
1049         * char-ucs.h (struct Lisp_Charset): Delete `rep_bytes'; add
1050         `encoding_table' and `decoding_table'.
1051         (CHARSET_REP_BYTES): Deleted.
1052         (XCHARSET_REP_BYTES): Deleted.
1053         (XCHARSET_COLUMNS): Deleted.
1054         (CHAR_COLUMNS): New macro.
1055         (lookup_composite_char): Deleted unconditionally.
1056         (composite_char_string): Likewise.
1057
1058 1999-09-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
1059
1060         * char-ucs.h (Emchar_to_byte_table): New type.
1061         (get_byte_from_character_table): New function interface.
1062         (Vcharset_latin_jisx0201): New variable.
1063         (latin_jisx0201_to_ucs): New variable.
1064         (ucs_to_latin_jisx0201): New variable.
1065         (Vcharset_latin_iso8859_2): New variable.
1066         (latin_iso8859_2_to_ucs): New variable.
1067         (ucs_to_latin_iso8859_2): New variable.
1068         (Vcharset_latin_iso8859_3): New variable.
1069         (latin_iso8859_3_to_ucs): New variable.
1070         (ucs_to_latin_iso8859_3): New variable.
1071         (Vcharset_latin_iso8859_4): New variable.
1072         (latin_iso8859_4_to_ucs): New variable.
1073         (ucs_to_latin_iso8859_4): New variable.
1074         (Vcharset_latin_iso8859_9): New variable.
1075         (latin_iso8859_9_to_ucs): New variable.
1076         (ucs_to_latin_iso8859_9): New variable.
1077         (Vcharset_latin_viscii_lower): New variable.
1078         (latin_viscii_lower_to_ucs): New variable.
1079         (ucs_to_latin_viscii_lower): New variable.
1080         (Vcharset_latin_viscii_upper): New variable.
1081         (latin_viscii_upper_to_ucs): New variable.
1082         (ucs_to_latin_viscii_upper): New variable.
1083         (CHARSET_ID_OFFSET_94): Changed from 0x60 to 0x55.
1084         (LEADING_BYTE_LATIN_VISCII_LOWER): New macro.
1085         (LEADING_BYTE_LATIN_VISCII_UPPER): New macro.
1086         (MAKE_CHAR): Map `latin-iso8859-2', `latin-iso8859-3',
1087         `latin-iso8859-4', `latin-iso8859-9', `latin-jisx0201',
1088         `vietnamese-viscii-lower' and `vietnamese-viscii-upper' to BMP.
1089         (breakup_char_1): Use `ucs_to_latin_iso8859_2',
1090         `ucs_to_latin_iso8859_3', `ucs_to_latin_iso8859_4',
1091         `ucs_to_latin_iso8859_9', `ucs_to_latin_viscii_lower',
1092         `ucs_to_latin_viscii_upper' and `ucs_to_latin_jisx0201' tables.
1093
1094         * mule-charset.c (Vcharset_latin_viscii_lower): New variable.
1095         (Vcharset_latin_viscii_upper): New variable.
1096         (make_byte_from_character_table): New function.
1097         (put_byte_from_character_table): New function.
1098         (get_byte_from_character_table): New function.
1099         (CHAR96): New macro.
1100         (ucs_to_latin_jisx0201): New variable.
1101         (latin_jisx0201_to_ucs): New variable.
1102         (ucs_to_latin_iso8859_2): New variable.
1103         (latin_iso8859_2_to_ucs): New variable.
1104         (ucs_to_latin_iso8859_3): New variable.
1105         (latin_iso8859_3_to_ucs): New variable.
1106         (ucs_to_latin_iso8859_4): New variable.
1107         (latin_iso8859_4_to_ucs): New variable.
1108         (ucs_to_latin_iso8859_9): New variable.
1109         (latin_iso8859_9_to_ucs): New variable.
1110         (ucs_to_latin_viscii_lower): New variable.
1111         (latin_viscii_lower_to_ucs): New variable.
1112         (ucs_to_latin_viscii_upper): New variable.
1113         (latin_viscii_upper_to_ucs): New variable.
1114         (ucs_to_latin_tcvn5712): New variable.
1115         (latin_tcvn5712_to_ucs): New variable.
1116         (Qlatin_viscii_lower): New variable.
1117         (Qlatin_viscii_upper): New variable.
1118         (syms_of_mule_charset): Set up new symbol
1119         `vietnamese-viscii-lower' and `vietnamese-viscii-upper'.
1120         (complex_vars_of_mule_charset): Set up new charset
1121         `vietnamese-viscii-lower' and `vietnamese-viscii-upper'; new macro
1122         `GENERATE_94_SET' and `GENERATE_96_SET'; use them to generate
1123         `ucs_to_<CHARSET>' tables.
1124
1125 1999-09-08  MORIOKA Tomohiko  <tomo@etl.go.jp>
1126
1127         * text-coding.c: New file.
1128
1129 1999-09-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
1130
1131         * mule-charset.c (Fmake_char): Fix problem of 256-set.
1132
1133         * char-ucs.h (Vcharset_ucs_bmp): New variable.
1134         (MAKE_CHAR): Modify for `ucs-bmp'.
1135         (breakup_char_1): Return `ucs-bmp' and code point of BMP for
1136         non-MULE characters of BMP.
1137
1138 1999-09-06  MORIOKA Tomohiko  <tomo@etl.go.jp>
1139
1140         * mule-charset.c (vars_of_mule_charset):
1141         Update `utf-2000-version' to 0.6.
1142
1143 1999-09-05  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1144
1145         * lstream.h:
1146         - Include multibyte.h instead of character.h for `BYTE_ASCII_P'.
1147         - Include character.h for `CHAR_ASCII_P'.
1148
1149         * mb-multibyte.h (CHAR_MULTIBYTE_P): Moved from mule-charset.h.
1150
1151         * mule-charset.h (CHAR_MULTIBYTE_P): Moved to mb-multibyte.h.
1152         (CHAR_ASCII_P): Don't use `CHAR_MULTIBYTE_P'.
1153
1154         * mb-multibyte.h (BYTE_ASCII_P): Moved from char-ucs.h.
1155         (BYTE_C0_P): Likewise.
1156         (BYTE_C1_P): Likewise.
1157         (Lstream_get_emchar_1): Likewise.
1158         (Lstream_fput_emchar): Likewise.
1159         (Lstream_funget_emchar): Likewise.
1160         (copy_internal_to_external): Likewise.
1161         (copy_external_to_internal): Likewise.
1162
1163         * char-ucs.h (BYTE_ASCII_P): Moved to mb-multibyte.h.
1164         (BYTE_C0_P): Likewise.
1165         (BYTE_C1_P): Likewise.
1166         (Lstream_get_emchar_1): Likewise.
1167         (Lstream_fput_emchar): Likewise.
1168         (Lstream_funget_emchar): Likewise.
1169         (copy_internal_to_external): Likewise.
1170         (copy_external_to_internal): Likewise.
1171
1172         * mb-1byte.h (BYTE_ASCII_P): Moved from buffer.h.
1173         (REP_BYTES_BY_FIRST_BYTE): Likewise.
1174
1175         * buffer.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-1byte.h.
1176         (BYTE_ASCII_P): Moved to mb-1byte.h.
1177
1178 1999-09-04  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1179
1180         * mb-utf-8.h, mb-lb.h: Include mb-multibyte.h.
1181
1182         * multibyte.h: Include mb-1byte.h in unibyte-XEmacs.
1183         (MAX_EMCHAR_LEN): Moved to mb-1byte.h.
1184         (VALID_CHARPTR_P): Moved to mb-*byte.h.
1185         (VALIDATE_CHARPTR_BACKWARD): Likewise.
1186         (VALIDATE_CHARPTR_FORWARD): Likewise.
1187         (simple_charptr_emchar): Moved to mb-multibyte.h.
1188         (simple_set_charptr_emchar): Likewise.
1189         (simple_charptr_copy_char): Likewise.
1190         (non_ascii_charptr_emchar): Likewise.
1191         (non_ascii_set_charptr_emchar): Likewise.
1192         (non_ascii_charptr_copy_char): Likewise.
1193         (charptr_emchar): Moved to mb-*byte.h.
1194         (set_charptr_emchar): Likewise.
1195         (charptr_copy_char): Likewise.
1196
1197         * mb-1byte.h, mb-multibyte.h: New files.
1198
1199 1999-09-03  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1200
1201         * mb-utf-8.h (MULTIBYTE): New macro.
1202         (MAX_EMCHAR_LEN): Moved from buffer.h.
1203         (REP_BYTES_BY_FIRST_BYTE): Moved from char-ucs.h.
1204
1205         * char-ucs.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-utf-8.h.
1206
1207         * mb-lb.h, multibyte.h: New files.
1208
1209         * char-1byte.h (Charset_ID): Moved from buffer.h.
1210         (MIN_LEADING_BYTE): Likewise.
1211         (LEADING_BYTE_ASCII): Likewise.
1212         (NUM_LEADING_BYTES): Likewise.
1213         (CHARSETP): Likewise.
1214         (CHARSET_BY_LEADING_BYTE): Likewise.
1215         (XCHARSET_LEADING_BYTE): Likewise.
1216         (XCHARSET_GRAPHIC): Likewise.
1217         (XCHARSET_COLUMNS): Likewise.
1218         (XCHARSET_DIMENSION): Likewise.
1219         (CHAR_CHARSET): Likewise.
1220         (CHAR_LEADING_BYTE): Likewise.
1221         (BREAKUP_CHAR): Likewise.
1222         (Vcharset_ascii): Likewise.
1223
1224         * buffer.h: Include multibyte.h unconditionally.
1225         (VALID_CHARPTR_P): Moved to multibyte.h.
1226         (ASSERT_VALID_CHARPTR): Likewise.
1227         (REAL_INC_CHARPTR): Likewise.
1228         (REAL_INC_CHARBYTIND): Likewise.
1229         (REAL_DEC_CHARPTR): Likewise.
1230         (INC_CHARPTR): Likewise.
1231         (INC_CHARBYTIND): Likewise.
1232         (DEC_CHARPTR): Likewise.
1233         (VALIDATE_CHARPTR_BACKWARD): Likewise.
1234         (VALIDATE_CHARPTR_FORWARD): Likewise.
1235         (charptr_n_addr): Likewise.
1236         (MAX_EMCHAR_LEN): Moved to mb-*.h.
1237         (simple_charptr_emchar): Moved to multibyte.h.
1238         (simple_set_charptr_emchar): Likewise.
1239         (simple_charptr_copy_char): Likewise.
1240         (non_ascii_charptr_emchar): Likewise.
1241         (non_ascii_set_charptr_emchar): Likewise.
1242         (non_ascii_charptr_copy_char): Likewise.
1243         (charptr_emchar): Likewise.
1244         (set_charptr_emchar): Likewise.
1245         (charptr_copy_char): Likewise.
1246         (charptr_emchar_n): Likewise.
1247         (Charset_ID): Moved to char-1byte.h.
1248         (Vcharset_ascii): Likewise.
1249         (CHAR_CHARSET): Likewise.
1250         (CHAR_LEADING_BYTE): Likewise.
1251         (LEADING_BYTE_ASCII): Likewise.
1252         (NUM_LEADING_BYTES): Likewise.
1253         (MIN_LEADING_BYTE): Likewise.
1254         (CHARSETP): Likewise.
1255         (CHARSET_BY_LEADING_BYTE): Likewise.
1256         (XCHARSET_LEADING_BYTE): Likewise.
1257         (XCHARSET_GRAPHIC): Likewise.
1258         (XCHARSET_COLUMNS): Likewise.
1259         (XCHARSET_DIMENSION): Likewise.
1260         (BREAKUP_CHAR): Likewise.
1261
1262 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1263
1264         * character.h: Add document about interface for characters.
1265
1266         * char-ucs.h (CHAR_ASCII_P): Modify name of argument.
1267         (MAKE_CHAR): Delete comment about
1268         `FIELD2_TO_OFFICIAL_LEADING_BYTE' and
1269         `FIELD2_TO_PRIVATE_LEADING_BYTE'.
1270         (BREAKUP_CHAR): Modify name of arguments.
1271         (CHAR_CHARSET): Modify name of argument.
1272
1273         * buffer.h: Delete document about Emchar accessors.
1274
1275 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1276
1277         * character.h (CHAR_INTP): Moved from buffer.h
1278         (CHAR_OR_CHAR_INTP): Likewise.
1279         (XCHAR_OR_CHAR_INT): Likewise.
1280         (CHECK_CHAR_COERCE_INT): Likewise.
1281
1282         * buffer.h (CHAR_INTP): Moved to character.h
1283         (CHAR_OR_CHAR_INTP): Likewise.
1284         (XCHAR_OR_CHAR_INT): Likewise.
1285         (CHECK_CHAR_COERCE_INT): Likewise.
1286
1287 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1288
1289         * character.h:
1290         - Move definitions about UCS-2000 (UCS-4) to char-ucs.h.
1291         - Include char-1byte.h, char-lb.h or char-ucs.h.
1292
1293         * mb-utf-8.h (CHAR_ASCII_P): Moved to char-ucs.h.
1294
1295         * buffer.h: Include character unconditionally.
1296         (valid_char_p): Moved to char-*.h.
1297         (non_ascii_valid_char_p): Moved to char-lb.h.
1298
1299         * char-1byte.h, char-lb.h, char-ucs.h: New files.
1300
1301 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
1302
1303         * mule-ccl.c (ccl_driver): Don't define `CCL_WriteMultibyteChar2'
1304         in UTF-2000 because it is not ported yet and not to use
1305         `FIELD2_TO_OFFICIAL_LEADING_BYTE', `MIN_LEADING_BYTE_OFFICIAL_2',
1306         `FIELD1_TO_OFFICIAL_LEADING_BYTE' and
1307         `FIELD1_TO_PRIVATE_LEADING_BYTE'.
1308
1309         * mb-utf-8.h (CHAR_MULTIBYTE_P): Moved from character.h.
1310         (CHAR_ASCII_P): Moved from character.h.
1311
1312         * character.h (CHAR_MULTIBYTE_P): Moved to mb-utf-8.h.
1313         (CHAR_ASCII_P): Likewise.
1314         (CHAR_FIELD1_MASK): Deleted.
1315         (CHAR_FIELD2_MASK): Deleted.
1316         (CHAR_FIELD3_MASK): Deleted.
1317         (MAX_CHAR_BASIC_LATIN): New macro.
1318         (CHAR_FIELD1): Deleted.
1319         (CHAR_FIELD2_INTERNAL): Deleted.
1320         (CHAR_FIELD3_INTERNAL): Deleted.
1321         (FIELD1_TO_PRIVATE_LEADING_BYTE): Deleted.
1322         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Deleted.
1323         (FIELD2_TO_PRIVATE_LEADING_BYTE): Deleted.
1324         (FIELD2_TO_OFFICIAL_LEADING_BYTE): Deleted.
1325         (MIN_CHAR_FIELD1_OFFICIAL): Deleted.
1326         (MAX_CHAR_FIELD1_OFFICIAL): Deleted.
1327         (MIN_CHAR_FIELD2_PRIVATE): Deleted.
1328         (MAX_CHAR_FIELD2_PRIVATE): Deleted.
1329         (MIN_CHAR_FIELD1_PRIVATE): Deleted.
1330         (MAX_CHAR_FIELD1_PRIVATE): Deleted.
1331         (MULE_CHAR_PRIVATE_OFFSET): Deleted.
1332         (MIN_CHAR_PRIVATE_TYPE9N): Deleted.
1333         (MAX_CHAR_PRIVATE_TYPE9N): Deleted.
1334         (MIN_CHAR_PRIVATE_TYPE9NX9N): Deleted.
1335         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Deleted.
1336         (MIN_CHAR_COMPOSITION): Deleted.
1337         (breakup_char_1): Use `MAX_CHAR_BASIC_LATIN' instead of
1338         `CHAR_ASCII_P'; use `0x7f' instead of `CHAR_FIELD3_INTERNAL'.
1339
1340 1999-09-02  MORIOKA Tomohiko  <tomo@m17n.org>
1341
1342         * buffer.h: Include mb-utf-8.h in UTF-2000.
1343
1344         * character.h (BUFBYTE_FIRST_BYTE_P): Moved to mb-utf-8.h.
1345
1346         * mb-utf-8.h: New file.
1347
1348 1999-09-02  MORIOKA Tomohiko  <tomo@etl.go.jp>
1349
1350         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use `Charset_ID'
1351         instead of `int'.
1352
1353         * mule-charset.h, buffer.h (Charset_ID): New type.
1354
1355 1999-09-01  MORIOKA Tomohiko  <tomo@etl.go.jp>
1356
1357         * mule-canna.c (c2mu): Use `MAKE_CHAR',
1358         `Vcharset_japanese_jisx0212' and `Vcharset_japanese_jisx0208'
1359         instead of `MULE_CHAR_PRIVATE_OFFSET',
1360         `LEADING_BYTE_JAPANESE_JISX0212', `LEADING_BYTE_JAPANESE_JISX0208'
1361         and `FIELD1_TO_OFFICIAL_LEADING_BYTE'.
1362         (m2c): Use `BREAKUP_CHAR' and `XCHARSET_FINAL'.
1363
1364         * character.h (Vcharset_japanese_jisx0212): New variable
1365         definition.
1366
1367 1999-09-01  MORIOKA Tomohiko  <tomo@etl.go.jp>
1368
1369         * mule-charset.c (Vcharset_ucs_bmp): New variable in UTF-2000.
1370         (charset_by_attributes): Delete array about direction.
1371         (latin_a_char_to_charset): New variable in UTF-2000.
1372         (latin_a_char_to_byte1): New variable in UTF-2000.
1373         (latin_a_char_to_byte2): New variable in UTF-2000.
1374         (Qucs_bmp): New variable.
1375         (next_allocated_1_byte_leading_byte): Use `Charset_ID' instead of
1376         `Bufbyte'.
1377         (next_allocated_2_byte_leading_byte): Likewise.
1378         (non_ascii_set_charptr_emchar): Likewise.
1379         (make_charset): Likewise; add `CHARSET_TYPE_128X128' and
1380         `CHARSET_TYPE_256X256' in UTF-2000; modify for
1381         `charset_by_attributes'.
1382         (get_unallocated_leading_byte): Use `Charset_ID' instead of `int'.
1383         (char-charset): Use `CHAR_CHARSET' instead of `CHAR_LEADING_BYTE'
1384         and `CHARSET_BY_LEADING_BYTE'.
1385         (syms_of_mule_charset): Set up `ucs-bmp'; move setting of
1386         `utf-2000-version' to `vars_of_mule_charset'.
1387         (vars_of_mule_charset): Modify for `charset_by_attributes'; don't
1388         define `leading-code-private-11' in UTF-2000; move setting of
1389         `utf-2000-version' from `syms_of_mule_charset'.
1390         (complex_vars_of_mule_charset): Set up charset `ucs-bmp' in
1391         UTF-2000.
1392
1393         * character.h (Charset_ID): New type.
1394         (LEADING_BYTE_UCS_BMP): New macro.
1395         (LEADING_BYTE_CONTROL_1): Changed from 0x8F to 0x81.
1396         (CHARSET_ID_OFFSET_94): New macro.
1397         (MIN_CHARSET_ID_PRIVATE_94): New macro.
1398         (MAX_CHARSET_ID_PRIVATE_94): New macro.
1399         (LEADING_BYTE_ASCII): Changed to use CHARSET_ID_OFFSET_94 and
1400         final-byte.
1401         (LEADING_BYTE_KATAKANA_JISX0201): Likewise.
1402         (LEADING_BYTE_LATIN_JISX0201): Likewise.
1403         (CHARSET_ID_OFFSET_96): New macro.
1404         (LEADING_BYTE_LATIN_ISO8859_1): Changed to use
1405         CHARSET_ID_OFFSET_96 and final-byte.
1406         (LEADING_BYTE_LATIN_ISO8859_2): Likewise.
1407         (LEADING_BYTE_LATIN_ISO8859_3): Likewise.
1408         (LEADING_BYTE_LATIN_ISO8859_4): Likewise.
1409         (LEADING_BYTE_GREEK_ISO8859_7): Likewise.
1410         (LEADING_BYTE_ARABIC_ISO8859_6): Likewise.
1411         (LEADING_BYTE_HEBREW_ISO8859_8): Likewise.
1412         (LEADING_BYTE_CYRILLIC_ISO8859_5): Likewise.
1413         (LEADING_BYTE_LATIN_ISO8859_9): Likewise.
1414         (LEADING_BYTE_THAI_TIS620): Likewise.
1415         (MIN_LEADING_BYTE_PRIVATE_1): Changed from 0x0D0 to 0xD0.
1416         (MAX_LEADING_BYTE_PRIVATE_1): Changed from 0x11f to 0xDF.
1417         (CHARSET_ID_OFFSET_94x94): New macro.
1418         (LEADING_BYTE_CHINESE_BIG5_1): Changed to use
1419         CHARSET_ID_OFFSET_94x94 and final-byte.
1420         (LEADING_BYTE_CHINESE_BIG5_2): Likewise.
1421         (MIN_LEADING_BYTE_PRIVATE_2): Likewise.
1422         (MAX_LEADING_BYTE_PRIVATE_2): Likewise.
1423         (LEADING_BYTE_JAPANESE_JISX0208_1978): Likewise.
1424         (LEADING_BYTE_CHINESE_GB2312): Likewise.
1425         (LEADING_BYTE_JAPANESE_JISX0208): Likewise.
1426         (LEADING_BYTE_KOREAN_KSC5601): Likewise.
1427         (LEADING_BYTE_JAPANESE_JISX0212): Likewise.
1428         (LEADING_BYTE_CHINESE_CCITT_GB): Likewise.
1429         (LEADING_BYTE_CHINESE_CNS11643_*): Likewise.
1430         (LEADING_BYTE_KOREAN_KPS9566): Likewise.
1431         (CHARSET_TYPE_128X128): New macro.
1432         (CHARSET_TYPE_256X256): New macro.
1433         (XCHARSET_PRIVATE_P): Delete unconditionally.
1434         (charset_by_attributes): Delete array about direction.
1435         (CHARSET_BY_LEADING_BYTE): Use `Charset_ID' instead of `int'.
1436         (CHARSET_BY_ATTRIBUTES): Modify for `charset_by_attributes'.
1437         (MIN_CHAR_94): New macro.
1438         (MAX_CHAR_94): New macro.
1439         (MIN_CHAR_96): New macro.
1440         (MAX_CHAR_96): New macro.
1441         (MIN_CHAR_94x94): New macro.
1442         (MAX_CHAR_94x94): New macro.
1443         (MIN_CHAR_96x96): New macro.
1444         (MAX_CHAR_96x96): New macro.
1445         (FIELD1_TO_PRIVATE_LEADING_BYTE): Use `CHARSET_ID_OFFSET_94x94'.
1446         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
1447         (FIELD2_TO_PRIVATE_LEADING_BYTE): Use `(MIN_LEADING_BYTE_PRIVATE_1
1448         - 32)'.
1449         (FIELD2_TO_OFFICIAL_LEADING_BYTE): Use `LEADING_BYTE_ASCII'.
1450         (MIN_CHAR_FIELD2_OFFICIAL): Deleted.
1451         (MAX_CHAR_FIELD2_OFFICIAL): Deleted.
1452         (MIN_CHAR_OFFICIAL_TYPE9N): Deleted.
1453         (MAX_CHAR_PRIVATE_TYPE9N): Changed.
1454         (MAKE_CHAR): Use `XCHARSET_FINAL' instead of
1455         `XCHARSET_LEADING_BYTE' to make code-point.
1456         (latin_a_char_to_charset): New variable.
1457         (latin_a_char_to_byte1): New variable.
1458         (latin_a_char_to_byte2): New variable.
1459         (breakup_char_1): Use `latin_a_char_to_{charset|byte1|byte2}' for
1460         Latin Extended-A; use `CHARSET_BY_ATTRIBUTES' instead of
1461         `CHARSET_BY_LEADING_BYTE' to get charset for ISO-2022 characters.
1462
1463         * insdel.c (find_charsets_in_bufbyte_string): Use `Charset_ID'
1464         instead of `unsigned char'; use `MIN_LEADING_BYTE' instead of 128.
1465         (find_charsets_in_emchar_string): Likewise.
1466         (vars_of_insdel): Don't define local variable `i' in UTF-2000.
1467
1468         * file-coding.c (Fdecode_big5_char): Use `Charset_ID' instead of
1469         `int'.
1470         (decode_coding_iso2022): Likewise.
1471
1472         * toolbar-x.c (x_output_toolbar_button): Use `Charset_ID' instead
1473         of `unsigned char'.
1474
1475         * redisplay.c (redisplay_text_width_emchar_string): Use
1476         `Charset_ID' instead of `unsigned char'.
1477         (redisplay_frame_text_width_string): Likewise.
1478
1479         * glyphs.c (glyph_height_internal): Use `Charset_ID' instead of
1480         `unsigned char'.
1481
1482         * faces.h, faces.c (ensure_face_cachel_complete): Use `Charset_ID'
1483         instead of `unsigned char'.
1484         (face_cachel_charset_font_metric_info): Likewise.
1485
1486         * chartab.c (print_char_table): Use `Charset_ID' instead of `int'.
1487         (get_non_ascii_char_table_value): Likewise.
1488         (get_char_table): Likewise.
1489         (put_char_table): Likewise.
1490         (map_over_other_charset): Likewise.
1491         (map_char_table): Likewise.
1492
1493         * buffer.h (find_charsets_in_bufbyte_string): Use `Charset_ID'
1494         instead of `unsigned char'.
1495
1496 1999-08-31  MORIOKA Tomohiko  <tomo@etl.go.jp>
1497
1498         * character.h (PRE_LEADING_BYTE_PRIVATE_1): Deleted.
1499         (PRE_LEADING_BYTE_PRIVATE_2): Deleted.
1500
1501         * mule-charset.c (leading_code_private_11): Don't define in
1502         UTF-2000.
1503
1504         * mule-ccl.c (ccl_driver): Don't define `CCL_ReadMultibyteChar2'
1505         in UTF-2000 because it is not ported yet and not to use
1506         `PRE_LEADING_BYTE_PRIVATE_1' and `PRE_LEADING_BYTE_PRIVATE_2'.
1507
1508 1999-08-30  MORIOKA Tomohiko  <tomo@etl.go.jp>
1509
1510         * character.h (LEADING_BYTE_COMPOSITE): Deleted.
1511
1512 1999-08-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
1513
1514         * regex.c (re_compile_fastmap): Don't use `LEADING_BYTE_PREFIX_P'
1515         in UTF-2000.
1516
1517         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use int instead
1518         of unsigned char to store leading-byte.
1519
1520         * chartab.c (get_non_ascii_char_table_value): Don't use
1521         `BREAKUP_CHAR_1_UNSAFE' in UTF-2000.
1522
1523         * file-coding.c (encode_coding_big5): Delete bogus implementation
1524         in UTF2000.
1525
1526         * character.h (LEADING_BYTE_*): Delete definition for
1527         non-UTF-2000.
1528         (LEADING_BYTE_PRIVATE_P): Deleted unconditionally.
1529         (LEADING_BYTE_PREFIX_P): Deleted.
1530         (PRIVATE_LEADING_BYTE_PREFIX): Deleted.
1531         (BUFBYTE_FIRST_BYTE_P): Delete definition for non-UTF-2000.
1532         (BUFBYTE_LEADING_BYTE_P): Deleted.
1533         (CHARSET_PRIVATE_P): Deleted unconditionally.
1534         (rep_bytes_by_first_byte): Deleted unconditionally.
1535         (REP_BYTES_BY_FIRST_BYTE): Delete definition for non-UTF-2000.
1536         (FIELD1_TO_PRIVATE_LEADING_BYTE): Likewise.
1537         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
1538         (FIELD2_TO_PRIVATE_LEADING_BYTE): Likewise.
1539         (CHAR_FIELD2): Deleted.
1540         (CHAR_FIELD3): Deleted.
1541         (MAKE_CHAR): Delete definition for non-UTF-2000.
1542         (BREAKUP_CHAR_1_UNSAFE): Deleted.
1543         (breakup_char_1): New implementation.
1544         (CHAR_CHARSET): Use `BREAKUP_CHAR'.
1545         (CHAR_LEADING_BYTE): Use `CHAR_CHARSET'.
1546
1547 1999-08-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
1548
1549         * character.h (REP_BYTES_BY_FIRST_BYTE): Change order of
1550         condition.
1551
1552 1999-08-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
1553
1554         * character.h (LEADING_BYTE_PRIVATE_P): Don't define in UTF2000.
1555         (CHARSET_PRIVATE_P): Likewise.
1556         (XCHARSET_PRIVATE_P): Likewise.
1557         (MAKE_CHAR): Don't use XCHARSET_PRIVATE_P in UTF2000.
1558
1559         * file-coding.c (encode_coding_ucs4): Delete bogus implement in
1560         UTF2000.
1561         (decode_coding_iso2022): Don't use XCHARSET_PRIVATE_P in UTF2000.
1562
1563 1999-08-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
1564
1565         * character.h (LEADING_BYTE_*): Changed in UTF2000.
1566         (NUM_LEADING_BYTES): Changed from 128 to 256.
1567         (FIELD1_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1568         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Change value to 0x80 in
1569         UTF2000.
1570         (FIELD2_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1571
1572         * mule-charset.c (Vcharset_chinese_cns11643_3): New variable in
1573         UTF2000.
1574         (Vcharset_chinese_cns11643_4): New variable in UTF2000.
1575         (Vcharset_chinese_cns11643_5): New variable in UTF2000.
1576         (Vcharset_chinese_cns11643_6): New variable in UTF2000.
1577         (Vcharset_chinese_cns11643_7): New variable in UTF2000.
1578         (Qchinese_cns11643_3): New variable in UTF2000.
1579         (Qchinese_cns11643_4): New variable in UTF2000.
1580         (Qchinese_cns11643_5): New variable in UTF2000.
1581         (Qchinese_cns11643_6): New variable in UTF2000.
1582         (Qchinese_cns11643_7): New variable in UTF2000.
1583         (syms_of_mule_charset): Define `chinese-cns11643-3',
1584         `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
1585         and `chinese-cns11643-7' in UTF2000.
1586         (vars_of_mule_charset): Initialize
1587         next_allocated_2_byte_leading_byte by LEADING_BYTE_CHINESE_BIG5_2
1588         + 1 in UTF2000.
1589         (complex_vars_of_mule_charset): Setup charset
1590         `chinese-cns11643-3', `chinese-cns11643-4', `chinese-cns11643-5',
1591         `chinese-cns11643-6' and `chinese-cns11643-7' in UTF2000.
1592
1593 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
1594
1595         * mule-charset.c: Move setting for `leading-code-private-11' from
1596         `syms_of_mule_charset' to `vars_of_mule_charset'.
1597
1598 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
1599
1600         * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
1601         and `NUM_LEADING_BYTES' in assert.
1602
1603 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
1604
1605         * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
1606         instead of 128.
1607         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
1608         `NUM_LEADING_BYTES' instead of 128.
1609
1610 1999-08-26  MORIOKA Tomohiko  <tomo@etl.go.jp>
1611
1612         * mule-charset.h (charset_by_leading_byte): Use
1613         `NUM_LEADING_BYTES' instead of 128.
1614         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
1615
1616         * mule-charset.c (charset_by_leading_byte): Use
1617         `NUM_LEADING_BYTES' instead of 128.
1618         (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
1619
1620         * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
1621         128.
1622
1623 1999-08-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
1624
1625         * mule-charset.c (syms_of_mule_charset): Update to
1626         0.4 (Shin-Imamiya).
1627
1628 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
1629
1630         * file-coding.c (encode_coding_sjis): New implementation for
1631         UTF2000.  (decode_coding_sjis): Ditto.
1632
1633 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
1634
1635         * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
1636         Don't define in UTF2000.
1637
1638         * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
1639         defined.
1640
1641         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1642         mule-ccl.c, lstream.h, buffer.h: Include character.h in every
1643         MULE.
1644
1645 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
1646
1647         * config.h.in (CHAR_IS_UCS4): New macro.
1648
1649         * mule-charset.c (rep_bytes_by_first_byte): Modify for
1650         conventional MULE representation.
1651         (syms_of_mule_charset): Update to 0.3 (Imamiya).
1652
1653         * mule-charset.h: Reverted to original.
1654
1655         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1656         mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
1657         "mule-charset.h" if CHAR_IS_UCS4 is defined.
1658
1659         * character.h: New file.
1660
1661         * file-coding.c (Fmake_coding_system): Set 1 to
1662         `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
1663         defined.
1664         (encode_coding_no_conversion): New implementation for UTF2000.
1665
1666         * file-coding.h (struct Lisp_Coding_System): Add new member
1667         `fixed.size'.
1668
1669 1999-06-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
1670
1671         * file-coding.c (decode_coding_iso2022): Code-point arguments of
1672         `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
1673         (encode_coding_iso2022): New implementation for UTF2000.
1674
1675 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1676
1677         * mule-canna.c (c2mu): New implementation for UTF2000.
1678         (m2c): Likewise.
1679
1680 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1681
1682         * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
1683
1684 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1685
1686         * file-coding.c (reset_encoding_stream): Set 0 to
1687         `str->iso2022.current_char_boundary' in UTF2000.
1688         (encode_utf8): Don't define in UTF2000.
1689         (encode_coding_utf8): New implementation for UTF-8 representation
1690         of UTF2000.
1691         (complex_vars_of_file_coding): Define coding-system `utf-8'.
1692
1693 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1694
1695         * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
1696
1697         * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
1698         UTF2000.
1699         (REP_BYTES_BY_FIRST_BYTE): Likewise.
1700
1701         * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
1702
1703         * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
1704         local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
1705         as UTF-8 in UTF2000.
1706         (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
1707         (non_ascii_valid_char_p): Don't define in UTF2000.
1708         (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
1709         (Lstream_get_emchar_1): Likewise.
1710         (utf-2000-version): New variable in UTF2000.
1711
1712         * lread.c (read_escape): Add new reader `u'.
1713
1714         * insdel.c (three_to_one_table): Don't define in UTF2000.
1715         (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
1716         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1717         UTF2000.
1718         (bytind_to_bufpos_func): Likewise.
1719         (buffer_mule_signal_inserted_region): Likewise.
1720         (vars_of_insdel): Don't initialize `three_to_one_table'.
1721         (init_buffer_text): Use `buf->text->mule_size' instead of
1722         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1723         UTF2000.
1724
1725         * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
1726         UTF-8 representation in UTF2000.
1727         (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
1728         (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
1729         (decode_coding_iso2022): Don't define local variable `lb' in
1730         UTF2000; don't use LEADING_BYTE in UTF2000; use
1731         `DECODE_ADD_UCS_CHAR' in UTF2000.
1732         (convert_to_external_format): Decode as UTF-8 in UTF2000.
1733
1734         * config.h.in (UTF2000): New macro.
1735
1736         * buffer.h (struct buffer_text): Add new member `mule_size' and
1737         don't add `mule_shifter' and `mule_three_p' in UTF2000.
1738         (valid_char_p): Return always 1 in UTF2000.
1739         (MAX_EMCHAR_LEN): 6 in UTF2000.
1740         (three_to_one_table): Don't define in UTF2000.
1741         (real_bufpos_to_bytind): Modify for UTF-8 representation in
1742         UTF2000.
1743         (real_bytind_to_bufpos): Likewise.
1744
1745         * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
1746
1747 1999-06-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
1748
1749         * mule-charset.c (rep_bytes_by_first_byte): Modified for character
1750         representation change.
1751         (Vutf_2000_version): New variable.
1752         (leading_code_private_11): New variable.
1753         (syms_of_mule_charset): Add new variables `utf-2000-version' and
1754         `leading-code-private-11'.
1755
1756         * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
1757         (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
1758         (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
1759         (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
1760         (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
1761         (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
1762         (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
1763         (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
1764         (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
1765         (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
1766         (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
1767         (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
1768         (MIN_CHAR_GREEK): New macro.
1769         (MAX_CHAR_GREEK): New macro.
1770         (MIN_CHAR_CYRILLIC): New macro.
1771         (MAX_CHAR_CYRILLIC): New macro.
1772         (MIN_CHAR_HEBREW): New macro.
1773         (MAX_CHAR_HEBREW): New macro.
1774         (MIN_CHAR_THAI): New macro.
1775         (MAX_CHAR_THAI): New macro.
1776         (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
1777         (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
1778         (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
1779         (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
1780         (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
1781         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
1782         (CHAR_FIELD2): New inline function.
1783         (CHAR_FIELD3): New inline function.
1784         (MULE_CHAR_PRIVATE_OFFSET): New macro.
1785         (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
1786         (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
1787         (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
1788         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
1789         (MIN_CHAR_COMPOSITION): Likewise.
1790         (CHAR_LEADING_BYTE): Modified for character representation change.
1791         (MAKE_CHAR): Likewise.
1792
1793         * lisp.h (Vcharset_latin_iso8859_1): New variable.
1794         (Vcharset_greek_iso8859_7): Likewise.
1795         (Vcharset_cyrillic_iso8859_5): Likewise.
1796         (Vcharset_hebrew_iso8859_8): Likewise.
1797         (Vcharset_thai_tis620): Likewise.
1798         (Vcharset_katakana_jisx0201): Likewise.
1799
1800 2000-01-18  Martin Buchholz <martin@xemacs.org>
1801
1802         * XEmacs 21.2.27 is released.
1803
1804 2000-01-18  Martin Buchholz  <martin@xemacs.org>
1805
1806         * glyphs-eimage.c (struct tiff_error_struct):
1807         (tiff_error_func):
1808         (tiff_warning_func):
1809         #if HAVE_VSNPRINTF ==> #ifdef HAVE_VSNPRINTF
1810
1811         * unexmips.c:
1812         * unexhp9k3.c:
1813         * unexfreebsd.c:
1814         * unexec.c: Remove vestigial Lucid C code.
1815         * unexalpha.c:
1816         * unexaix.c:
1817         * termcap.c:
1818         * libsst.c: Ansify.
1819         Remove declarations of errno and strerror().
1820
1821         * eval.c (Fbacktrace): Small Purify-cation.  Fix docstring.
1822
1823         * .dbxrc (run-temacs): Use the horrible ${1+"$@"} instead of "$@".
1824
1825 2000-01-16  Martin Buchholz  <martin@xemacs.org>
1826
1827         * mule-charset.c (Fchar_octet): Resurrect from earlier in 1999.
1828         Optimize.
1829
1830 2000-01-14  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
1831
1832         * md5.c:
1833         * file-coding.c:
1834         * file-coding.h:
1835         Change enum eol_type to eol_type_t.
1836
1837 2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
1838
1839         * gui.c (get_gui_callback): Check cons before accessing car.
1840
1841 2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
1842
1843         * specifier.h (XSPECIFIER_TYPE): Add error checking version.
1844         (XSETSPECIFIER_TYPE): Ditto.
1845
1846 2000-01-17  Didier Verna  <didier@xemacs.org>
1847
1848         * redisplay.c (generate_fstring_runes): compute string size in
1849         characters, not bytes.
1850
1851 2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
1852
1853         * window.c (Fwindow_minibuffer_p): Make WINDOW optional.
1854
1855 2000-01-14  Hrvoje Niksic  <hniksic@iskon.hr>
1856
1857         * print.c (print_error_message): Call print_prepare().
1858
1859 2000-01-14  Martin Buchholz  <martin@xemacs.org>
1860
1861         * .dbxrc: Renamed from dbxrc.
1862
1863         * events.c (event_to_character):
1864         Use `assert (foo)' instead of `if (!foo) abort()'
1865
1866         * .gdbinit (xtype): Add documentation.
1867         * .gdbinit (check-temacs): New function.
1868         * .gdbinit (check-xemacs): New function.
1869         * dbxrc (check-xemacs): New function.
1870         * dbxrc (check-xemacs): New function.
1871
1872 2000-01-14  Andy Piper  <andy@xemacs.org>
1873
1874         * glyphs-widget.c (widget_query_geometry): Make sure that we
1875         calculate default dimensions correctly.
1876
1877 2000-01-13  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
1878
1879         * symsinit.h: Added prototype for reinit_vars_of_frame_mswindows.
1880
1881         * event-msw.c (vars_of_event_mswindows): Fixed a mistyped
1882         pdump_wire'd variable.
1883
1884         * emacs.c: (main_1): Conditionalized calls to
1885         reinit_vars_of_scrollbar_x and reinit_vars_of_module.
1886
1887 2000-01-13  Martin Buchholz  <martin@xemacs.org>
1888
1889         * window.c (Fset_window_configuration):
1890         * sysdep.c (_start):
1891         * input-method-motif.c (res):
1892         * event-Xt.c (Xt_process_to_emacs_event):
1893         Simple compiler warning fixes.
1894
1895         * bytecode.c (funcall_compiled_function): Use the original
1896         function symbol on the backtrace list in preference to the
1897         compiled_function object in error messages.
1898
1899 2000-01-13  Andy Piper  <andy@xemacs.org>
1900
1901         * glyphs-x.c (update_widget_face): Make sure we update the widget
1902         background as well as foreground.
1903
1904 2000-01-13  Andy Piper  <andy@xemacs.org>
1905
1906         * glyphs.h (struct Lisp_Image_Instance): Move justify and orient
1907         fields to subwindow.
1908         (IMAGE_INSTANCE_SUBWINDOW_JUSTIFY): new macro.
1909         (XIMAGE_INSTANCE_SUBWINDOW_JUSTIFY): ditto.
1910         (IMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
1911         (XIMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
1912
1913         * glyphs-widget.c (check_valid_tab_orientation): new function.
1914         (initialize_widget_image_instance): zero orientation and
1915         justification.
1916         (widget_instantiate): pick up orientation.
1917         (tab_control_query_geometry): return appropriate values for
1918         vertical tabs.
1919
1920         * glyphs-msw.c: (mswindows_tab_control_instantiate): assign
1921         appropriate creation flags for left, right and bottom tabs.
1922
1923         * s/cygwin32.h: add tab definitions.
1924
1925 2000-01-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
1926
1927         * glyphs-msw.c (mswindows_unmap_subwindow): Set focus back to the
1928         frame upon hiding a subwindow.
1929         (mswindows_button_instantiate): Changed the push button style to
1930         BS_PUSHBUTTON.
1931         (mswindows_button_instantiate): Removed button BS_NOTIFY
1932         style.
1933         (mswindows_button_instantiate): Removed redundant check for
1934         a disabled gui item.
1935         (mswindows_button_instantiate): Made use of WS_TABSTOP
1936         consistent: "operable" controls (edit, button, tree, scroll) have
1937         this style, "display-only" ones (static, progress gauge) do
1938         not. This style is currently ignored by XEmacs though. Also,
1939         removed the WS_EX_CONTROLPARENT style - it is not for children,
1940         it is for their parents!
1941         (mswindows_edit_field_instantiate): Ditto.
1942         (mswindows_progress_gauge_instantiate): Ditto.
1943         (mswindows_tree_view_instantiate): Ditto.
1944         (mswindows_tab_control_instantiate): Ditto.
1945         (mswindows_scrollbar_instantiate): Ditto.
1946         (mswindows_combo_box_instantiate): Ditto.
1947         (mswindows_widget_instantiate): Added the WS_EX_CONTROLPARENT
1948         style to the "clip" window.
1949         (mswindows_button_instantiate): Removed compilation warning by
1950         equally typing terms of the ?: operator.
1951
1952 2000-01-12  Didier Verna  <didier@xemacs.org>
1953
1954         * redisplay.c (generate_fstring_runes): new parameter holding the
1955         last modeline-format extent.
1956         (add_glyph_to_fstring_db_runes): new parameter holding the glyph
1957         extent, fill the glyph block with it.
1958         (generate_fstring_runes): handle these parameters.
1959         (generate_formatted_string_db): ditto.
1960
1961         * keymap.c (get_relevant_keymaps): retreive the keymaps from the
1962         glyphs'extents in the modeline.
1963
1964 1999-01-11  Mike Woolley  <mike@bulsara.com>
1965
1966         * ntheap.c: Reduced the reserved heap space from 1Gb down to
1967         256Mb, as a workaround for the non-starting problem many people
1968         have experienced.
1969
1970 2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
1971
1972         * console-tty.c (Fset_console_tty_output_coding_system):
1973         Force redrawing tty frame.
1974
1975 2000-01-10  Didier Verna  <didier@xemacs.org>
1976
1977         * redisplay.c (generate_fstring_runes): fix size computation bug.
1978
1979 2000-01-09  William M. Perry <wmperry@aventail.com>
1980
1981         * gpmevent.c: (gpm_next_event_cb): Don't return value from void function.
1982
1983 2000-01-09  Andy Piper  <andy@xemacs.org>
1984
1985         * glyphs-msw.c: index -> i to avoid shadows.
1986         (xbm_create_bitmap_from_data): make static.
1987         (check_valid_string_or_int): deleted.
1988         (mswindows_control_wnd_proc): message -> msg to avoid shadows.
1989
1990         * glyphs-x.c (x_update_subwindow): remove unused args.
1991
1992         * glyphs.c (glyph_image_instance): return the thing. Don't set the
1993         back pointer - this is done in allocate_image_instance.
1994         (query_string_font): return Qnil to make the compiler happy.
1995         (unmap_subwindow): set to ~0 to make the compiler happy.
1996         (glyph_query_geometry): comment out until used.
1997         (glyph_layout): ditto.
1998
1999 2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
2000
2001         * insdel.c (signal_after_change): Remove extraneous unbind_to().