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