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