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