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