1 1999-11-09 MORIOKA Tomohiko <tomo@urania.m17n.org>
3 * mule-charset.c (Fdefine_char): Fix problem with non-UCS
6 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
8 * char-ucs.h (SPLIT_CHAR): Don't make new cell if a charset slot
11 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
13 * mule-charset.c (Fget_char_attribute): If ATTRIBUTE is a name of
14 charset, it is regarded as a charset.
15 (put_char_attribute): New function in UTF-2000.
16 (Fput_char_attribute): If ATTRIBUTE is a charset or a name of
17 charset, mapping-table of the charset is modified.
18 (Fdefine_char): New function in UTF-2000.
19 (Fset_charset_mapping_table): Use `put_char_attribute' instead of
20 `Fput_char_attribute'.
21 (syms_of_mule_charset): Add new function `define-char' and new
22 symbol `ucs' in UTF-2000.
23 (vars_of_mule_charset): Update `utf-2000-version' to 0.11 (Shiki).
25 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
27 * mule-charset.c (Fcharset_name): Define `byte_offset' in
28 non-UTF-2000 configuration.
30 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
32 * text-coding.c (char_encode_shift_jis): Use `charset_code_point'
33 not to use `XCHARSET_ENCODING_TABLE (Vcharset_latin_jisx0201)'.
35 * mule-charset.c (mark_charset): `cs->encoding_table' has been
37 (make_charset): Don't use `CHARSET_ENCODING_TABLE(cs)'.
38 (Fset_charset_mapping_table): Likewise.
40 * char-ucs.h (struct Lisp_Charset): Delete `encoding_table'.
41 (CHARSET_ENCODING_TABLE): Delete.
42 (XCHARSET_ENCODING_TABLE): Delete.
43 (charset_code_point): New interface.
45 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
47 * text-coding.c (char_encode_iso2022): Use `charset_code_point'
48 instead of `charset_get_byte1' and `charset_get_byte2'.
50 * mule-charset.c, char-ucs.h (charset_get_byte1): Deleted.
51 (charset_get_byte2): Deleted.
53 1999-10-28 MORIOKA Tomohiko <tomo@etl.go.jp>
55 * char-ucs.h (SPLIT_CHAR): New inline function.
56 (breakup_char_1): Use `SPLIT_CHAR'.
58 * mule-charset.c (range_charset_code_point): New function.
59 (charset_code_point): New function.
61 * char-ucs.h (range_charset_code_point): New interface.
62 (breakup_char_1): Use `range_charset_code_point'.
64 1999-10-27 MORIOKA Tomohiko <tomo@etl.go.jp>
66 * mule-charset.c (Fmake_charset): Delete unused local variable
69 * char-ucs.h (Vcharacter_attribute_table): New extern variable.
70 (breakup_char_1): Find a charset and code-point in
71 `Vcharacter_attribute_table'.
73 1999-10-27 MORIOKA Tomohiko <tomo@etl.go.jp>
75 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
78 1999-10-25 MORIOKA Tomohiko <tomo@etl.go.jp>
80 * mule-charset.c (Vcharacter_attribute_table): New variable.
81 (Fchar_attribute_alist): New function.
82 (Fget_char_attribute): New function.
83 (Fput_char_attribute): New function.
84 (Fset_charset_mapping_table): Setup `Vcharacter_attribute_table'
86 (syms_of_mule_charset): Add new function `char-attribute-alist',
87 `get-char-attribute' and `put-char-attribute'.
88 (vars_of_mule_charset): Setup `Vcharacter_attribute_table'.
90 1999-10-19 MORIOKA Tomohiko <tomo@etl.go.jp>
92 * mule-charset.c (Fmake_charset): Just use
93 `get_unallocated_leading_byte'.
95 * char-ucs.h (LEADING_BYTE_*): Use ISO-IR numbers for official
96 sets; don't use final-byte based number for private sets.
98 1999-10-12 MORIOKA Tomohiko <tomo@etl.go.jp>
100 * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
103 1999-10-12 MORIOKA Tomohiko <tomo@etl.go.jp>
105 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
108 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
110 * regex.c (compile_extended_range): Use `CHAR_CHARSET_ID' instead
111 of `CHAR_LEADING_BYTE' in UTF-2000.
113 * insdel.c (find_charsets_in_bufbyte_string): Use
114 `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
115 (find_charsets_in_emchar_string): Likewise.
117 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use
118 `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
120 * char-ucs.h (CHAR_LEADING_BYTE): Deleted.
121 (CHAR_CHARSET_ID): New macro.
123 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
125 * chartab.c (get_char_table): Don't use type `Charset_ID' for
126 charset-id - MIN_LEADING_BYTE.
127 (put_char_table): Likewise.
129 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
131 * char-ucs.h (MIN_LEADING_BYTE): Changed to `-0x40'.
132 (NUM_LEADING_BYTES): Changed to (80 * 3 - MIN_LEADING_BYTE).
133 (CHARSET_LEADING_BYTE): Don't cast by `Bufbyte'.
134 (CHARSET_ID_OFFSET): New macro.
135 (LEADING_BYTE_CONTROL_1): Changed to (CHARSET_ID_OFFSET - 1).
136 (LEADING_BYTE_UCS_BMP): Changed to (CHARSET_ID_OFFSET - 2).
137 (LEADING_BYTE_LATIN_VISCII): Changed to (CHARSET_ID_OFFSET - 3).
138 (LEADING_BYTE_HIRAGANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
140 (LEADING_BYTE_KATAKANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
142 (MIN_LEADING_BYTE_PRIVATE): Changed to `MIN_LEADING_BYTE'.
143 (MAX_LEADING_BYTE_PRIVATE): Changed to (CHARSET_ID_OFFSET - 6).
144 (CHARSET_ID_OFFSET_94): Changed to (CHARSET_ID_OFFSET - '0').
145 (CHARSET_ID_OFFSET_96): Changed to (CHARSET_ID_OFFSET_94 + 80).
146 (CHARSET_ID_OFFSET_94x94): Changed to (CHARSET_ID_OFFSET_96 + 80).
148 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
150 * mule-charset.c (next_allocated_leading_byte): New variable in
152 (next_allocated_1_byte_leading_byte): Don't define in UTF-2000.
153 (next_allocated_2_byte_leading_byte): Don't define in UTF-2000.
154 (get_unallocated_leading_byte): Simply use
155 `next_allocated_leading_byte' [ignore dimension] in UTF-2000.
156 (vars_of_mule_charset): Setup `next_allocated_leading_byte' in
159 * char-ucs.h (MIN_LEADING_BYTE_PRIVATE): New macro.
160 (MAX_LEADING_BYTE_PRIVATE): New macro.
161 (MIN_LEADING_BYTE_OFFICIAL_2): Deleted.
162 (MAX_LEADING_BYTE_OFFICIAL_2): Deleted.
164 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
166 * mule-charset.c (Fmake_charset): Allocate final-byte based
167 charset-id for 94-set, 96-set and 94x94-set.
169 1999-10-11 MORIOKA Tomohiko <tomo@etl.go.jp>
171 * mule-charset.c (char_byte_table_equal): Fill braces to avoid
173 (Fmake_charset): Likewise.
174 (complex_vars_of_mule_charset): Modify the font registry of
175 `ucs-bmp' not to match `Ethiopic-Unicode'.
177 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
179 * mule-charset.c (complex_vars_of_mule_charset): Add font
180 registory of `ucs-bmp'.
182 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
184 * text-coding.c (char_encode_iso2022): Ignore non-ISO-2022
185 coded-charsets in `default-coded-charset-priority-list' when
186 breaking up a character.
188 * mule-charset.c (Vcharset_latin_viscii): New variable.
189 (Qlatin_viscii): New variable.
190 (make_charset): Don't use `decoding_table'.
191 (Fmake_charset): Regard graphic = 2 as 256^n-set; setup
193 (Fset_charset_mapping_table): New implementation.
194 (syms_of_mule_charset): Add new symbol `latin-viscii'.
195 (complex_vars_of_mule_charset): Set `graphic' attribute of charset
196 `ucs-bmp' and `latin_viscii' to 2; change font registry of charset
197 `latin-viscii-lower' to "MULEVISCII-LOWER"; change font registry
198 of charset `latin-viscii-upper' to "MULEVISCII-UPPER"; add new
199 charset `latin_viscii'.
201 * char-ucs.h (LEADING_BYTE_LATIN_VISCII): New macro.
202 (CHARSET_TYPE_94X94): Change to 1 from 2.
203 (CHARSET_TYPE_96): Change to 2 from 1.
204 (CHARSET_TYPE_128): New macro.
205 (CHARSET_TYPE_128X128): Change to 5 from 4.
206 (CHARSET_TYPE_256): New macro.
207 (CHARSET_TYPE_256X256): Change to 7 from 5.
208 (MAKE_CHAR): Use `XCHARSET_BYTE_OFFSET(charset)'.
210 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
212 * text-coding.c (char_encode_shift_jis): Refer
213 `XCHARSET_ENCODING_TABLE(Vcharset_latin_jisx0201)' instead of
214 `XCHARSET_TO_BYTE1_TABLE(Vcharset_latin_jisx0201)'.
216 * mule-charset.c (mark_char_byte_table): New function in UTF-2000.
217 (char_byte_table_equal): New function in UTF-2000.
218 (char_byte_table_hash): New function in UTF-2000.
219 (char_byte_table_description): New constant in UTF-2000.
220 (char_byte_table): New type in UTF-2000.
221 (make_char_byte_table): New function in UTF-2000.
222 (copy_char_byte_table): New function in UTF-2000.
223 (make_char_code_table): New macro in UTF-2000.
224 (get_char_code_table): New function in UTF-2000.
225 (put_char_code_table): New function in UTF-2000.
226 (mark_charset): Mark `cs->encoding_table' in UTF-2000.
227 (charset_description): Add setting in UTF-2000.
228 (make_charset): Setup `CHARSET_ENCODING_TABLE(cs)' instead of
229 `CHARSET_TO_BYTE1_TABLE(cs)'.
230 (charset_get_byte1): Refer `XCHARSET_ENCODING_TABLE(charset)'
231 instead of `XCHARSET_TO_BYTE1_TABLE(charset)'.
232 (charset_get_byte2): Refer `XCHARSET_ENCODING_TABLE(charset)'
233 instead of `XCHARSET_TO_BYTE2_TABLE(charset)'.
234 (Fset_charset_mapping_table): Setup `CHARSET_ENCODING_TABLE(cs)'
235 instead of `CHARSET_TO_BYTE1_TABLE(cs)' and
236 `CHARSET_TO_BYTE2_TABLE(cs)'.
238 * char-ucs.h (char_byte_table): New type.
239 (XCHAR_BYTE_TABLE): New macro.
240 (XSETCHAR_BYTE_TABLE): New macro.
241 (CHAR_BYTE_TABLE_P): New macro.
242 (GC_CHAR_BYTE_TABLE_P): New macro.
243 (struct Lisp_Char_Byte_Table): New structure.
244 (get_char_code_table): New interface.
245 (Emchar_to_byte_table): Deleted.
246 (get_byte_from_character_table): Deleted.
247 (struct Lisp_Charset): Add `encoding_table'; delete
248 `to_byte1_table' and `to_byte2_table'.
249 (CHARSET_ENCODING_TABLE): New macro.
250 (CHARSET_TO_BYTE1_TABLE): Deleted.
251 (CHARSET_TO_BYTE2_TABLE): Deleted.
252 (XCHARSET_ENCODING_TABLE): New macro.
253 (XCHARSET_TO_BYTE1_TABLE): Deleted.
254 (XCHARSET_TO_BYTE2_TABLE): Deleted.
256 1999-10-07 MORIOKA Tomohiko <tomo@etl.go.jp>
258 * mule-charset.c (syms_of_mule_charset): Delete charset alias
259 `vietnamese-viscii-*'.
261 1999-10-07 MORIOKA Tomohiko <tomo@etl.go.jp>
263 * mule-charset.c (Qvietnamese_viscii_lower): New variable.
264 (Qvietnamese_viscii_upper): New variable.
265 (Fdefine_charset_alias): New function.
266 (syms_of_mule_charset): Add new function `define-charset-alias'.
267 (syms_of_mule_charset): Rename charset `vietnamese-viscii-*' to
268 `latin-viscii-*'; define `vietnamese-viscii-*' as aliases for
271 1999-10-04 MORIOKA Tomohiko <tomo@etl.go.jp>
273 * char-ucs.h (MIN_CHAR_OBS_94x94): New macro.
274 (MAX_CHAR_OBS_94x94): New macro.
275 (breakup_char_1): Support obsolete XEmacs-UCS private code space
278 * mule-charset.c (put_byte_from_character_table): Change unit size
280 (mark_charset): Don't mark `cs->decoding_table' if `UTF2000' is
282 (Fmake_reverse_direction_charset): Modify dummy argument of
283 `make_charset' for non-UTF-2000 environment.
285 1999-10-03 MORIOKA Tomohiko <tomo@urania.m17n.org>
287 * char-ucs.h (MAKE_CHAR): Allow nested decoding-table.
289 * mule-charset.c (destroy_byte_from_character_table): New macro.
290 (latin_jisx0201_to_ucs): Deleted.
291 (latin_iso8859_2_to_ucs): Deleted.
292 (latin_iso8859_3_to_ucs): Deleted.
293 (latin_iso8859_4_to_ucs): Deleted.
294 (latin_iso8859_9_to_ucs): Deleted.
295 (latin_viscii_lower_to_ucs): Deleted.
296 (latin_viscii_upper_to_ucs): Deleted.
297 (mark_charset): Mark `cs->decoding_table'.
298 (Fcharset_mapping_table): Fix DOC-string.
299 (Fset_charset_mapping_table): New function.
300 (syms_of_mule_charset): Add nwe function
301 `set-charset-mapping-table'.
302 (complex_vars_of_mule_charset): Don't setup and use
305 1999-10-01 MORIOKA Tomohiko <tomo@urania.m17n.org>
307 * char-ucs.h (MAKE_CHAR): Check the result for range-represented
310 1999-09-30 MORIOKA Tomohiko <tomo@urania.m17n.org>
312 * mule-charset.c (Vcharset_hiragana_jisx0208): New variable.
313 (Vcharset_katakana_jisx0208): New variable.
314 (Qhiragana_jisx0208): New variable.
315 (Qkatakana_jisx0208): New variable.
316 (make_charset): Add new argument `byte_offset'.
317 (charset_get_byte1): Modify for new coded-charset definition; use
318 `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
319 `XCHARSET_BYTE_OFFSET'.
320 (Fmake_charset): Modify for `make_charset'.
321 (Fmake_reverse_direction_charset): Likewise.
322 (syms_of_mule_charset): Add new symbols `hiragana-jisx0208' and
324 (complex_vars_of_mule_charset): Modify for `make_charset'; quote
325 `.' in font registry of charset `katakana-jisx0201',
326 `latin-jisx0201', `vietnamese-viscii-lower' and
327 `vietnamese-viscii-upper'; modify DOC-string of charset
328 `japanese-jisx0208-1978' and `japanese-jisx0208'; modify font
329 registry of charset `japanese-jisx0208' not to use font for JIS
330 X0208:1990; add new charset `hiragana-jisx0208' and
333 * char-ucs.h (LEADING_BYTE_HIRAGANA_JISX0208): New macro.
334 (LEADING_BYTE_KATAKANA_JISX0208): New macro.
335 (struct Lisp_Charset): Add `byte_offset'.
336 (CHARSET_BYTE_OFFSET): New macro.
337 (XCHARSET_UCS_MIN): New macro.
338 (XCHARSET_UCS_MAX): New macro.
339 (XCHARSET_CODE_OFFSET): New macro.
340 (XCHARSET_BYTE_OFFSET): New macro.
341 (MIN_CHAR_HIRAGANA): New macro.
342 (MAX_CHAR_HIRAGANA): New macro.
343 (MIN_CHAR_KATAKANA): New macro.
344 (MAX_CHAR_KATAKANA): New macro.
345 (MAKE_CHAR): Modify for new coded-charset definition; use
346 `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
347 `XCHARSET_BYTE_OFFSET'.
349 1999-09-27 MORIOKA Tomohiko <tomo@etl.go.jp>
351 * mule-charset.c (CHAR96): Deleted.
352 (latin_jisx0201_to_ucs): Type is changed from array of <Emchar> to
354 (latin_iso8859_2_to_ucs): Likewise.
355 (latin_iso8859_3_to_ucs): Likewise.
356 (latin_iso8859_4_to_ucs): Likewise.
357 (latin_iso8859_9_to_ucs): Likewise.
358 (latin_viscii_lower_to_ucs): Likewise.
359 (latin_viscii_upper_to_ucs): Likewise.
360 (latin_tcvn5712_to_ucs): Commented out.
361 (make_charset): Change type of argument `decoding_table' from
362 <Emchar*> to <Lisp_Object> [vector of characters].
363 (Fmake_charset): Modify for `make_charset'.
364 (Fmake_reverse_direction_charset): Likewise.
365 (Fcharset_mapping_table): New function in UTF-2000.
366 (syms_of_mule_charset): Setup `Fcharset_mapping_table' in
368 (complex_vars_of_mule_charset): Modify for type change of
369 `*_to_ucs'; modify for `make_charset'.
371 * char-ucs.h (struct Lisp_Charset): Change type of
372 `decoding_table' from <Emchar*> to <Lisp_Object>.
373 (MAKE_CHAR): Modify for new specification of `decoding_table'.
375 1999-09-23 MORIOKA Tomohiko <tomo@etl.go.jp>
377 * mule-charset.c (Fmake_reverse_direction_charset): Fix compile
378 error with non-UTF-2000-Mule.
380 1999-09-21 MORIOKA Tomohiko <tomo@etl.go.jp>
382 * mule-charset.c (Vcharset_chinese_cns11643_3): Deleted [defined
384 (Vcharset_chinese_cns11643_4): Likewise.
385 (Vcharset_chinese_cns11643_5): Likewise.
386 (Vcharset_chinese_cns11643_6): Likewise.
387 (Vcharset_chinese_cns11643_7): Likewise.
388 (Qchinese_cns11643_3): Likewise.
389 (Qchinese_cns11643_4): Likewise.
390 (Qchinese_cns11643_5): Likewise.
391 (Qchinese_cns11643_6): Likewise.
392 (Qchinese_cns11643_7): Likewise.
393 (syms_of_mule_charset): Move definitions for `chinese-cns11643-3',
394 `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
395 and `chinese-cns11643-7' to lisp/mule/chinese.el.
396 (complex_vars_of_mule_charset): Likewise.
398 1999-09-18 MORIOKA Tomohiko <tomo@etl.go.jp>
400 * mule-charset.c (charset_get_byte1): Fix bug about 94- and
402 (Fmake_reverse_direction_charset): Inherit CHARSET_DECODING_TABLE,
403 CHARSET_UCS_MIN, CHARSET_UCS_MAX and CHARSET_CODE_OFFSET.
405 1999-09-17 MORIOKA Tomohiko <tomo@etl.go.jp>
407 * char-ucs.h (MIN_CHAR_HALFWIDTH_KATAKANA): Changed to 0xFF61 from
409 (MAKE_CHAR): Change offset for katakana-jisx0201 to 33 from 0x20.
410 (breakup_char_1): Likewise.
412 * text-coding.c (char_encode_iso2022): Keep designated charsets if
413 one of them includes the specified character.
415 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
417 * mule-charset.c: Update `utf-2000-version' to 0.8 (Kami).
419 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
421 * char-ucs.h (MAKE_CHAR): Fix problem in 2-dimension charset.
423 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
425 * mule-charset.c (latin_iso8859_2_to_ucs NULL): Add pseudo
426 definition for non-UTF-2000 Mule.
427 (latin_iso8859_3_to_ucs): Likewise.
428 (latin_iso8859_4_to_ucs): Likewise.
429 (latin_iso8859_9_to_ucs): Likewise.
430 (latin_jisx0201_to_ucs): Likewise.
431 (MIN_CHAR_THAI): Likewise.
432 (MAX_CHAR_THAI): Likewise.
433 (MIN_CHAR_GREEK): Likewise.
434 (MAX_CHAR_GREEK): Likewise.
435 (MIN_CHAR_HEBREW): Likewise.
436 (MAX_CHAR_HEBREW): Likewise.
437 (MIN_CHAR_HALFWIDTH_KATAKANA): Likewise.
438 (MAX_CHAR_HALFWIDTH_KATAKANA): Likewise.
439 (MIN_CHAR_CYRILLIC): Likewise.
440 (MAX_CHAR_CYRILLIC): Likewise.
442 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
444 * char-ucs.h (breakup_char_1): Use
445 `Vdefault_coded_charset_priority_list' for hebrew-iso8859-8,
446 thai-tis620 and katakana-jisx0201 area.
448 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
450 * char-ucs.h (breakup_char_1): Use
451 `Vdefault_coded_charset_priority_list' for cyrillic-iso8859-5
454 * text-coding.c (reset_encoding_stream): Fixed.
455 (char_encode_ucs4): Delete `& 255'.
457 * char-ucs.h (breakup_char_1): Use
458 `Vdefault_coded_charset_priority_list' for greek-iso8859-7 area.
460 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
462 * file-coding.c (Fmake_coding_system): Don't set up
463 `codesys->fixed.size'.
464 (encode_coding_no_conversion): Don't refer
465 `str->codesys->fixed.size'.
467 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
469 * mule-charset.c, char-ucs.h (latin_a_char_to_charset): Deleted.
470 (latin_a_char_to_byte1): Deleted.
471 (latin_a_char_to_byte2): Deleted.
473 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
475 * mule-charset.c (make_charset): Add new argument `ucs_min',
476 `ucs_max' and `code_offset'.
477 (charset_get_byte1): New implementation [delete specific charset
478 depended implementations].
479 (Fmake_charset): Modify for `make_charset'.
480 (Fmake_reverse_direction_charset): Likewise.
481 (complex_vars_of_mule_charset): Likewise.
483 * char-ucs.h (struct Lisp_Charset): Add `ucs_min', `ucs_max' and
485 (CHARSET_UCS_MIN): New macro.
486 (CHARSET_UCS_MAX): New macro.
487 (CHARSET_CODE_OFFSET): New macro.
488 (MAKE_CHAR): Delete charset depended definitions [except
491 1999-09-13 MORIOKA Tomohiko <tomo@etl.go.jp>
493 * char-ucs.h (breakup_char_1): Use
494 `Vdefault_coded_charset_priority_list' for C0-Controls,
495 Basic-Latin, C1-Controls and Latin-1-Supplement area.
497 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
499 * char-ucs.h (charset_get_byte1): New function.
500 (XCHARSET_GET_BYTE1): Deleted.
501 (charset_get_byte2): New function.
502 (XCHARSET_GET_BYTE2): Deleted.
503 (Vdefault_coded_charset_priority_list): New external variable.
504 (breakup_char_1): Use `charset_get_byte1', `charset_get_byte2' and
505 `Vdefault_preferred_coded_charset_list'.
507 * mule-charset.c (charset_get_byte1): New function.
508 (charset_get_byte2): New function.
509 (Vdefault_coded_charset_priority_list): New variable.
510 (vars_of_mule_charset): Add new variable
511 `default-coded-charset-priority-list'.
513 1999-09-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
515 * char-ucs.h (XCHARSET_GET_BYTE1): New inline function.
516 (XCHARSET_GET_BYTE2): New inline function.
517 (breakup_char_1): Use `XCHARSET_GET_BYTE1' and
518 `XCHARSET_GET_BYTE2'.
520 1999-09-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
522 * mule-charset.c (make_charset): Initialize
523 `CHARSET_TO_BYTE1_TABLE(cs)' and `CHARSET_TO_BYTE2_TABLE(cs)' by
524 NULL if table is not defined.
526 1999-09-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
528 * text-coding.c (char_encode_shift_jis): Use
529 `XCHARSET_TO_BYTE1_TABLE' for `Vcharset_latin_jisx0201' instead of
530 `ucs_to_latin_jisx0201'.
532 * mule-charset.c (ucs_to_latin_jisx0201): Deleted.
533 (ucs_to_latin_iso8859_2): Deleted.
534 (ucs_to_latin_iso8859_3): Deleted.
535 (ucs_to_latin_iso8859_4): Deleted.
536 (ucs_to_latin_iso8859_9): Deleted.
537 (ucs_to_latin_viscii_lower): Deleted.
538 (ucs_to_latin_viscii_upper): Deleted.
539 (ucs_to_latin_tcvn5712): Deleted.
540 (make_charset): Add new argument `decoding_table'; set up
541 `CHARSET_DECODING_TABLE(cs)' in UTF-2000; set up
542 `CHARSET_TO_BYTE1_TABLE(cs)' for 94-set and 96-set if
543 `decoding_table' is defined in UTF-2000.
544 (Fmake_charset): Modify for `make_charset'.
545 (Fmake_reverse_direction_charset): Likewise.
546 (complex_vars_of_mule_charset): Likewise; delete `GENERATE_94_SET'
547 and `GENERATE_96_SET'.
549 * char-ucs.h (latin_jisx0201_to_ucs): Deleted.
550 (ucs_to_latin_jisx0201): Deleted.
551 (latin_iso8859_2_to_ucs): Deleted.
552 (ucs_to_latin_iso8859_2): Deleted.
553 (latin_iso8859_3_to_ucs): Deleted.
554 (ucs_to_latin_iso8859_3): Deleted.
555 (latin_iso8859_4_to_ucs): Deleted.
556 (ucs_to_latin_iso8859_4): Deleted.
557 (latin_iso8859_9_to_ucs): Deleted.
558 (ucs_to_latin_iso8859_9): Deleted.
559 (latin_viscii_lower_to_ucs): Deleted.
560 (ucs_to_latin_viscii_lower): Deleted.
561 (latin_viscii_upper_to_ucs): Deleted.
562 (ucs_to_latin_viscii_upper): Deleted.
563 (struct Lisp_Charset): Renamed `encoding_table' to
564 `to_byte1_table'; add `to_byte2_table'.
565 (CHARSET_DECODING_TABLE): New macro.
566 (CHARSET_TO_BYTE1_TABLE): New macro.
567 (CHARSET_TO_BYTE2_TABLE): New macro.
568 (XCHARSET_DECODING_TABLE): New macro.
569 (XCHARSET_TO_BYTE1_TABLE): New macro.
570 (XCHARSET_TO_BYTE2_TABLE): New macro.
571 (MAKE_CHAR): Use `XCHARSET_DECODING_TABLE'; don't use `*_to_ucs'
573 (breakup_char_1): Use `XCHARSET_TO_BYTE1_TABLE' if it is defined;
574 don't use `ucs_to_*' tables.
576 1999-09-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
578 * text-coding.c (Fmake_coding_system): Don't set up
579 `codesys->fixed.size'.
580 (encode_coding_no_conversion): Use `if' instead of `switch'.
582 * file-coding.h (struct Lisp_Coding_System): Delete `fixed.size'.
584 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
586 * mule-charset.c (make_charset): Delete argument `rep_bytes'.
587 (Fmake_charset): Modify for `make_charset'.
588 (Fmake_reverse_direction_charset): Likewise.
589 (complex_vars_of_mule_charset): Likewise.
591 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
593 * text-coding.c (char_encode_shift_jis): Use table
594 `ucs_to_latin_jisx0201' and BREAKUP_CHAR.
596 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
598 * text-coding.c (text_encode_generic): Use `if' instead of
600 (decode_coding_sjis): Use `MAKE_CHAR' and `DECODE_ADD_UCS_CHAR' to
603 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
605 * text-coding.c (encode_coding_sjis): Deleted.
606 (char_encode_shift_jis): New function.
607 (char_finish_shift_jis): New function.
608 (reset_encoding_stream): Set up `encode_char' and `finish' for
609 `CODESYS_UCS4' and `CODESYS_SHIFT_JIS'.
610 (mule_encode): Use generic encoder for `CODESYS_SHIFT_JIS'.
611 (char_encode_utf8): Treat `eol_type'.
613 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
615 * file-coding.c (decode_coding_iso2022): Use
616 `DECODE_ADD_UCS_CHAR'; don't use `XCHARSET_REP_BYTES'.
618 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
620 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
623 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
625 * char-lb.h (CHAR_COLUMNS): New macro.
627 1999-09-09 MORIOKA Tomohiko <tomo@etl.go.jp>
629 * text-coding.c (char_encode_ucs4): New function.
630 (char_finish_ucs4): New function.
631 (encode_coding_ucs4): Deleted.
632 (mule_encode): Use generic encoder for `CODESYS_UCS4'.
633 (text_encode_generic): Delete local variable `charset' and `half'.
634 (ucs_to_mule_table): Deleted.
635 (mule_to_ucs_table): Deleted.
636 (Fset_ucs_char): Deleted.
637 (ucs_to_char): Deleted.
638 (Fucs_char): Deleted.
639 (Fset_char_ucs): Deleted.
640 (Fchar_ucs): Deleted.
641 (decode_ucs4): Deleted.
642 (mule_char_to_ucs4): Deleted.
643 (encode_ucs4): Deleted.
644 (decode_coding_ucs4): Use `DECODE_ADD_UCS_CHAR'.
645 (decode_coding_utf8): Likewise.
646 (decode_coding_iso2022): Likewise; don't use `XCHARSET_REP_BYTES'.
647 (char_encode_iso2022): Fixed.
648 (syms_of_file_coding): Delete `Fset_ucs_char', `Fucs_char',
649 `Fset_char_ucs' and `Fchar_ucs'.
650 (complex_vars_of_file_coding): Don't initialize
653 * objects-tty.c (tty_initialize_font_instance): Don't use
656 * mule-charset.c (make_charset): Don't set up CHARSET_REP_BYTES in
659 * redisplay-tty.c (tty_output_display_block): Use `CHAR_COLUMNS'
660 instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
662 * insdel.c (bufbyte_string_displayed_columns): Use `CHAR_COLUMNS'
663 instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
664 (emchar_string_displayed_columns): Likewise.
666 * indent.c (column_at_point): Use `CHAR_COLUMNS' instead of
667 `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
668 (string_column_at_point): Likewise.
669 (Fmove_to_column): Likewise.
671 * char-ucs.h (struct Lisp_Charset): Delete `rep_bytes'; add
672 `encoding_table' and `decoding_table'.
673 (CHARSET_REP_BYTES): Deleted.
674 (XCHARSET_REP_BYTES): Deleted.
675 (XCHARSET_COLUMNS): Deleted.
676 (CHAR_COLUMNS): New macro.
677 (lookup_composite_char): Deleted unconditionally.
678 (composite_char_string): Likewise.
680 1999-09-09 MORIOKA Tomohiko <tomo@etl.go.jp>
682 * char-ucs.h (Emchar_to_byte_table): New type.
683 (get_byte_from_character_table): New function interface.
684 (Vcharset_latin_jisx0201): New variable.
685 (latin_jisx0201_to_ucs): New variable.
686 (ucs_to_latin_jisx0201): New variable.
687 (Vcharset_latin_iso8859_2): New variable.
688 (latin_iso8859_2_to_ucs): New variable.
689 (ucs_to_latin_iso8859_2): New variable.
690 (Vcharset_latin_iso8859_3): New variable.
691 (latin_iso8859_3_to_ucs): New variable.
692 (ucs_to_latin_iso8859_3): New variable.
693 (Vcharset_latin_iso8859_4): New variable.
694 (latin_iso8859_4_to_ucs): New variable.
695 (ucs_to_latin_iso8859_4): New variable.
696 (Vcharset_latin_iso8859_9): New variable.
697 (latin_iso8859_9_to_ucs): New variable.
698 (ucs_to_latin_iso8859_9): New variable.
699 (Vcharset_latin_viscii_lower): New variable.
700 (latin_viscii_lower_to_ucs): New variable.
701 (ucs_to_latin_viscii_lower): New variable.
702 (Vcharset_latin_viscii_upper): New variable.
703 (latin_viscii_upper_to_ucs): New variable.
704 (ucs_to_latin_viscii_upper): New variable.
705 (CHARSET_ID_OFFSET_94): Changed from 0x60 to 0x55.
706 (LEADING_BYTE_LATIN_VISCII_LOWER): New macro.
707 (LEADING_BYTE_LATIN_VISCII_UPPER): New macro.
708 (MAKE_CHAR): Map `latin-iso8859-2', `latin-iso8859-3',
709 `latin-iso8859-4', `latin-iso8859-9', `latin-jisx0201',
710 `vietnamese-viscii-lower' and `vietnamese-viscii-upper' to BMP.
711 (breakup_char_1): Use `ucs_to_latin_iso8859_2',
712 `ucs_to_latin_iso8859_3', `ucs_to_latin_iso8859_4',
713 `ucs_to_latin_iso8859_9', `ucs_to_latin_viscii_lower',
714 `ucs_to_latin_viscii_upper' and `ucs_to_latin_jisx0201' tables.
716 * mule-charset.c (Vcharset_latin_viscii_lower): New variable.
717 (Vcharset_latin_viscii_upper): New variable.
718 (make_byte_from_character_table): New function.
719 (put_byte_from_character_table): New function.
720 (get_byte_from_character_table): New function.
722 (ucs_to_latin_jisx0201): New variable.
723 (latin_jisx0201_to_ucs): New variable.
724 (ucs_to_latin_iso8859_2): New variable.
725 (latin_iso8859_2_to_ucs): New variable.
726 (ucs_to_latin_iso8859_3): New variable.
727 (latin_iso8859_3_to_ucs): New variable.
728 (ucs_to_latin_iso8859_4): New variable.
729 (latin_iso8859_4_to_ucs): New variable.
730 (ucs_to_latin_iso8859_9): New variable.
731 (latin_iso8859_9_to_ucs): New variable.
732 (ucs_to_latin_viscii_lower): New variable.
733 (latin_viscii_lower_to_ucs): New variable.
734 (ucs_to_latin_viscii_upper): New variable.
735 (latin_viscii_upper_to_ucs): New variable.
736 (ucs_to_latin_tcvn5712): New variable.
737 (latin_tcvn5712_to_ucs): New variable.
738 (Qlatin_viscii_lower): New variable.
739 (Qlatin_viscii_upper): New variable.
740 (syms_of_mule_charset): Set up new symbol
741 `vietnamese-viscii-lower' and `vietnamese-viscii-upper'.
742 (complex_vars_of_mule_charset): Set up new charset
743 `vietnamese-viscii-lower' and `vietnamese-viscii-upper'; new macro
744 `GENERATE_94_SET' and `GENERATE_96_SET'; use them to generate
745 `ucs_to_<CHARSET>' tables.
747 1999-09-08 MORIOKA Tomohiko <tomo@etl.go.jp>
749 * text-coding.c: New file.
751 1999-09-07 MORIOKA Tomohiko <tomo@etl.go.jp>
753 * mule-charset.c (Fmake_char): Fix problem of 256-set.
755 * char-ucs.h (Vcharset_ucs_bmp): New variable.
756 (MAKE_CHAR): Modify for `ucs-bmp'.
757 (breakup_char_1): Return `ucs-bmp' and code point of BMP for
758 non-MULE characters of BMP.
760 1999-09-06 MORIOKA Tomohiko <tomo@etl.go.jp>
762 * mule-charset.c (vars_of_mule_charset):
763 Update `utf-2000-version' to 0.6.
765 1999-09-05 MORIOKA Tomohiko <tomo@urania.m17n.org>
768 - Include multibyte.h instead of character.h for `BYTE_ASCII_P'.
769 - Include character.h for `CHAR_ASCII_P'.
771 * mb-multibyte.h (CHAR_MULTIBYTE_P): Moved from mule-charset.h.
773 * mule-charset.h (CHAR_MULTIBYTE_P): Moved to mb-multibyte.h.
774 (CHAR_ASCII_P): Don't use `CHAR_MULTIBYTE_P'.
776 * mb-multibyte.h (BYTE_ASCII_P): Moved from char-ucs.h.
777 (BYTE_C0_P): Likewise.
778 (BYTE_C1_P): Likewise.
779 (Lstream_get_emchar_1): Likewise.
780 (Lstream_fput_emchar): Likewise.
781 (Lstream_funget_emchar): Likewise.
782 (copy_internal_to_external): Likewise.
783 (copy_external_to_internal): Likewise.
785 * char-ucs.h (BYTE_ASCII_P): Moved to mb-multibyte.h.
786 (BYTE_C0_P): Likewise.
787 (BYTE_C1_P): Likewise.
788 (Lstream_get_emchar_1): Likewise.
789 (Lstream_fput_emchar): Likewise.
790 (Lstream_funget_emchar): Likewise.
791 (copy_internal_to_external): Likewise.
792 (copy_external_to_internal): Likewise.
794 * mb-1byte.h (BYTE_ASCII_P): Moved from buffer.h.
795 (REP_BYTES_BY_FIRST_BYTE): Likewise.
797 * buffer.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-1byte.h.
798 (BYTE_ASCII_P): Moved to mb-1byte.h.
800 1999-09-04 MORIOKA Tomohiko <tomo@urania.m17n.org>
802 * mb-utf-8.h, mb-lb.h: Include mb-multibyte.h.
804 * multibyte.h: Include mb-1byte.h in unibyte-XEmacs.
805 (MAX_EMCHAR_LEN): Moved to mb-1byte.h.
806 (VALID_CHARPTR_P): Moved to mb-*byte.h.
807 (VALIDATE_CHARPTR_BACKWARD): Likewise.
808 (VALIDATE_CHARPTR_FORWARD): Likewise.
809 (simple_charptr_emchar): Moved to mb-multibyte.h.
810 (simple_set_charptr_emchar): Likewise.
811 (simple_charptr_copy_char): Likewise.
812 (non_ascii_charptr_emchar): Likewise.
813 (non_ascii_set_charptr_emchar): Likewise.
814 (non_ascii_charptr_copy_char): Likewise.
815 (charptr_emchar): Moved to mb-*byte.h.
816 (set_charptr_emchar): Likewise.
817 (charptr_copy_char): Likewise.
819 * mb-1byte.h, mb-multibyte.h: New files.
821 1999-09-03 MORIOKA Tomohiko <tomo@urania.m17n.org>
823 * mb-utf-8.h (MULTIBYTE): New macro.
824 (MAX_EMCHAR_LEN): Moved from buffer.h.
825 (REP_BYTES_BY_FIRST_BYTE): Moved from char-ucs.h.
827 * char-ucs.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-utf-8.h.
829 * mb-lb.h, multibyte.h: New files.
831 * char-1byte.h (Charset_ID): Moved from buffer.h.
832 (MIN_LEADING_BYTE): Likewise.
833 (LEADING_BYTE_ASCII): Likewise.
834 (NUM_LEADING_BYTES): Likewise.
835 (CHARSETP): Likewise.
836 (CHARSET_BY_LEADING_BYTE): Likewise.
837 (XCHARSET_LEADING_BYTE): Likewise.
838 (XCHARSET_GRAPHIC): Likewise.
839 (XCHARSET_COLUMNS): Likewise.
840 (XCHARSET_DIMENSION): Likewise.
841 (CHAR_CHARSET): Likewise.
842 (CHAR_LEADING_BYTE): Likewise.
843 (BREAKUP_CHAR): Likewise.
844 (Vcharset_ascii): Likewise.
846 * buffer.h: Include multibyte.h unconditionally.
847 (VALID_CHARPTR_P): Moved to multibyte.h.
848 (ASSERT_VALID_CHARPTR): Likewise.
849 (REAL_INC_CHARPTR): Likewise.
850 (REAL_INC_CHARBYTIND): Likewise.
851 (REAL_DEC_CHARPTR): Likewise.
852 (INC_CHARPTR): Likewise.
853 (INC_CHARBYTIND): Likewise.
854 (DEC_CHARPTR): Likewise.
855 (VALIDATE_CHARPTR_BACKWARD): Likewise.
856 (VALIDATE_CHARPTR_FORWARD): Likewise.
857 (charptr_n_addr): Likewise.
858 (MAX_EMCHAR_LEN): Moved to mb-*.h.
859 (simple_charptr_emchar): Moved to multibyte.h.
860 (simple_set_charptr_emchar): Likewise.
861 (simple_charptr_copy_char): Likewise.
862 (non_ascii_charptr_emchar): Likewise.
863 (non_ascii_set_charptr_emchar): Likewise.
864 (non_ascii_charptr_copy_char): Likewise.
865 (charptr_emchar): Likewise.
866 (set_charptr_emchar): Likewise.
867 (charptr_copy_char): Likewise.
868 (charptr_emchar_n): Likewise.
869 (Charset_ID): Moved to char-1byte.h.
870 (Vcharset_ascii): Likewise.
871 (CHAR_CHARSET): Likewise.
872 (CHAR_LEADING_BYTE): Likewise.
873 (LEADING_BYTE_ASCII): Likewise.
874 (NUM_LEADING_BYTES): Likewise.
875 (MIN_LEADING_BYTE): Likewise.
876 (CHARSETP): Likewise.
877 (CHARSET_BY_LEADING_BYTE): Likewise.
878 (XCHARSET_LEADING_BYTE): Likewise.
879 (XCHARSET_GRAPHIC): Likewise.
880 (XCHARSET_COLUMNS): Likewise.
881 (XCHARSET_DIMENSION): Likewise.
882 (BREAKUP_CHAR): Likewise.
884 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
886 * character.h: Add document about interface for characters.
888 * char-ucs.h (CHAR_ASCII_P): Modify name of argument.
889 (MAKE_CHAR): Delete comment about
890 `FIELD2_TO_OFFICIAL_LEADING_BYTE' and
891 `FIELD2_TO_PRIVATE_LEADING_BYTE'.
892 (BREAKUP_CHAR): Modify name of arguments.
893 (CHAR_CHARSET): Modify name of argument.
895 * buffer.h: Delete document about Emchar accessors.
897 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
899 * character.h (CHAR_INTP): Moved from buffer.h
900 (CHAR_OR_CHAR_INTP): Likewise.
901 (XCHAR_OR_CHAR_INT): Likewise.
902 (CHECK_CHAR_COERCE_INT): Likewise.
904 * buffer.h (CHAR_INTP): Moved to character.h
905 (CHAR_OR_CHAR_INTP): Likewise.
906 (XCHAR_OR_CHAR_INT): Likewise.
907 (CHECK_CHAR_COERCE_INT): Likewise.
909 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
912 - Move definitions about UCS-2000 (UCS-4) to char-ucs.h.
913 - Include char-1byte.h, char-lb.h or char-ucs.h.
915 * mb-utf-8.h (CHAR_ASCII_P): Moved to char-ucs.h.
917 * buffer.h: Include character unconditionally.
918 (valid_char_p): Moved to char-*.h.
919 (non_ascii_valid_char_p): Moved to char-lb.h.
921 * char-1byte.h, char-lb.h, char-ucs.h: New files.
923 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
925 * mule-ccl.c (ccl_driver): Don't define `CCL_WriteMultibyteChar2'
926 in UTF-2000 because it is not ported yet and not to use
927 `FIELD2_TO_OFFICIAL_LEADING_BYTE', `MIN_LEADING_BYTE_OFFICIAL_2',
928 `FIELD1_TO_OFFICIAL_LEADING_BYTE' and
929 `FIELD1_TO_PRIVATE_LEADING_BYTE'.
931 * mb-utf-8.h (CHAR_MULTIBYTE_P): Moved from character.h.
932 (CHAR_ASCII_P): Moved from character.h.
934 * character.h (CHAR_MULTIBYTE_P): Moved to mb-utf-8.h.
935 (CHAR_ASCII_P): Likewise.
936 (CHAR_FIELD1_MASK): Deleted.
937 (CHAR_FIELD2_MASK): Deleted.
938 (CHAR_FIELD3_MASK): Deleted.
939 (MAX_CHAR_BASIC_LATIN): New macro.
940 (CHAR_FIELD1): Deleted.
941 (CHAR_FIELD2_INTERNAL): Deleted.
942 (CHAR_FIELD3_INTERNAL): Deleted.
943 (FIELD1_TO_PRIVATE_LEADING_BYTE): Deleted.
944 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Deleted.
945 (FIELD2_TO_PRIVATE_LEADING_BYTE): Deleted.
946 (FIELD2_TO_OFFICIAL_LEADING_BYTE): Deleted.
947 (MIN_CHAR_FIELD1_OFFICIAL): Deleted.
948 (MAX_CHAR_FIELD1_OFFICIAL): Deleted.
949 (MIN_CHAR_FIELD2_PRIVATE): Deleted.
950 (MAX_CHAR_FIELD2_PRIVATE): Deleted.
951 (MIN_CHAR_FIELD1_PRIVATE): Deleted.
952 (MAX_CHAR_FIELD1_PRIVATE): Deleted.
953 (MULE_CHAR_PRIVATE_OFFSET): Deleted.
954 (MIN_CHAR_PRIVATE_TYPE9N): Deleted.
955 (MAX_CHAR_PRIVATE_TYPE9N): Deleted.
956 (MIN_CHAR_PRIVATE_TYPE9NX9N): Deleted.
957 (MIN_CHAR_OFFICIAL_TYPE9NX9N): Deleted.
958 (MIN_CHAR_COMPOSITION): Deleted.
959 (breakup_char_1): Use `MAX_CHAR_BASIC_LATIN' instead of
960 `CHAR_ASCII_P'; use `0x7f' instead of `CHAR_FIELD3_INTERNAL'.
962 1999-09-02 MORIOKA Tomohiko <tomo@m17n.org>
964 * buffer.h: Include mb-utf-8.h in UTF-2000.
966 * character.h (BUFBYTE_FIRST_BYTE_P): Moved to mb-utf-8.h.
968 * mb-utf-8.h: New file.
970 1999-09-02 MORIOKA Tomohiko <tomo@etl.go.jp>
972 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use `Charset_ID'
975 * mule-charset.h, buffer.h (Charset_ID): New type.
977 1999-09-01 MORIOKA Tomohiko <tomo@etl.go.jp>
979 * mule-canna.c (c2mu): Use `MAKE_CHAR',
980 `Vcharset_japanese_jisx0212' and `Vcharset_japanese_jisx0208'
981 instead of `MULE_CHAR_PRIVATE_OFFSET',
982 `LEADING_BYTE_JAPANESE_JISX0212', `LEADING_BYTE_JAPANESE_JISX0208'
983 and `FIELD1_TO_OFFICIAL_LEADING_BYTE'.
984 (m2c): Use `BREAKUP_CHAR' and `XCHARSET_FINAL'.
986 * character.h (Vcharset_japanese_jisx0212): New variable
989 1999-09-01 MORIOKA Tomohiko <tomo@etl.go.jp>
991 * mule-charset.c (Vcharset_ucs_bmp): New variable in UTF-2000.
992 (charset_by_attributes): Delete array about direction.
993 (latin_a_char_to_charset): New variable in UTF-2000.
994 (latin_a_char_to_byte1): New variable in UTF-2000.
995 (latin_a_char_to_byte2): New variable in UTF-2000.
996 (Qucs_bmp): New variable.
997 (next_allocated_1_byte_leading_byte): Use `Charset_ID' instead of
999 (next_allocated_2_byte_leading_byte): Likewise.
1000 (non_ascii_set_charptr_emchar): Likewise.
1001 (make_charset): Likewise; add `CHARSET_TYPE_128X128' and
1002 `CHARSET_TYPE_256X256' in UTF-2000; modify for
1003 `charset_by_attributes'.
1004 (get_unallocated_leading_byte): Use `Charset_ID' instead of `int'.
1005 (char-charset): Use `CHAR_CHARSET' instead of `CHAR_LEADING_BYTE'
1006 and `CHARSET_BY_LEADING_BYTE'.
1007 (syms_of_mule_charset): Set up `ucs-bmp'; move setting of
1008 `utf-2000-version' to `vars_of_mule_charset'.
1009 (vars_of_mule_charset): Modify for `charset_by_attributes'; don't
1010 define `leading-code-private-11' in UTF-2000; move setting of
1011 `utf-2000-version' from `syms_of_mule_charset'.
1012 (complex_vars_of_mule_charset): Set up charset `ucs-bmp' in
1015 * character.h (Charset_ID): New type.
1016 (LEADING_BYTE_UCS_BMP): New macro.
1017 (LEADING_BYTE_CONTROL_1): Changed from 0x8F to 0x81.
1018 (CHARSET_ID_OFFSET_94): New macro.
1019 (MIN_CHARSET_ID_PRIVATE_94): New macro.
1020 (MAX_CHARSET_ID_PRIVATE_94): New macro.
1021 (LEADING_BYTE_ASCII): Changed to use CHARSET_ID_OFFSET_94 and
1023 (LEADING_BYTE_KATAKANA_JISX0201): Likewise.
1024 (LEADING_BYTE_LATIN_JISX0201): Likewise.
1025 (CHARSET_ID_OFFSET_96): New macro.
1026 (LEADING_BYTE_LATIN_ISO8859_1): Changed to use
1027 CHARSET_ID_OFFSET_96 and final-byte.
1028 (LEADING_BYTE_LATIN_ISO8859_2): Likewise.
1029 (LEADING_BYTE_LATIN_ISO8859_3): Likewise.
1030 (LEADING_BYTE_LATIN_ISO8859_4): Likewise.
1031 (LEADING_BYTE_GREEK_ISO8859_7): Likewise.
1032 (LEADING_BYTE_ARABIC_ISO8859_6): Likewise.
1033 (LEADING_BYTE_HEBREW_ISO8859_8): Likewise.
1034 (LEADING_BYTE_CYRILLIC_ISO8859_5): Likewise.
1035 (LEADING_BYTE_LATIN_ISO8859_9): Likewise.
1036 (LEADING_BYTE_THAI_TIS620): Likewise.
1037 (MIN_LEADING_BYTE_PRIVATE_1): Changed from 0x0D0 to 0xD0.
1038 (MAX_LEADING_BYTE_PRIVATE_1): Changed from 0x11f to 0xDF.
1039 (CHARSET_ID_OFFSET_94x94): New macro.
1040 (LEADING_BYTE_CHINESE_BIG5_1): Changed to use
1041 CHARSET_ID_OFFSET_94x94 and final-byte.
1042 (LEADING_BYTE_CHINESE_BIG5_2): Likewise.
1043 (MIN_LEADING_BYTE_PRIVATE_2): Likewise.
1044 (MAX_LEADING_BYTE_PRIVATE_2): Likewise.
1045 (LEADING_BYTE_JAPANESE_JISX0208_1978): Likewise.
1046 (LEADING_BYTE_CHINESE_GB2312): Likewise.
1047 (LEADING_BYTE_JAPANESE_JISX0208): Likewise.
1048 (LEADING_BYTE_KOREAN_KSC5601): Likewise.
1049 (LEADING_BYTE_JAPANESE_JISX0212): Likewise.
1050 (LEADING_BYTE_CHINESE_CCITT_GB): Likewise.
1051 (LEADING_BYTE_CHINESE_CNS11643_*): Likewise.
1052 (LEADING_BYTE_KOREAN_KPS9566): Likewise.
1053 (CHARSET_TYPE_128X128): New macro.
1054 (CHARSET_TYPE_256X256): New macro.
1055 (XCHARSET_PRIVATE_P): Delete unconditionally.
1056 (charset_by_attributes): Delete array about direction.
1057 (CHARSET_BY_LEADING_BYTE): Use `Charset_ID' instead of `int'.
1058 (CHARSET_BY_ATTRIBUTES): Modify for `charset_by_attributes'.
1059 (MIN_CHAR_94): New macro.
1060 (MAX_CHAR_94): New macro.
1061 (MIN_CHAR_96): New macro.
1062 (MAX_CHAR_96): New macro.
1063 (MIN_CHAR_94x94): New macro.
1064 (MAX_CHAR_94x94): New macro.
1065 (MIN_CHAR_96x96): New macro.
1066 (MAX_CHAR_96x96): New macro.
1067 (FIELD1_TO_PRIVATE_LEADING_BYTE): Use `CHARSET_ID_OFFSET_94x94'.
1068 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
1069 (FIELD2_TO_PRIVATE_LEADING_BYTE): Use `(MIN_LEADING_BYTE_PRIVATE_1
1071 (FIELD2_TO_OFFICIAL_LEADING_BYTE): Use `LEADING_BYTE_ASCII'.
1072 (MIN_CHAR_FIELD2_OFFICIAL): Deleted.
1073 (MAX_CHAR_FIELD2_OFFICIAL): Deleted.
1074 (MIN_CHAR_OFFICIAL_TYPE9N): Deleted.
1075 (MAX_CHAR_PRIVATE_TYPE9N): Changed.
1076 (MAKE_CHAR): Use `XCHARSET_FINAL' instead of
1077 `XCHARSET_LEADING_BYTE' to make code-point.
1078 (latin_a_char_to_charset): New variable.
1079 (latin_a_char_to_byte1): New variable.
1080 (latin_a_char_to_byte2): New variable.
1081 (breakup_char_1): Use `latin_a_char_to_{charset|byte1|byte2}' for
1082 Latin Extended-A; use `CHARSET_BY_ATTRIBUTES' instead of
1083 `CHARSET_BY_LEADING_BYTE' to get charset for ISO-2022 characters.
1085 * insdel.c (find_charsets_in_bufbyte_string): Use `Charset_ID'
1086 instead of `unsigned char'; use `MIN_LEADING_BYTE' instead of 128.
1087 (find_charsets_in_emchar_string): Likewise.
1088 (vars_of_insdel): Don't define local variable `i' in UTF-2000.
1090 * file-coding.c (Fdecode_big5_char): Use `Charset_ID' instead of
1092 (decode_coding_iso2022): Likewise.
1094 * toolbar-x.c (x_output_toolbar_button): Use `Charset_ID' instead
1097 * redisplay.c (redisplay_text_width_emchar_string): Use
1098 `Charset_ID' instead of `unsigned char'.
1099 (redisplay_frame_text_width_string): Likewise.
1101 * glyphs.c (glyph_height_internal): Use `Charset_ID' instead of
1104 * faces.h, faces.c (ensure_face_cachel_complete): Use `Charset_ID'
1105 instead of `unsigned char'.
1106 (face_cachel_charset_font_metric_info): Likewise.
1108 * chartab.c (print_char_table): Use `Charset_ID' instead of `int'.
1109 (get_non_ascii_char_table_value): Likewise.
1110 (get_char_table): Likewise.
1111 (put_char_table): Likewise.
1112 (map_over_other_charset): Likewise.
1113 (map_char_table): Likewise.
1115 * buffer.h (find_charsets_in_bufbyte_string): Use `Charset_ID'
1116 instead of `unsigned char'.
1118 1999-08-31 MORIOKA Tomohiko <tomo@etl.go.jp>
1120 * character.h (PRE_LEADING_BYTE_PRIVATE_1): Deleted.
1121 (PRE_LEADING_BYTE_PRIVATE_2): Deleted.
1123 * mule-charset.c (leading_code_private_11): Don't define in
1126 * mule-ccl.c (ccl_driver): Don't define `CCL_ReadMultibyteChar2'
1127 in UTF-2000 because it is not ported yet and not to use
1128 `PRE_LEADING_BYTE_PRIVATE_1' and `PRE_LEADING_BYTE_PRIVATE_2'.
1130 1999-08-30 MORIOKA Tomohiko <tomo@etl.go.jp>
1132 * character.h (LEADING_BYTE_COMPOSITE): Deleted.
1134 1999-08-29 MORIOKA Tomohiko <tomo@etl.go.jp>
1136 * regex.c (re_compile_fastmap): Don't use `LEADING_BYTE_PREFIX_P'
1139 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use int instead
1140 of unsigned char to store leading-byte.
1142 * chartab.c (get_non_ascii_char_table_value): Don't use
1143 `BREAKUP_CHAR_1_UNSAFE' in UTF-2000.
1145 * file-coding.c (encode_coding_big5): Delete bogus implementation
1148 * character.h (LEADING_BYTE_*): Delete definition for
1150 (LEADING_BYTE_PRIVATE_P): Deleted unconditionally.
1151 (LEADING_BYTE_PREFIX_P): Deleted.
1152 (PRIVATE_LEADING_BYTE_PREFIX): Deleted.
1153 (BUFBYTE_FIRST_BYTE_P): Delete definition for non-UTF-2000.
1154 (BUFBYTE_LEADING_BYTE_P): Deleted.
1155 (CHARSET_PRIVATE_P): Deleted unconditionally.
1156 (rep_bytes_by_first_byte): Deleted unconditionally.
1157 (REP_BYTES_BY_FIRST_BYTE): Delete definition for non-UTF-2000.
1158 (FIELD1_TO_PRIVATE_LEADING_BYTE): Likewise.
1159 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
1160 (FIELD2_TO_PRIVATE_LEADING_BYTE): Likewise.
1161 (CHAR_FIELD2): Deleted.
1162 (CHAR_FIELD3): Deleted.
1163 (MAKE_CHAR): Delete definition for non-UTF-2000.
1164 (BREAKUP_CHAR_1_UNSAFE): Deleted.
1165 (breakup_char_1): New implementation.
1166 (CHAR_CHARSET): Use `BREAKUP_CHAR'.
1167 (CHAR_LEADING_BYTE): Use `CHAR_CHARSET'.
1169 1999-08-29 MORIOKA Tomohiko <tomo@etl.go.jp>
1171 * character.h (REP_BYTES_BY_FIRST_BYTE): Change order of
1174 1999-08-28 MORIOKA Tomohiko <tomo@etl.go.jp>
1176 * character.h (LEADING_BYTE_PRIVATE_P): Don't define in UTF2000.
1177 (CHARSET_PRIVATE_P): Likewise.
1178 (XCHARSET_PRIVATE_P): Likewise.
1179 (MAKE_CHAR): Don't use XCHARSET_PRIVATE_P in UTF2000.
1181 * file-coding.c (encode_coding_ucs4): Delete bogus implement in
1183 (decode_coding_iso2022): Don't use XCHARSET_PRIVATE_P in UTF2000.
1185 1999-08-28 MORIOKA Tomohiko <tomo@etl.go.jp>
1187 * character.h (LEADING_BYTE_*): Changed in UTF2000.
1188 (NUM_LEADING_BYTES): Changed from 128 to 256.
1189 (FIELD1_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1190 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Change value to 0x80 in
1192 (FIELD2_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1194 * mule-charset.c (Vcharset_chinese_cns11643_3): New variable in
1196 (Vcharset_chinese_cns11643_4): New variable in UTF2000.
1197 (Vcharset_chinese_cns11643_5): New variable in UTF2000.
1198 (Vcharset_chinese_cns11643_6): New variable in UTF2000.
1199 (Vcharset_chinese_cns11643_7): New variable in UTF2000.
1200 (Qchinese_cns11643_3): New variable in UTF2000.
1201 (Qchinese_cns11643_4): New variable in UTF2000.
1202 (Qchinese_cns11643_5): New variable in UTF2000.
1203 (Qchinese_cns11643_6): New variable in UTF2000.
1204 (Qchinese_cns11643_7): New variable in UTF2000.
1205 (syms_of_mule_charset): Define `chinese-cns11643-3',
1206 `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
1207 and `chinese-cns11643-7' in UTF2000.
1208 (vars_of_mule_charset): Initialize
1209 next_allocated_2_byte_leading_byte by LEADING_BYTE_CHINESE_BIG5_2
1211 (complex_vars_of_mule_charset): Setup charset
1212 `chinese-cns11643-3', `chinese-cns11643-4', `chinese-cns11643-5',
1213 `chinese-cns11643-6' and `chinese-cns11643-7' in UTF2000.
1215 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
1217 * mule-charset.c: Move setting for `leading-code-private-11' from
1218 `syms_of_mule_charset' to `vars_of_mule_charset'.
1220 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
1222 * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
1223 and `NUM_LEADING_BYTES' in assert.
1225 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
1227 * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
1229 (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
1230 `NUM_LEADING_BYTES' instead of 128.
1232 1999-08-26 MORIOKA Tomohiko <tomo@etl.go.jp>
1234 * mule-charset.h (charset_by_leading_byte): Use
1235 `NUM_LEADING_BYTES' instead of 128.
1236 (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
1238 * mule-charset.c (charset_by_leading_byte): Use
1239 `NUM_LEADING_BYTES' instead of 128.
1240 (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
1242 * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
1245 1999-08-25 MORIOKA Tomohiko <tomo@etl.go.jp>
1247 * mule-charset.c (syms_of_mule_charset): Update to
1250 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
1252 * file-coding.c (encode_coding_sjis): New implementation for
1253 UTF2000. (decode_coding_sjis): Ditto.
1255 1999-06-17 MORIOKA Tomohiko <tomo@etl.go.jp>
1257 * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
1258 Don't define in UTF2000.
1260 * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
1263 * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1264 mule-ccl.c, lstream.h, buffer.h: Include character.h in every
1267 1999-06-17 MORIOKA Tomohiko <tomo@etl.go.jp>
1269 * config.h.in (CHAR_IS_UCS4): New macro.
1271 * mule-charset.c (rep_bytes_by_first_byte): Modify for
1272 conventional MULE representation.
1273 (syms_of_mule_charset): Update to 0.3 (Imamiya).
1275 * mule-charset.h: Reverted to original.
1277 * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1278 mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
1279 "mule-charset.h" if CHAR_IS_UCS4 is defined.
1281 * character.h: New file.
1283 * file-coding.c (Fmake_coding_system): Set 1 to
1284 `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
1286 (encode_coding_no_conversion): New implementation for UTF2000.
1288 * file-coding.h (struct Lisp_Coding_System): Add new member
1291 1999-06-16 MORIOKA Tomohiko <tomo@etl.go.jp>
1293 * file-coding.c (decode_coding_iso2022): Code-point arguments of
1294 `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
1295 (encode_coding_iso2022): New implementation for UTF2000.
1297 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1299 * mule-canna.c (c2mu): New implementation for UTF2000.
1302 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1304 * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
1306 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1308 * file-coding.c (reset_encoding_stream): Set 0 to
1309 `str->iso2022.current_char_boundary' in UTF2000.
1310 (encode_utf8): Don't define in UTF2000.
1311 (encode_coding_utf8): New implementation for UTF-8 representation
1313 (complex_vars_of_file_coding): Define coding-system `utf-8'.
1315 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
1317 * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
1319 * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
1321 (REP_BYTES_BY_FIRST_BYTE): Likewise.
1323 * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
1325 * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
1326 local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
1327 as UTF-8 in UTF2000.
1328 (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
1329 (non_ascii_valid_char_p): Don't define in UTF2000.
1330 (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
1331 (Lstream_get_emchar_1): Likewise.
1332 (utf-2000-version): New variable in UTF2000.
1334 * lread.c (read_escape): Add new reader `u'.
1336 * insdel.c (three_to_one_table): Don't define in UTF2000.
1337 (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
1338 `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1340 (bytind_to_bufpos_func): Likewise.
1341 (buffer_mule_signal_inserted_region): Likewise.
1342 (vars_of_insdel): Don't initialize `three_to_one_table'.
1343 (init_buffer_text): Use `buf->text->mule_size' instead of
1344 `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1347 * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
1348 UTF-8 representation in UTF2000.
1349 (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
1350 (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
1351 (decode_coding_iso2022): Don't define local variable `lb' in
1352 UTF2000; don't use LEADING_BYTE in UTF2000; use
1353 `DECODE_ADD_UCS_CHAR' in UTF2000.
1354 (convert_to_external_format): Decode as UTF-8 in UTF2000.
1356 * config.h.in (UTF2000): New macro.
1358 * buffer.h (struct buffer_text): Add new member `mule_size' and
1359 don't add `mule_shifter' and `mule_three_p' in UTF2000.
1360 (valid_char_p): Return always 1 in UTF2000.
1361 (MAX_EMCHAR_LEN): 6 in UTF2000.
1362 (three_to_one_table): Don't define in UTF2000.
1363 (real_bufpos_to_bytind): Modify for UTF-8 representation in
1365 (real_bytind_to_bufpos): Likewise.
1367 * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
1369 1999-06-10 MORIOKA Tomohiko <tomo@etl.go.jp>
1371 * mule-charset.c (rep_bytes_by_first_byte): Modified for character
1372 representation change.
1373 (Vutf_2000_version): New variable.
1374 (leading_code_private_11): New variable.
1375 (syms_of_mule_charset): Add new variables `utf-2000-version' and
1376 `leading-code-private-11'.
1378 * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
1379 (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
1380 (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
1381 (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
1382 (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
1383 (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
1384 (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
1385 (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
1386 (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
1387 (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
1388 (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
1389 (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
1390 (MIN_CHAR_GREEK): New macro.
1391 (MAX_CHAR_GREEK): New macro.
1392 (MIN_CHAR_CYRILLIC): New macro.
1393 (MAX_CHAR_CYRILLIC): New macro.
1394 (MIN_CHAR_HEBREW): New macro.
1395 (MAX_CHAR_HEBREW): New macro.
1396 (MIN_CHAR_THAI): New macro.
1397 (MAX_CHAR_THAI): New macro.
1398 (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
1399 (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
1400 (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
1401 (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
1402 (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
1403 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
1404 (CHAR_FIELD2): New inline function.
1405 (CHAR_FIELD3): New inline function.
1406 (MULE_CHAR_PRIVATE_OFFSET): New macro.
1407 (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
1408 (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
1409 (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
1410 (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
1411 (MIN_CHAR_COMPOSITION): Likewise.
1412 (CHAR_LEADING_BYTE): Modified for character representation change.
1413 (MAKE_CHAR): Likewise.
1415 * lisp.h (Vcharset_latin_iso8859_1): New variable.
1416 (Vcharset_greek_iso8859_7): Likewise.
1417 (Vcharset_cyrillic_iso8859_5): Likewise.
1418 (Vcharset_hebrew_iso8859_8): Likewise.
1419 (Vcharset_thai_tis620): Likewise.
1420 (Vcharset_katakana_jisx0201): Likewise.
1422 1999-08-17 MORIOKA Tomohiko <tomo@etl.go.jp>
1424 * file-coding.c (determine_real_coding_system): Treat `coding:'
1427 1999-08-16 MORIOKA Tomohiko <tomo@etl.go.jp>
1429 * file-coding.c (struct decoding_stream): New member `counter'.
1430 (reset_decoding_stream): Initialize `counter'.
1431 (decode_coding_ucs4): Use `counter'.
1432 (decode_coding_utf8): Likewise.
1434 1999-07-30 XEmacs Build Bot <builds@cvs.xemacs.org>
1436 * XEmacs 21.2.19 is released
1438 1999-07-27 Jeff Miller <jmiller@smart.net>
1440 * add a "#ifdef HAVE_MENUBARS" wrapper to gui.c around
1441 menubar_show_keybindings.
1443 1999-07-23 SL Baur <steve@miho>
1445 * mule-charset.c (syms_of_mule_charset): Delete duplicated
1446 definition of Qccl_program.
1448 * mule-ccl.h: Make a global declaration of it here.
1450 1999-07-20 Bob Weiner <weiner@beopen.com>
1452 * s/sco7.h: Added from rr@sco.com.
1454 1999-06-25 MORIOKA Tomohiko <tomo@etl.go.jp>
1456 * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
1458 1999-06-24 MORIOKA Tomohiko <tomo@etl.go.jp>
1460 * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
1461 (mule_encode): Likewise.
1463 * mule-ccl.c (Qccl_program): New variable.
1464 (CCL_SUSPEND): New macro.
1465 (CCL_INVALID_CMD): New macro.
1466 (CCL_READ_CHAR): Don't regard as invalid command while processing
1467 the last block even if input is empty; use
1468 `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
1469 (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
1471 * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
1472 (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
1473 (CCL_STAT_SUSPEND_BY_DST): Likewise.
1474 (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
1475 (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
1477 1999-05-04 Ken'ichi Handa <handa@gnu.org>
1479 * mule-ccl.h (struct ccl_program): New member stack_idx.
1481 * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
1482 (ccl_driver): Setup stack_idx and ccl_prog correctly. Update them
1484 (setup_ccl_program): Initialize ccl->stack_idx to 0.
1486 1998-10-12 Kenichi Handa <handa@etl.go.jp>
1488 * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
1491 1998-08-18 Kenichi Handa <handa@etl.go.jp>
1493 * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
1494 processing the last block, don't just finish but processes eol
1495 block of the current CCL program.
1496 (ccl_driver): Add a new jump label ccl_repeat for the above
1499 1998-04-15 Kenichi Handa <handa@etl.go.jp>
1501 * mule-ccl.c: Typo in comments fixed.
1502 (Qccl_program_idx): New variables.
1503 (CCL_ReadMultibyteChar2): Macro name changed from
1504 CCL_ReadMultibyteCharacter.
1505 (CCL_WriteMultibyteChar2): Macro name changed from
1506 CCL_WriteMultibyteChar2.
1507 (ccl_driver): Adjusted for the above changes.
1508 (resolve_symbol_ccl_program): New function.
1509 (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
1510 program. If CCL-PRGRAM is a vector, convert symbols in it to ID
1511 numbers by resolve_symbol_ccl_program.
1512 (Fccl_execute_on_string): Likewise.
1513 (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
1514 convert symbols in it to ID numbers by resolve_symbol_ccl_program.
1516 1998-01-21 Kenichi Handa <handa@etl.go.jp>
1518 * mule-ccl.h: (struct ccl_program): New member private_state.
1521 (CCL_Call): Fix the comment.
1522 (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
1523 macros for CCL Commands.
1525 (ccl_driver): New case lable `CCL_Extention'.
1526 (setup_ccl_program): Initialize the member `private_state' of CCL.
1528 1999-07-08 Katsumi Yamaoka <yamaoka@jpl.org>
1530 * keymap.c (copy_keymap_internal): Inherit the default binding.
1532 1999-07-14 Kazuyuki IENAGA <kazz@imasy.or.jp>
1534 * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
1535 focus the event (XIM_focus_event).
1536 (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because
1537 XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
1538 the interface for future use (XIM_SetGeometry).
1539 * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot
1540 location (XIM_SetSpotLocation).
1541 (x_output_eol_cursor): Ditto.
1543 1999-07-17 Gunnar Evermann <ge204@eng.cam.ac.uk>
1545 * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
1546 Olivier's change to lrecord.h of 1999-04-22
1548 1999-07-20 Robert Pluim <rpluim@bigfoot.com>
1550 * gutter.c (redraw_exposed_gutter): Change type of pos from
1551 enum toolbar_pos -> enum gutter_pos, since former is only defined
1552 if toolbar support is.
1554 1999-07-19 Andy Piper <andy@xemacs.org>
1556 * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
1559 * gutter.c (gutter_validate): new function for the gutter specifier.
1560 (specifier_type_create_gutter): declare specifier validator.
1562 * buffer.h (INC_CHARBYTIND): add for no error checking version.
1564 1999-07-18 Andy Piper <andy@xemacs.org>
1566 * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
1568 * glyphs-msw.c (console_type_create_glyphs_mswindows): add
1570 (mswindows_resize_subwindow): new function.
1572 * gutter.c (redraw_exposed_gutter): only reset the
1573 current_display_lines if non-zero.
1574 (Fgutter_pixel_height): new function.
1575 (Fgutter_pixel_width): new function.
1577 * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
1578 we want to retrive from the tab control.
1580 1999-07-17 Andy Piper <andy@xemacs.org>
1582 * window.c (change_window_height): mark gutters changed when we're
1585 * gutter.c (specifier_vars_of_gutter): make defaults more
1588 * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
1590 (DEFAULT_GUTTER_WIDTH): change.
1591 (DEFAULT_GUTTER_BORDER_WIDTH): change.
1593 1999-07-18 Andy Piper <andy@xemacs.org>
1595 * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
1597 1999-07-16 Andy Piper <andy@xemacs.org>
1599 * frame.c (Fmake_frame): call init_frame_gutters().
1601 * redisplay.c (add_emchar_rune): use string functions if we are
1602 working with a string.
1603 (position_redisplay_data_type): add string element.
1605 1999-07-15 Andy Piper <andy@xemacs.org>
1607 * winslots.h: add real_gutter_size slots to hold the actual gutter
1608 size. This is important for autodetected sizes.
1610 * gutter.c (calculate_gutter_size): calculate size for gutters
1611 that have 'autodetect size.
1613 * redisplay-msw.c (mswindows_output_vertical_divider): adjust
1614 extent of divider for gutters.
1616 * redisplay-x.c (x_output_vertical_divider): adjust extent of
1617 divider for gutters.
1619 * scrollbar.c (update_scrollbar_instance): adjust scrollbar
1620 position to take into account the gutters.
1622 * redisplay.c (generate_modeline): adjust modeline position to
1623 take into account the gutters.
1625 1999-07-14 Andy Piper <andy@xemacs.org>
1627 * gutter.c (frame_topmost_window): new function.
1628 (frame_bottommost_window): ditto.
1629 (frame_leftmost_window): ditto.
1630 (frame_rightmost_window): ditto.
1632 1999-07-13 Andy Piper <andy@xemacs.org>
1634 * redisplay.c (calculate_display_line_boundaries): use text
1635 boundaries so that gutters get handled properly.
1637 1999-07-12 Andy Piper <andy@xemacs.org>
1639 * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
1642 * redisplay-output.c (redisplay_clear_to_window_end): generalised
1645 * redisplay-x.c (redisplay_clear_to_window_end): moved to
1648 * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
1650 * gutter.c: new file - implements gutters. All new functions are
1651 semantically equivalent to the toolbar functions.
1652 (gutter_was_visible): new function.
1653 (get_gutter_coords): ditto.
1654 (output_gutter): ditto.
1655 (clear_gutter): ditto.
1656 (update_frame_gutters): ditto.
1657 (redraw_exposed_gutter): ditto.
1658 (redraw_exposed_gutters): ditto.
1659 (free_frame_gutters): ditto.
1660 (init_frame_gutters): ditto.
1661 (decode_gutter_position): ditto.
1662 (Fset_default_gutter_position): ditto.
1663 (Fset_default_gutter_position): ditto.
1664 (Fdefault_gutter_position): ditto.
1665 (gutter_after_change): ditto.
1666 (Fgutter_specifier_p): ditto.
1667 (recompute_overlaying_specifier): ditto.
1668 (gutter_specs_changed): ditto.
1669 (default_gutter_specs_changed): ditto.
1670 (gutter_geometry_changed_in_window): ditto.
1671 (default_gutter_size_changed_in_window): ditto.
1672 (default_gutter_border_width_changed_in_window): ditto.
1673 (default_gutter_visible_p_changed_in_window): ditto.
1674 (syms_of_gutter): ditto.
1675 (vars_of_gutter): ditto.
1676 (specifier_type_create_gutter): ditto.
1677 (specifier_vars_of_gutter): ditto.
1679 * gutter.h: new file. Contains gutter constants and sizing macros
1680 similar to those for the toolbar.
1682 * winslots.h: add gutter variables.
1684 * window.h: declare window_is_* functions.
1686 * window.c (window_is_lowest): make non-static.
1687 (window_is_highest): ditto.
1688 (window_top_toolbar_height): deleted.
1689 (window_bottom_toolbar_height): deleted.
1690 (window_left_toolbar_width): deleted.
1691 (window_right_toolbar_width): deleted.
1692 (window_top_gutter_height): add gutter sizing.
1693 (window_bottom_gutter_height): ditto.
1694 (window_left_gutter_width): ditto.
1695 (window_right_gutter_width): ditto.
1697 * symsinit.h: declarations for gutters vars etc.
1699 * search.c (bi_find_next_emchar_in_string): new function.
1701 * scrollbar.c (update_scrollbar_instance): remove reference to
1702 window_bottom_toolbar_height which did nothing.
1704 * redisplay.h (struct display_line): add face indices for
1705 overriding defaults in output_display_line.
1706 Add gutter_changed flags and declarations.
1708 * redisplay.c (create_string_text_block): new function, similar to
1709 create_text_block but for strings. Display tables etc are used
1710 from the currently selected window.
1711 (generate_string_display_line): ditto. Similar to
1712 generate_display_line.
1713 (generate_displayable_area): generate display lines for a given
1714 area on a frame. Input is the string, with associated extents, to
1716 (redisplay_frame): add gutter_changed check.
1717 (redisplay_device): ditto.
1718 (redisplay_without_hooks): ditto.
1720 * redisplay-x.c (bevel_modeline): moved to redisplay.c.
1721 (x_redraw_exposed_area): redraw exposed gutters.
1722 (x_bevel_area): new redisplay device method.
1723 (x_type_create_redisplay_mswindows): add bevel_area device method.
1724 (x_output_display_block): fiddly Martin-style cleanup.
1725 (x_output_vertical_divider): use bevel_area.
1727 * redisplay-output.c (output_display_line): check display_lines
1728 for face information before using defaults.
1729 (bevel_modeline): new function, calls bevel_area with appropriate
1732 * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
1733 (mswindows_redraw_exposed_area): redraw exposed gutters.
1734 (mswindows_bevel_area): new redisplay device method.
1735 (console_type_create_redisplay_mswindows): add bevel_area device
1738 * indent.c (string_column_at_point): add column_at_point but for
1741 * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
1742 instantiate widgets that we have a toolkit for.
1744 * general.c: add Qgutter.
1746 * frame.h (struct frame): add display lines for gutters and
1749 * frame.c (set_frame_selected_window): mark gutters changed.
1751 * emacs.c (main_1): add gutter initialisation.
1753 * device.h (struct device): add gutter_changed flag and macros to
1756 * console.h (struct console_methods): new bevel area redisplay
1759 * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
1760 REAL_INC_BYTIND is for buffers.
1761 (INC_CHARPTR): ditto.
1763 * Makefile.in.in (objs): add gutter.o
1765 1999-07-13 XEmacs Build Bot <builds@cvs.xemacs.org>
1767 * XEmacs 21.2.18 is released
1769 1999-07-08 SL Baur <steve@mule.m17n.org>
1771 * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
1773 (emacs_Xt_handle_magic_event): Ditto.
1774 * redisplay-x.c (x_output_string): Ditto.
1775 (x_output_eol_cursor): Ditto.
1777 1999-06-30 Kazuyuki IENAGA <kazz@imasy.or.jp>
1779 * event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
1780 problem that when XIM is destroyed or missed with some reason,
1781 xemacs will die. Now xim=xlib waits the XIM will be ready and
1782 endures the case of XIM end up.
1784 1999-07-03 Gunnar Evermann <ge204@eng.cam.ac.uk>
1786 * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
1787 SIGINT and SIGCHLD before calling tt_open and restore the
1788 afterwards. This fixes e.g. the zombie subprocesses on Solaris
1790 1999-07-06 SL Baur <steve@xemacs.org>
1792 * s/linux.h: gcc-2.8 changes for powerpc
1793 From Justin Vallon <vallon@mindspring.com>
1795 1999-07-05 Didier Verna <verna@inf.enst.fr>
1797 * indent.c: new symbol Qcoerce.
1798 (Fmove_to_column): use it + doc string update.
1800 1999-07-04 Andy Piper <andy@xemacs.org>
1802 * console.c: undo earlier Fprovide changes.
1806 * console-tty.c (image_instantiator_format_create_glyphs_tty): new
1807 function. validate appropriate image formats for tty.
1809 * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
1810 initialize consoles parameter.
1811 (struct image_instantiator_methods): add consoles parameter.
1812 (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
1814 (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
1817 * glyphs-msw.c: declare instantiators for later use.
1818 (image_instantiator_format_create_glyphs_mswindows): validate xpm
1819 and friends on the mswindows console.
1820 * glyphs-x.c: ditto.
1822 * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
1823 that have not been registered on the supplied device.
1824 (Fvalid_image_instantiator_format_p): add locale argument.
1825 (instantiate_image_instantiator): valid image instantiator on the
1828 * symsinit.h: add image_instantiator_format_create_glyphs_tty()
1831 * emacs.c (main_1): add call to
1832 image_instantiator_format_create_glyphs_tty().
1834 1999-06-29 Olivier Galibert <galibert@pobox.com>
1836 * lisp.h: Add #include <stddef.h>.
1838 * sysdep.c: Remove #include <stddef.h>.
1839 * symbols.c: Remove #include <stddef.h>.
1840 * sheap.c: Remove #include <stddef.h>.
1841 * opaque.c: Remove #include <stddef.h>.
1842 * nt.c: Remove #include <stddef.h>.
1843 * mule-charset.c: Remove #include <stddef.h>.
1844 * marker.c: Remove #include <stddef.h>.
1845 * file-coding.c: Remove #include <stddef.h>.
1846 * extents.c: Remove #include <stddef.h>.
1847 * elhash.c: Remove #include <stddef.h>.
1848 * data.c: Remove #include <stddef.h>.
1849 * chartab.c: Remove #include <stddef.h>.
1850 * bytecode.c: Remove #include <stddef.h>.
1851 * alloc.c: Remove #include <stddef.h>. Fix vector description
1853 1999-06-30 SL Baur <steve@miho.m17n.org>
1855 * editfns.c: Document "%s" format spec.
1856 Suggested by Bob Weiner <weiner@altrasoft.com>
1858 1999-06-29 Andy Piper <andy@xemacs.org>
1860 * event-msw.c: fix definition booboo.
1862 1999-06-28 Andy Piper <andy@xemacs.org>
1864 * glyphs-x.c: change tree -> tree-view, progress ->
1865 progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
1867 (complex_vars_of_glyphs_x): provide-on-console the implemented
1870 * glyphs-msw.c: ditto.
1871 (complex_vars_of_glyphs_mswindows): ditto.
1873 * lisp.h: add Fprovide_on_console.
1875 * fns.c (Ffeaturep): add extra optional console argument.
1876 (Fprovide_on_console): like Fprovide but provides only on the
1877 specified console-type.
1878 (Frequire): check console-features as well as global features.
1880 * console.c (Fconsole_features): new function. return features for
1882 (syms_of_console): add Fconsole_features.
1884 * console.h (CONMETH_FEATURES): new function for accessing features.
1885 (CONSOLE_FEATURES): ditto.
1886 (struct console_methods): add features slot.
1887 (INITIALIZE_CONSOLE_TYPE): initialize features slot.
1889 1999-06-28 Andy Piper <andy@xemacs.org>
1891 * event-Xt.c (handle_focus_event_1): conditionally compile for
1894 * s/cygwin32.h: fix me website address.
1896 * event-msw.c: add NMHDR for pre b20 cygwin builds.
1898 * gui-x.c (button_item_to_widget_value): only add callback if it
1901 * glyphs-x.c: add progress, edit and combo instantiators.
1902 (x_widget_set_property): new function. uses lwlib to set widget
1904 (x_widget_property): new function. uses lwlib to get widget
1906 (x_button_instantiate): support images in buttons.
1907 (x_button_property): new function. use lwlib to get the selected
1909 (x_progress_instantiate): new function for instantiating progress
1911 (x_progress_set_property): new function. sets the progress gauge
1913 (x_edit_instantiate): new function. for instantiating edit fields.
1914 (x_combo_instantiate): new function. for instantiating combo
1916 (image_instantiator_format_create_glyphs_x): add new device ii
1919 * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
1921 * console.h (CONSOLE_FEATURES): new features accesor.
1923 * conslots.h (MARKED_SLOT): add features entry.
1925 1999-06-25 Andy Piper <andy@xemacs.org>
1927 * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
1930 * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
1932 * gui.h (struct Lisp_Gui_Item): add accelerator.
1934 * gui.c (gui_item_add_keyval_pair): deal with accelerators.
1935 (gui_item_init): ditto.
1936 (gui_add_item_keywords_to_plist): ditto.
1937 (mark_gui_item): ditto.
1938 (gui_item_hash): ditto.
1939 (gui_item_accelerator): new function.
1940 (gui_name_accelerator): new function stolen from gui-x.c
1942 * gui-x.c (popup_selection_callback): always define. mark
1943 subwindows changed after calling a callback.
1944 (menu_name_to_accelerator): deleted.
1945 (button_item_to_widget_value): forward gui_item things to gui_item
1948 * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
1949 appropriate accesors.
1951 * glyphs-x.c: declare new glyph formats.
1952 (x_finalize_image_instance): unmanage and destroy widgets if they
1954 (x_unmap_subwindow): handle widgets specially.
1955 (x_map_subwindow): ditto. offset display of widgets by offset of
1956 text widget within container.
1957 (x_update_subwindow): new function. call lw_modify_all_widgets
1958 when we are a widget.
1959 (x_widget_instantiate): new function for generically creating
1960 widgets-glyphs. toolkit specifics forwarded to lwlib.
1961 (x_button_instantiate): new function for instantiating
1962 widgets-glyph buttons.
1963 (console_type_create_glyphs_x): register update_subwindow.
1964 (image_instantiator_format_create_glyphs_x): register widget and
1967 * event-msw.c (mswindows_wnd_proc): remove redundant variable.
1969 * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
1970 when we get a button press in case we do not have the focus.
1971 (handle_focus_event_1): set the keyboard focus to the text widget
1972 if we do not have it.
1974 * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
1977 1999-06-24 SL Baur <steve@miho.m17n.org>
1979 * syntax.c (scan_words): Restore non-Mule code.
1980 (word_constituent_p): Restore.
1982 1999-06-23 Olivier Galibert <galibert@pobox.com>
1984 * config.h.in: Add missing #undef *_USER_DEFINED.
1986 1999-06-23 SL Baur <steve@miho.m17n.org>
1988 * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
1989 int (fixes a 64-bit problem).
1991 * chartab.c (word_boundary_p): Use EQ not == for lisp_object
1994 1999-03-23 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
1996 * paths.h.in (PATH_DOC): Made doc-directory configurable.
1998 1999-06-22 Olivier Galibert <galibert@pobox.com>
2000 * lrecord.h: Added basic external description system.
2002 * symbols.c: Added symbol, symbol-value-buffer-local,
2003 symbol-value-lisp-magic and symbol-value-varalias description.
2004 * mule-charset.c: Added charset description.
2005 * marker.c: Added marker description.
2006 * keymap.c: Added keymap description.
2007 * glyphs.c: Added glyph description.
2008 * floatfns.c: Added float description.
2009 * file-coding.c: Added coding-system description.
2010 * extents.c: Added extent description.
2011 * elhash.c: Added hash-table description.
2012 * data.c: Added weak-list desciption.
2013 * chartab.c: Added char-table-entry and char-table description.
2014 * bytecode.c: Added compiled-function description.
2015 * alloc.c: Added cons, vector and string description.
2017 1999-06-22 Olivier Galibert <galibert@pobox.com>
2019 * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
2020 Updated everything to the removal of the "flags" substructure.
2022 * lisp.h (subr_lheader_initializer): Updated.
2023 * symeval.h (symbol_value_forward_lheader_initializer): Updated.
2025 1999-06-20 MORIOKA Tomohiko <tomo@etl.go.jp>
2027 * syntax.c (word_constituent_p): Deleted.
2028 (scan_words): Use `WORD_BOUNDARY_P'.
2030 * chartab.c (Vword_combining_categories): New variable.
2031 (Vword_separating_categories): Likewise.
2032 (CATEGORYP): New macro.
2033 (CATEGORY_SET): Likewise.
2034 (CATEGORY_MEMBER): Likewise.
2035 (word_boundary_p): New function.
2036 (complex_vars_of_chartab): Set up new variable
2037 `word-combining-categories' and `word-separating-categories'.
2039 1999-06-18 Olivier Galibert <galibert@pobox.com>
2041 * lrecord.h: Added description as a placehold in the lrecord
2042 implementation structures. Added the parameter to all constructor
2045 * alloc.c: Added placeholders.
2047 * bytecode.c: Ditto.
2051 * database.c: Ditto.
2056 * event-stream.c: Ditto.
2060 * file-coding.c: Ditto.
2061 * floatfns.c: Ditto.
2069 * mule-charset.c: Ditto.
2073 * rangetab.c: Ditto.
2074 * specifier.c: Ditto.
2077 * tooltalk.c: Ditto.
2080 1999-06-22 XEmacs Build Bot <builds@cvs.xemacs.org>
2082 * XEmacs 21.2.17 is released
2084 1999-06-13 Oscar Figueiredo <oscar@xemacs.org>
2086 * config.h.in (HAVE_LDAP_SET_OPTION): New define
2087 (HAVE_LDAP_GET_LDERRNO): Ditto
2088 (HAVE_LDAP_RESULT2ERROR): Ditto
2089 (HAVE_LDAP_PARSE_RESULT): Ditto
2090 (HAVE_UMICH_LDAP): Removed
2091 (HAVE_NS_LDAP): Removed
2093 * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
2094 suggested by Olivier Galibert
2095 (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
2097 * eldap.c: Take the removal of `livep' into account in all the
2099 (signal_ldap_error): Take two additional parameters
2100 Added new finer compilation conditions in order to use
2101 ldap_parse_result or ldap_result2error if available
2102 (Fldap_open): Conform to this new API
2103 (Fldap_search_internal): Ditto
2105 1999-06-17 SL Baur <steve@miho.m17n.org>
2107 * data.c (struct int_or_double): Should use EMACS_INT not int.
2109 1999-06-16 Norbert Koch <n.koch@eai-delta.de>
2111 * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
2114 1999-06-12 MORIOKA Tomohiko <tomo@etl.go.jp>
2116 * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
2117 `CCL_MODE_ENCODING'.
2119 * file-coding.c (mule_decode): Run `ccl_driver' with
2120 `CCL_MODE_DECODING'.
2121 (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
2123 * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
2124 (ccl_driver): Add new argument `conversion_mode'.
2125 (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
2126 (Fccl_execute_on_string): Likewise [perhaps it is better to add
2127 new optional argument].
2129 * mule-ccl.h (CCL_MODE_ENCODING): New macro.
2130 (CCL_MODE_DECODING): New macro.
2131 (ccl_driver): Add new argument `conversion_mode'.
2133 1999-06-15 SL Baur <steve@miho.m17n.org>
2135 * mule-charset.c (Fsplit_char): New subr.
2136 (Fchar_octet): delete.
2137 (syms_of_mule_charset): DEFSUBR it.
2139 1999-06-13 Andy Piper <andy@xemacs.org>
2141 * menubar.h: update declarations involving gui_items.
2143 * lisp.h: declare Lisp_Gui_Item.
2145 * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
2147 * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
2148 (print_image_instance): ditto.
2149 (image_instance_equal): ditto.
2150 (image_instance_hash): ditto.
2152 * event-msw.c (mswindows_need_event): assert badly_p status.
2153 (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
2154 callbacks in tree-view and tab-control widgets.
2155 (emacs_mswindows_next_event): modify use of
2156 mswindows_dequeue_dispatch_event.
2158 * dialog-msw.c (mswindows_popup_dialog_box): modify for new
2159 lisp-based gui_items.
2161 * glyphs-msw.c (mswindows_update_subwindow): update use of
2163 (mswindows_register_gui_item): new function.
2164 (mswindows_register_gui_item): fix to use lisp gui_items.
2165 (mswindows_widget_instantiate): ditto.
2166 (mswindows_button_instantiate): ditto.
2167 (add_tree_item): new function to recursively add tree view
2169 (add_tree_item_list): ditto.
2170 (mswindows_tree_instantiate): new function. instantiate tree view
2172 (add_tab_item): new function to add tabs to a tab control.
2173 (mswindows_tab_instantiate): new function. instantiate tab
2175 (image_instantiator_format_create_glyphs_mswindows): add tree view
2177 (vars_of_glyphs_mswindows): ditto.
2179 * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
2181 (check_valid_item_list): ditto.
2182 (initialize_widget_image_instance): fix to use new lisp gui_item.
2183 (widget_instantiate_1): allow the setting of default textwidth in
2185 (widget_instantiate): change to use new widget_instantiate_1
2187 (combo_instantiate): ditto.
2188 (static_instantiate): ditto.
2189 (tab_instantiate): new function for tab widgets.
2190 (image_instantiator_format_create_glyphs_widget): add tab and tree
2193 * menubar-msw.c (displayable_menu_item): convert to use lisp
2195 (populate_menu_add_item): ditto.
2196 (populate_or_checksum_helper): ditto.
2198 * menubar.c (menu_parse_submenu_keywords): convert to use lisp
2200 (Fmenu_find_real_submenu): ditto.
2202 * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
2204 * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
2205 objects, convert functions that use them accordingly.
2206 (gui_item_init): ditto.
2207 (gui_item_active_p): ditto.
2208 (gui_item_selected_p): ditto.
2209 (gui_item_included_p): ditto.
2210 (gui_item_display_flush_left): ditto.
2211 (gui_item_display_flush_right): ditto.
2212 (mark_gui_item): ditto.
2213 (allocate_gui_item): new function to create a gui_item.
2214 (make_gui_item_from_keywords_internal): ditto. create and return a
2215 gui_item as well as setting keywords.
2216 (gui_parse_item_keywords): ditto.
2217 (gui_parse_item_keywords_no_errors): ditto.
2218 (gui_add_item_keywords_to_plist): new function, not yet used.
2219 (gui_item_hash): new function.
2220 (gui_item_id_hash): use gui_item_hash.
2221 (gui_item_equal): new function.
2222 (print_gui_item): new function.
2224 1999-06-11 XEmacs Build Bot <builds@cvs.xemacs.org>
2226 * XEmacs 21.2.16 is released
2228 1999-06-10 Andy Piper <andy@xemacs.org>
2230 * select-msw.c (mswindows_own_selection): only set the clipboard
2232 (mswindows_get_foreign_selection): only get the clipboard if
2234 (mswindows_disown_selection): only disown the clipboard if asked.
2236 1999-06-03 MORIOKA Tomohiko <tomo@etl.go.jp>
2238 * file-coding.c (coding_system_from_mask): Use `raw-text' instead
2240 (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
2241 of coding-category `no-conversion'.
2243 1999-06-03 MORIOKA Tomohiko <tomo@etl.go.jp>
2245 * file-coding.c (Qraw_text): New variable.
2246 (syms_of_mule_coding): Add new symbol `raw-text'.
2247 (complex_vars_of_mule_coding): Add new coding-system `raw-text';
2248 define coding-system `binary' independently; define coding-system
2249 `no-conversion' as an alias for `raw-text'.
2251 * file-coding.h (Qraw_text): New variable.
2253 1999-06-08 SL Baur <steve@xemacs.org>
2255 * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
2257 1999-06-06 Hrvoje Niksic <hniksic@srce.hr>
2259 * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
2261 (base64_decode_1): Signal errors instead of returning -1.
2263 1999-06-07 Hrvoje Niksic <hniksic@srce.hr>
2265 * mule-charset.c (Fmake_char): Update docstring.
2267 1999-06-07 Hrvoje Niksic <hniksic@srce.hr>
2269 * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
2271 1999-06-05 Hrvoje Niksic <hniksic@srce.hr>
2273 * fns.c (base64_decode_1): Allow and ignore any non-base64
2274 characters in input.
2276 1999-05-27 Olivier Galibert <galibert@pobox.com>
2278 * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
2279 of report_pure_usage().
2281 1999-06-04 Hrvoje Niksic <hniksic@srce.hr>
2283 * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
2285 1999-06-04 XEmacs Build Bot <builds@cvs.xemacs.org>
2287 * XEmacs 21.2.15 is released
2289 1999-06-01 Hirokazu FUKUI <fukui@atesoft.advantest.co.jp>
2291 * frame.c (Fset_mouse_position):
2292 (Fset_mouse_pixel_position):
2293 * window.c (Fsplit_window):
2294 (Fmove_to_window_line):
2295 Fix crash when invoking functions with an already-deleted window
2298 * indent.c (vertical_motion_1):
2300 (Fvertical_motion_pixels):
2301 * window.c (Fwindow_displayed_text_pixel_height):
2302 Fix error message when invoking functions with an already-deleted
2305 1999-06-01 Jan Vroonhof <vroonhof@math.ethz.ch>
2307 * sysdep.c (request_sigio_on_device): Guard against glibc
2308 2.1's stub streams implementation.
2310 1999-06-03 SL Baur <steve@xemacs.org>
2313 * emacs.c: Implement x.y.z version numbers
2314 From Jan Vroonhof <vroonhof@math.ethz.ch>
2316 1999-05-20 MORIOKA Tomohiko <tomo@etl.go.jp>
2318 * mule-charset.c (complex_vars_of_mule_charset): Registry of
2319 japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
2322 1999-06-03 SL Baur <steve@xemacs.org>
2325 * device-x.c: rename session option to wmcommand.
2326 From Oliver Graf <ograf@rhein-zeitung.de>
2328 1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
2330 * fns.c (Fsubstring): Don't traverse the same region twice with
2331 charcount_to_bytecount().
2333 1999-06-03 SL Baur <steve@steve1.m17n.org>
2335 * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
2338 * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
2339 doesn't really work as is implied by the commentary).
2340 Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
2342 1999-06-02 SL Baur <steve@steve1.m17n.org>
2344 * symsinit.h: Declare vars_of_ntproc.
2345 * emacs.c (main_1): Call it.
2347 * ntproc.c (syms_of_ntproc): Move variable initializations from
2349 (vars_of_ntproc): ... to here [new function].
2351 * file-coding.c (syms_of_file_coding): Rename.
2352 (vars_of_file_coding): Ditto.
2353 (complex_vars_of_file_coding): Ditto.
2355 * symsinit.h: Rename *_mule_coding to *_file_coding.
2357 * emacs.c (main_1): Call them by the proper name.
2359 * device-msw.c (syms_of_device_mswindows): Move variable
2360 initializations from here ...
2361 (vars_of_device_mswindows): ... to here.
2363 * chartab.c (vars_of_chartab): New function.
2365 * symsinit.h: New function, vars_of_chartab.
2367 * emacs.c (main_1): Call it.
2369 * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
2370 (vars_of_mule_canna): ... to here.
2372 * mule-ccl.c (vars_of_mule_ccl): New function. Move variable
2373 initializations out of syms_of_mule_ccl.
2375 * symsinit.h: Declare new function vars_of_mule_ccl.
2377 * emacs.c (main_1): Call it.
2379 1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
2381 * fns.c (base64_decode_1): Ignore whitespace.
2383 1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
2385 * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
2388 1999-05-21 Andy Piper <andy@xemacs.org>
2390 * xselect.c: deleted.
2392 * symsinit.h: declare select initialisation.
2394 * select.h: new file. declare commonly used select functions and
2397 * select.c: new file. generalised from xselect.c.
2398 (clean_local_selection_data): moved from xselect.c.
2399 (get_local_selection): ditto. device specific pieces called via a
2401 (handle_selection_clear): ditto.
2402 (Fown_selection_internal): renamed and generalised from
2403 Fx_own_selection_internal. moved from xselect.c.
2404 (Fdisown_selection_internal): ditto.
2405 (Fselection_owner_p): ditto.
2406 (Fselection_exists_p): ditto.
2407 (Fget_selection_internal): ditto.
2408 (syms_of_select): new function. QXXXX values moved from xselect.c
2409 (vars_of_select): new function. selection_converter_alist,
2410 lost_selection_hooks moved and renamed from xselect.c
2412 * select-x.c: renamed from xselect.c.
2413 (x_own_selection): converted to device specific. non-X-specific
2414 bits moved to select.c.
2415 (x_get_foreign_selection): ditto.
2416 (x_disown_selection): ditto.
2417 (x_selection_exists_p): ditto.
2418 (console_type_create_select_x): new function.
2420 * select-msw.c (mswindows_own_selection): new device method to set
2421 the clipboard when we 'own' the selection.
2422 (mswindows_get_foreign_selection): new device method to get the
2424 (mswindows_disown_selection): new device method to delete the
2425 selection when we 'disown' it.
2426 (console_type_create_select_mswindows): new function.
2428 * emacs.c (main_1): add select to things to initialise.
2430 * console.h (struct console_methods): new console methods for
2433 * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
2435 1999-05-20 Hrvoje Niksic <hniksic@srce.hr>
2437 * print.c (long_to_string): Install a faster version.
2439 1999-05-16 Andy Piper <andy@xemacs.org>
2441 * ntproc.c (syms_of_ntproc): default
2442 win32-start-process-share-console to t.
2444 1999-05-14 Hrvoje Niksic <hniksic@srce.hr>
2446 * config.h.in: Do it here.
2448 * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
2450 1999-05-14 Andy Piper <andy@xemacs.org>
2452 * toolbar-msw.c (mswindows_output_toolbar): hash on something
2455 1999-05-14 XEmacs Build Bot <builds@cvs.xemacs.org>
2457 * XEmacs 21.2.14 is released
2459 1999-05-12 Andy Piper <andy@xemacs.org>
2461 * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
2463 1999-05-11 Gunnar Evermann <ge204@eng.cam.ac.uk>
2465 * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
2466 run_temacs_argv array -- fixes random memory corruption crash
2468 1999-05-12 Jan Vroonhof <vroonhof@math.ethz.ch>
2470 * window.c (Fcurrent_window_configuration):
2471 Save minibuffer height;
2473 * window.c (set_window_configuration): use it.
2475 1999-05-10 Robert Pluim <rpluim@bigfoot.com>
2477 * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
2479 1999-04-21 Jan Vroonhof <vroonhof@math.ethz.ch>
2481 * redisplay.c (redisplay_window): Do not put data
2482 in the line start cache if it is not guaranteed to be correct
2484 1999-04-02 Jan Vroonhof <vroonhof@math.ethz.ch>
2486 * window.c (struct window_config): Removed frame
2488 (window_config_equal): No longer compare frame sizes.
2489 (Fset_window_configuration): Resize old top window to fit in the
2490 current frame directly, no longer use a fake frame resize.
2491 (Fcurrent_window_configuration): No longer save frame size
2493 1999-05-11 Andy Piper <andy@xemacs.org>
2495 * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
2498 1999-05-10 Hrvoje Niksic <hniksic@srce.hr>
2500 * sysdep.c (init_system_name): If gethostname gives a proper
2501 domain name, don't look further for one.
2503 1999-05-09 Hrvoje Niksic <hniksic@srce.hr>
2505 * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
2506 (Fintern_soft): Accept a symbol argument.
2508 1999-05-06 Hrvoje Niksic <hniksic@srce.hr>
2510 * symbols.c (Fintern): ...do it here.
2512 * lread.c (read_atom): Don't handle keywords here.
2514 1999-05-06 Hrvoje Niksic <hniksic@srce.hr>
2516 * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
2518 1999-05-03 Olivier Galibert <galibert@pobox.com>
2520 * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
2521 is interned in the main obarray.
2523 1999-04-23 Gunnar Evermann <ge204@eng.cam.ac.uk>
2525 * menubar-x.c (pre_activate_callback): set accelerator field in
2526 "No menu" entries to nil. Avoid crash in
2527 command_builder_operate_menu_accelerator
2529 1999-05-03 Olivier Galibert <galibert@pobox.com>
2531 * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
2533 * lisp.h (DEFUN): Fix lrecord header initialisation.
2535 1999-05-02 Andy Piper <andy@xemacs.org>
2537 * objects-msw.c (mswindows_font_instance_truename): add a ';'.
2539 * ntproc.c (sys_kill): cast using MS mandated defines.
2541 1999-04-29 Andy Piper <andy@xemacs.org>
2543 * m/intel386.h: remove redundant definitions.
2545 * s/mingw32.h: new header for mingw32.
2547 * unexnt.c: (open_input_file): function moved to nt.c.
2548 (close_file_data): ditto.
2549 (rva_to_section): function moved to ntproc.
2551 * symsinit.h: declare syms_of_ntproc();
2553 * objects-msw.c (mswindows_font_instance_truename): new function.
2555 * ntproc.c: remove many warnings.
2556 (_sys_read_ahead): moved from nt.c and made static.
2557 (rva_to_section): moved from unexnt.c but not defined under
2559 (win32_executable_type): implement what we can for mingw32
2561 (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
2563 * ntheap.h: remove declarations of functions that are now static.
2565 * ntheap.c: support static heap.
2567 * nt.h: conditionalise X_OK definition.
2569 * nt.c: eliminate many warnings and support mingw32.
2570 (open_input_file): function moved from unexnt.c and made static
2571 (close_file_data): ditto.
2572 (_sys_read_ahead): moved to ntproc.c
2574 * emacs.c: make sure syms_of_ntptroc gets called under windows.
2576 * console-msw.h: support mingw32.
2577 * getloadavg.c: ditto.
2584 * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
2585 some systems don't have all of the encapsulated system calls.
2587 * callproc.c: warning elimination.
2588 * dired-msw.c: ditto.
2589 * process-nt.c: ditto.
2590 * realpath.c: ditto.
2592 * Makefile.in.in: tweak : and ; for building under mswindows.
2594 1999-04-26 Michael Harnois <mharnois@willinet.net>
2596 * eldap.c (allocate_ldap): Adapt to the new semantics of
2597 alloc_lcrecord_type().
2599 1999-03-16 MORIOKA Tomohiko <tomo@etl.go.jp>
2601 * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
2603 1998-09-04 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2605 * Delete mule-coding.c and mule-coding.h because they are not
2608 1999-04-22 Gunnar Evermann <ge204@eng.cam.ac.uk>
2610 * objects.c (print_font_instance): Check for NILP(f->device),
2611 i.e. Vthe_null_font_instance.
2612 (font_instance_truename_internal): ditto.
2613 (Ffont_instance_properties): ditto.
2615 1999-04-22 Olivier Galibert <galibert@pobox.com>
2617 * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
2620 1999-04-22 Hrvoje Niksic <hniksic@srce.hr>
2622 * Makefile.in.in (tests): Don't mention tests explicitly -- makes
2623 it easier to add new ones.
2625 1999-04-22 Hrvoje Niksic <hniksic@srce.hr>
2627 * symbols.c (reject_constant_symbols): Ditto.
2628 (init_symbols_once_early): Ditto.
2630 * print.c (print_symbol): Don't use ->obarray.
2632 * symbols.c (Funintern): Ditto.
2634 * alloc.c (Fmake_symbol): Don't set ->obarray.
2636 * lisp.h (struct Lisp_Symbol): Removed .obarray field.
2638 * symbols.c (init_symbols_once_early): Removed
2639 Vpure_uninterned_symbol_table.
2640 (Fintern): Don't store to ->obarray field.
2642 1999-04-22 Hrvoje Niksic <hniksic@srce.hr>
2644 * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
2645 (eq_with_ebola_notice): Remove abracadabra support.
2647 1999-04-11 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
2649 * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
2650 retrieve the distinguished names of entries
2652 1999-03-08 Martin Buchholz <martin@xemacs.org>
2654 * lread.c (read_escape): Make hex escapes read only two hex digits.
2656 1999-04-05 Olivier Galibert <galibert@pobox.com>
2658 * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
2659 * make-src-depend: Remove puresize-adjust.h.
2660 * src-headers: Remove puresize-adjust.h.
2661 * config.h.in: Kill everything purespace/gung-ho related.
2663 * dbxrc: Make gung-ho mandatory.
2666 * lrecord.h: Make gung-ho mandatory. Remove pure flag and add
2667 c_readonly and lisp_readonly. Remove implementation arrays.
2668 (C_READONLY_RECORD_HEADER_P): Added.
2669 (LISP_READONLY_RECORD_HEADER_P): Added.
2670 (SET_C_READONLY_RECORD_HEADER): Added.
2671 (SET_LISP_READONLY_RECORD_HEADER): Added.
2673 * lisp.h: Kill everything purespace/non gung-ho related.
2674 (CHECK_C_WRITEABLE): Added.
2675 (CHECK_LISP_WRITEABLE): Added.
2676 (C_READONLY): Added.
2677 (LISP_READONLY): Added.
2679 * lisp-union.h: Make gung-ho mandatory.
2680 * lisp-disunion.h: Ditto.
2682 * alloc.c: Kill everything purespace/non gung-ho related. Fix all
2683 set_lheader_implementation calls.
2684 (c_readonly): Added.
2685 (lisp_readonly): Added.
2686 (make_string_nocopy): Added.
2687 (Fpurecopy): Changed to do nothing. Kept the old documentation
2688 for reference purposes for the next patches.
2689 (sweep_lcrecords_1): Don't free C readonly lcrecords.
2690 (sweep_bit_vectors_1): Don't free C readonly bitvectors.
2691 (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
2693 * fns.c: Make gung-ho mandatory.
2694 (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
2696 (Ffillarray): Ditto.
2698 * data.c: Make gung-ho mandatory.
2699 (pure_write_error): Removed.
2700 (c_write_error): Added.
2701 (lisp_write_error): Added.
2702 (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
2706 * symbols.c: Make gung-ho mandatory. make_pure_pname ->
2707 make_string or make_string_nocopy. Fix various
2708 alloc_lcrecord_type.
2710 * lread.c: Remove everything purespace related.
2711 (Flocate_file_clear_hashing): purified -> c_readonly.
2712 (locate_file): Ditto.
2713 (read_atom): make_pure_pname -> make_string.
2715 * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
2717 (Fdump_emacs): Ditto.
2719 * print.c (print_internal): Make gung-ho mandatory.
2720 * ntheap.c (sbrk): Ditto.
2721 * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
2722 * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
2724 * sheap.c (more_static_core): Remove puresize-adjust.h from
2727 * syntax.c (complex_vars_of_syntax): make_pure_string ->
2729 * keymap.c (make_keymap): Fix alloc_lcrecord_type.
2730 (vars_of_keymap): make_pure_string -> make_string_nocopy.
2731 * events.c (deinitialize_event): Fix set_lheader_implementation.
2732 (zero_event): Ditto.
2733 * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
2734 * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
2735 * mule-charset.c (make_charset): Ditto.
2736 * console.c (allocate_console): Ditto.
2737 (complex_vars_of_console): Ditto.
2738 * file-coding.c (allocate_coding_system): Ditto.
2739 * device.c (allocate_device): Ditto
2740 * gui-x.c (gcpro_popup_callbacks): Ditto.
2741 * extents.c (allocate_extent_auxiliary): Ditto.
2742 (allocate_extent_info): Ditto.
2743 (copy_extent): Ditto.
2744 * glyphs.c (allocate_image_instance): Ditto.
2745 (allocate_glyph): Ditto.
2746 * frame.c (allocate_frame_core): Ditto.
2747 * database.c (allocate_database): Ditto.
2748 * tooltalk.c (make_tooltalk_message): Ditto.
2749 (make_tooltalk_pattern): Ditto.
2750 * rangetab.c (Fmake_range_table): Ditto.
2751 (Fcopy_range_table): Ditto.
2752 * process.c (make_process_internal): Ditto.
2753 * chartab.c (Fmake_char_table): Ditto.
2754 (make_char_table_entry): Ditto.
2755 (copy_char_table_entry): Ditto.
2756 (Fcopy_char_table): Ditto.
2757 * elhash.c (make_general_lisp_hash_table): Ditto.
2758 (Fcopy_hash_table): Ditto.
2759 * buffer.c (allocate_buffer): Ditto.
2760 (complex_vars_of_buffer): Ditto.
2761 * event-stream.c (allocate_command_builder): Ditto.
2762 * objects.c (Fmake_color_instance): Ditto.
2763 (Fmake_font_instance): Ditto.
2764 (vars_of_objects): Ditto.
2765 * toolbar.c (update_toolbar_button): Ditto.
2766 * window.c (allocate_window): Ditto.
2767 (make_dummy_parent): Ditto.
2768 (Fcurrent_window_configuration): Fix alloc_lcrecord.
2769 (vars_of_window): Fix make_lcrecord_list.
2770 * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
2772 * lstream.c (Lstream_new): Fix make_lcrecord_list.
2773 * opaque.c (make_opaque): Fix alloc_lrecord.
2774 (make_opaque_list): Fix alloc_lrecord_type.
2776 1999-04-19 Hrvoje Niksic <hniksic@srce.hr>
2778 * process.c (Fstart_process_internal): Ditto.
2780 * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
2783 * glyphs-x.c (x_locate_pixmap_file): Ditto.
2785 * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
2788 * emodules.c (vars_of_module): New variable Vmodule_extensions.
2789 (emodules_load): Use it when calling locate_file().
2791 * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
2794 * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
2795 (vars_of_callproc): Initialize it.
2796 (Fcall_process_internal): Use it when calling locate_file().
2798 * alloc.c (disksave_object_finalization): Use
2799 Flocate_file_clear_hashing().
2801 * lread.c (Flocate_file_clear_hashing): Clear all hasing when
2802 given `t' as argument.
2804 1999-04-18 Hrvoje Niksic <hniksic@srce.hr>
2806 * lread.c (locate_file): Expand `pathel' when appropriate.
2807 (Flocate_file_clear_hashing): Expand path elements.
2808 (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
2810 * dired.c (make_directory_hash_table): Create the hash-table only
2811 if the directory open is successful.
2813 * lread.c (decode_mode_1): New function.
2814 (decode_mode): Ditto.
2815 (Flocate_file): Use them.
2816 (Flocate_file): Expand FILENAME.
2817 (locate_file_map_suffixes): New function.
2818 (locate_file_in_directory_mapper): New function.
2819 (locate_file_in_directory): Use locate_file_in_directory_mapper()
2820 and locate_file_map_suffixes().
2821 (locate_file_construct_suffixed_files): Use
2822 locate_file_map_suffixes().
2823 (locate_file_without_hash): Don't GCPRO path.
2824 (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
2825 (syms_of_lread): Remove Qlocate_file_hash_table.
2826 (locate_file_find_directory_hash_table): Use
2827 Vlocate_file_hash_table.
2828 (locate_file_refresh_hashing): Ditto.
2830 * lread.c: Renamed read_objects to Vread_objects.
2832 1999-04-16 Olivier Galibert <galibert@pobox.com>
2834 * mule-charset.c: Generally resync with fsf 20.3 charset
2836 (make_charset): Add long and short name. Use id instead of
2838 (Fmake_charset): Ditto.
2839 (Fmake_reverse_direction_charset): Ditto.
2840 (Fcharset_property): Ditto.
2841 (Fcharset_short_name): Added.
2842 (Fcharset_long_name): Added.
2843 (Fcharset_description): Renamed from charset-doc-string.
2844 (syms_of_mule_charset): Synced symbols.
2845 (complex_vars_of_mule_charset): Synced charsets.
2847 * mule-charset.h: Removed leading byte (uses id instead), added
2848 short and long name.
2850 1999-04-15 Hrvoje Niksic <hniksic@srce.hr>
2852 * file-coding.c (Fdefine_coding_system_alias): New function.
2854 1999-04-08 Olivier Galibert <galibert@pobox.com>
2856 * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
2857 and -ascii fonts for displaying ascii instead of iso8859-1 only.
2859 1998-12-14 Hrvoje Niksic <hniksic@srce.hr>
2861 * extents.c (set_extent_glyph_1): Make sure that the glyph we
2862 attach to the extent is valid.
2864 1998-12-12 Hrvoje Niksic <hniksic@srce.hr>
2866 * dired.c (user_name_completion): Mule-ize.
2867 (user_name_completion): Use xmalloc/xrealloc/xfree.
2868 (user_name_completion): Use DO_REALLOC.
2869 (user_name_completion): Cut down the number of static variables;
2871 (user_name_completion): Username completion is always
2874 1998-12-06 Hrvoje Niksic <hniksic@srce.hr>
2876 * fns.c (base64_decode_1): Remove COUNTER.
2877 (base64_decode_1): Accept CRLF in addition to CR.
2878 (base64_decode_1): Disallow a stray character after final EOF; the
2879 check was probably a remnant of buggy recode code.
2881 1998-12-05 Hrvoje Niksic <hniksic@srce.hr>
2883 * fns.c (init_provide_once): Provide `base64'.
2885 1998-12-04 Hrvoje Niksic <hniksic@srce.hr>
2887 * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
2888 (Fbase64_encode_region): If buffer is read-only, bail out early.
2889 (Fbase64_decode_region): Ditto.
2890 (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
2892 (Fbase64_encode_string): Ditto.
2893 (Fbase64_decode_region): Ditto.
2894 (Fbase64_decode_string): Ditto.
2896 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
2898 * dired.c (Fdirectory_files): Remove redundant code.
2900 1999-03-05 Philip Aston <philipa@parallax.co.uk>
2902 * frame-msw.c Make raise-frame restore minimised windows.
2904 1999-03-05 Philip Aston <philipa@parallax.co.uk>
2906 * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
2909 1999-03-05 Philip Aston <philipa@parallax.co.uk>
2911 * toolbar-msw.c Consider captions when deciding whether to rebuild
2912 toolbar. This fixes the initial toolbar display for those of us
2913 who don't like captions. These patches applied by Andy Piper.
2915 1999-03-12 XEmacs Build Bot <builds@cvs.xemacs.org>
2917 * XEmacs 21.2.13 is released
2919 1999-03-12 SL Baur <steve@xemacs.org>
2921 * file-coding.c: Guard ucs table initialization with ifdef MULE.
2923 1999-03-10 Stephen J. Turnbull <turnbull@sk.tsukuba.ac.jp>
2925 * file-coding.c: docstring and comment improvements.
2926 (decode_ucs4) flag possible data loss with comment.
2928 1999-03-10 Martin Buchholz <martin@xemacs.org>
2930 * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
2934 (decode_coding_ucs4):
2935 (encode_coding_ucs4):
2936 (detect_coding_utf8):
2937 (decode_coding_utf8):
2939 (encode_coding_utf8):
2940 Add CHECK_* macros where needed to avoid crashes.
2941 #ifdef out all composite character support using
2942 #ifdef ENABLE_COMPOSITE_CHARS
2943 Use normal XEmacs coding standards.
2945 Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
2947 1998-09-08 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2949 * file-coding.c (make-coding-system): Add description about
2950 `ucs-4' and `utf-8'.
2951 (detection_state): Modify to implement ucs-4 and utf-8.
2952 (detect_coding_type): Likewise.
2953 (detect_coding_ucs4): New implementation.
2954 (detect_coding_utf8): New implementation.
2955 (encode_utf8): fixed.
2956 (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
2959 1998-09-08 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2961 * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
2962 2022 registry to private area.
2964 1998-09-07 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2966 * file-coding.c (encode_utf8): New function.
2967 (encode_coding_utf8): New implementation.
2969 1998-09-07 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2971 * file-coding.c (ucs_to_mule_table): New variable; abolish
2972 `Vucs_to_mule_table'
2973 (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
2974 (set-ucs-char): New function.
2975 (ucs_to_char): New function.
2976 (ucs-char): New function.
2977 (set-char-ucs): New function.
2978 (char-ucs): New function.
2979 (decode_ucs4): Use `ucs_to_char'.
2980 (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
2981 `mule-to-ucs-table'.
2983 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2985 * chartab.h: EXFUN `Fget_char_table'.
2987 * file-coding.c (encode_ucs4): New function.
2988 (encode_coding_ucs4): Use `encode_ucs4'.
2990 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2992 * file-coding.c (decode_coding_ucs4): New implementation.
2994 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
2996 * file-coding.c (decode_coding_ucs4): fixed.
2998 * file-coding.c (Vmule_to_ucs_table): New variable.
2999 (mule_char_to_ucs4): New function.
3000 (encode_coding_ucs4): New implementation.
3001 (complex_vars_of_mule_coding): Define variable
3002 `mule-to-ucs-table'.
3004 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
3006 * file-coding.c (decode_coding_utf8): New implementation.
3008 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
3010 * file-coding.c (decode_coding_utf8): fixed.
3012 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
3014 * file-coding.c (Vucs_to_mule_table): New variable.
3015 (decode_ucs4): Refer `Vucs_to_mule_table'.
3016 (complex_vars_of_mule_coding): Define variable
3017 `ucs-to-mule-table'.
3019 1998-09-04 MORIOKA Tomohiko <morioka@jaist.ac.jp>
3021 * file-coding.c (detect_coding_ucs4): New function (not
3023 (decode_coding_ucs4): New function.
3024 (encode_coding_ucs4): New function (not implemented yet).
3025 (detect_coding_utf8): New function (not implemented yet).
3026 (decode_coding_utf8): New function.
3027 (encode_coding_utf8): New function (not implemented yet).
3028 (make-coding-system): New type `ucs4' and `utf8'.
3029 (coding-system-type): Likewise.
3030 (detection_state): Add `ucs4' and `utf8'.
3031 (detect_coding_type): Likewise.
3032 (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
3033 (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
3034 (decode_ucs4): New function (very incomplete).
3035 (syms_of_mule_coding): Add `ucs4' and `utf8'.
3037 * file-coding.h: Add definitions for UCS-4 and UTF-8.
3039 1999-03-08 Martin Buchholz <martin@xemacs.org>
3042 (non_ascii_valid_char_p):
3043 (lookup_composite_char):
3044 (composite_char_string):
3045 (make-composite-char):
3046 (composite-char-string):
3047 (syms_of_mule_charset):
3048 (complex_vars_of_mule_charset):
3049 * mule-charset.h (LEADING_BYTE_COMPOSITE):
3050 (CHAR_LEADING_BYTE):
3052 * file-coding.h (CODING_STATE_COMPOSITE):
3053 (CODING_STATE_ISO2022_LOCK):
3055 (LEADING_BYTE_COMPOSITE):
3056 * file-coding.c (struct iso2022_decoder):
3059 (parse_iso2022_esc):
3060 (encode_coding_iso2022):
3061 #ifdef out all composite character support using
3062 #ifdef ENABLE_COMPOSITE_CHARS
3064 * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
3066 1999-03-04 Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
3068 * fns.c (Fbase64_encode_string): Calculate `allength' in the same
3069 way of `Fbase64_encode_region'.
3071 1999-02-18 Katsumi Yamaoka <yamaoka@jpl.org>
3073 * fns.c (base64_encode_1): Don't add a newline at the tail.
3075 1999-03-08 Andy Piper <andy@xemacs.org>
3077 * menubar-msw.c (displayable_menu_item): correct off-by-one &
3080 1999-03-07 Martin Buchholz <martin@xemacs.org>
3082 * console-stream.h (struct stream_console):
3083 * event-unixoid.c (event_stream_unixoid_select_console):
3084 (event_stream_unixoid_unselect_console):
3085 * print.c (Fexternal_debugging_output):
3086 * sysdep.c (reset_one_device):
3087 * console-stream.c (stream_init_console):
3088 (stream_delete_console):
3089 (allocate_stream_console_struct): move into stream_init_console.
3090 (free_stream_console_struct): move into stream_delete_console.
3091 Use `fd' only for file descriptors.
3092 Therefore, rename members of struct stream_console.
3094 * systime.h: Unix98 says sys/time.h should define select(), but
3095 some systems define that in unistd.h. So include that file always.
3097 * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'. Avoid
3098 multiple evaluation of first arg. Do proper do {} while (0) wrapping.
3099 (HAS_IIFORMAT_METH_P): Prevent macro from being used in
3101 (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
3105 Add #include <stdio.h>.
3106 Some versions of assert.h use printf() without #include'ing stdio.h
3108 * free-hook.c (blocktype): Add gcpro5_type to blocktype.
3109 (log_gcpro): Remove unused variable FRAME.
3110 (show_gcprohist): Ansify.
3111 Comment the #endif's
3113 * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
3114 after it's just been XtDestroy'ed!
3116 1999-02-18 Martin Buchholz <martin@xemacs.org>
3118 * opaque.c (print_opaque):
3122 Egcs 1.1.1 seems to have a bug where
3123 INTP (p->size_or_chain)
3124 will crash XEmacs. Fix by introducing intermediate variable.
3126 * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
3128 * dired.c (Fdirectory_files):
3129 (Ffile_name_completion):
3130 (Ffile_name_all_completions):
3131 (file_name_completion):
3132 - Use `directory' instead of `dirname' to sync with FSF Emacs and
3133 avoid compiler warnings.
3134 - Fix up docstrings so that C variables match documentation.
3136 1999-03-05 Martin Buchholz <martin@xemacs.org>
3138 * alloc.c: (garbage_collect_1): Reorg code to make scope of local
3139 variables as small as possible to help out the compiler and the maintainer.
3141 * alloc.c: (disksave_object_finalization):
3142 Set all the *-load-path variables to
3143 nil, not just load-path itself. This gets the locate-file hash
3144 tables garbage collected BEFORE dump, and has the side effect of
3145 preventing crashes on OSF4.0+egcs.
3150 - Clean up gdb/dbx debugging support.
3151 - Storing an EMACS_INT in an enum is not 64-bit clean!
3152 - So change the enum to a set of separate variables.
3153 - Add test cases to help debug the debugging support!
3154 - Add `lisp-shadows' and `run-temacs' targets for dbx.
3155 - Both dbx and gdb have been tested now.
3157 1999-03-05 XEmacs Build Bot <builds@cvs.xemacs.org>
3159 * XEmacs 21.2.12 is released
3161 1999-02-16 Kazuyuki IENAGA <ienaga@jsys.co.jp>
3163 * device-x.c: Support to find best visual without flashing.
3165 1999-03-02 Paul Keusemann <pkeusem@visi.com>
3167 * database.c (berkdb_map): Add flags argument to cursor call (must
3168 be 0 according to docs) required for Berkeley DB 2.6.4 and later.
3170 1999-03-03 Martin Buchholz <martin@xemacs.org>
3174 General cleanup. Get free-hook.c working again.
3175 Remove unused functions:
3176 make_strings_hash_table, copy_hash, expand_hash_table.
3180 Always use new ANSI-style function prototypes.
3182 * unexalpha.c (unexec): Never use implicit int.
3184 * sgiplay.c (close_sound_file):
3186 (restore_audio_port):
3191 (write_mulaw_8_chunk):
3192 (write_linear_chunk):
3193 (write_linear_32_chunk):
3194 (initialize_audio_port):
3197 (set_output_format):
3198 (adjust_audio_volume):
3199 (get_current_volumes):
3201 Always use new ANSI-style function prototypes.
3202 Use unistd.h for missing prototypes.
3204 * unexelfsgi.c (round_up):
3206 (unexec): Always use new ANSI-style function prototypes
3208 * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
3210 * console.h (struct console_methods): Always use full ANSI prototypes
3212 * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
3214 1999-03-02 Andy Piper <andy@xemacs.org>
3216 * event-stream.c (init_event_stream): make sure native mswindows
3217 gets an appropriate event loop.
3219 1999-02-22 Andy Piper <andy@xemacs.org>
3221 * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
3222 than SW_SHOWNORMAL to prevent resizing of maximised frames.
3223 (mswindows_raise_frame): remove comment.
3225 1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org>
3227 * XEmacs 21.2.11 is released
3229 1999-02-25 SL Baur <steve@xemacs.org>
3231 * mule-charset.c (Qleading_byte): New variable to implement
3232 charset-leading-byte function.
3233 (Fcharset_property): Use it.
3234 (syms_of_mule_charset): Initialize it.
3235 From Kazuyuki IENAGA <ienaga@jsys.co.jp>
3237 1999-02-17 Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
3239 * glyphs-x.c (cononvert_EImage_to_XImage): correct
3240 bytes per pixel counting.
3242 1999-02-15 Andy Piper <andy@xemacs.org>
3244 * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
3247 1999-02-16 MORIOKA Tomohiko <morioka@jaist.ac.jp>
3249 * fns.c (Fbase64_encode_string): New optional argument
3252 1999-02-16 Martin Buchholz <martin@xemacs.org>
3254 * gdbinit: Fix up commands to run temacs. Add lisp-shadows command.
3255 * alloc.c (xcalloc): undef xcalloc, just like xmalloc
3257 1999-02-10 Martin Buchholz <martin@xemacs.org>
3259 * s/bsdos4.h: New file. Port to BSDI BSD/OS 4.0.
3260 * xintrinsic.h: Redo CONST support for X11 R4 compatibility.
3262 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org>
3264 * XEmacs 21.2.10 is released
3266 1999-02-02 Gleb Arshinov <gleb@cs.stanford.edu>
3268 * process-nt.c (nt_send_process):
3269 Fix for process-send-region/process-send-string breaking when size
3270 of the input > 128 chars: change maximum chunk size for process
3271 stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
3274 1999-02-02 XEmacs Build Bot <builds@cvs.xemacs.org>
3276 * XEmacs 21.2.9 is released
3278 1999-01-30 Martin Buchholz <martin@xemacs.org>
3280 * bytecode.c (funcall_compiled_function): Call
3281 UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
3283 * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
3284 #ifdef 0 out unused macro.
3286 1999-01-27 Martin Buchholz <martin@xemacs.org>
3288 * gui.c (gui_parse_item_keywords_internal): Make static.
3290 1999-01-21 Andy Piper <andy@xemacs.org>
3292 * glyphs-msw.c: add xface support.
3293 (mswindows_xface_instantiate): new function copied from glyphs-x.c
3294 (image_instantiator_format_create_glyphs_mswindows): do device
3295 specific initialisation for xfaces.
3296 (xbm_create_bitmap_from_data): line data must be padded to a word
3299 * glyphs-x.c (xface_validate): moved to glyphs.c
3300 (xface_normalize): ditto.
3301 (xface_possible_dest_types): ditto.
3302 (image_instantiator_format_create_glyphs_x): do device specific
3303 initialisation for xfaces.
3305 * glyphs.h: declare xface symbol.
3307 * glyphs.c: move generic xface support here.
3308 (xface_validate): moved from glyphs-x.c
3309 (xface_normalize): ditto.
3310 (xface_possible_dest_types): ditto.
3311 (image_instantiator_format_create): xface declarations moved from
3314 1999-01-14 Adrian Aichner <aichner@ecf.teradyne.com>
3316 * event-stream.c (vars_of_event_stream): Fixing documentation.
3318 1999-01-17 Gunnar Evermann <ge204@eng.cam.ac.uk>
3320 * glyphs-eimage.c (gif_instantiate): Correct handling of
3321 interlaced gifs to avoid writing past the end of the eimage
3324 1999-01-13 Hrvoje Niksic <hniksic@srce.hr>
3326 * search.c (Freplace_match): Handle single backslash at end of
3329 1999-01-12 William M. Perry <wmperry@aventail.com>
3331 * eldap.c (Fldap_open): slow down interrupts around ldap_open to
3332 avoid connection errors.
3334 1999-01-12 Andy Piper <andy@xemacs.org>
3336 * redisplay-output.c (redisplay_update_line): backout change that
3337 shouldn't have gone ine.
3339 1999-01-09 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
3341 * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
3342 collide with ldap.el
3344 1999-01-11 Andy Piper <andy@xemacs.org>
3346 * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
3347 (DISPLAY_LINE_YPOS): new macro.
3349 * redisplay-msw.c (mswindows_output_string): use it.
3350 (mswindows_output_pixmap): ditto.
3351 (mswindows_output_display_block): ditto.
3353 * redisplay-output.c (redisplay_output_display_block): new
3354 function. just call the devmeth, maybe insert some generic code
3356 (compare_display_blocks): use it.
3357 (output_display_line): ditto.
3358 (redisplay_unmap_subwindows_maybe): new function. potentially
3359 unmap subwindows in the given area.
3361 * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
3364 1999-01-10 J. Kean Johnston <jkj@sco.com>
3366 * Makefile.in.in: Set value of moduledir
3367 - Changed DUMPENV to include $(MODULEPATH)
3368 - Added install rule to install header files for use by ellcc.
3370 * config.h.in: Added INHIBIT_SITE_MODULES
3371 - Added HAVE__DLERROR
3372 - Added HAVE_DLFCN_H
3373 - Added DLSYM_NEEDS_UNDERSCORE
3377 * emodules.c: New file containing dynamic loading code.
3379 * emodules.h: New file.
3381 * emacs.c: Added variables Vmodule_directory,
3382 Vsite_module_directory, Vconfigure_module_directory and
3383 Vconfigure_site_module_directory.
3384 - (main_1): Added new variable inhibit_site_modules and command
3385 line options `-no-site-modules' and `--no-site-modules'.
3386 - (main_1): Call syms_of_module() instead of syms_of_dll().
3387 - (main_1): Call vars_of_module().
3388 - (vars_of_emacs): Introduce inhibit-site-modules,
3389 module-directory, configure-module-directory,
3390 site-module-directory, and configure-site-module-directory to the
3393 * lisp.h: Declare load_module and list_modules, as well as
3394 Vmodule_directory, Vsite_module_directory,
3395 Vconfigure_module_directory and Vconfigure_site_module_directory.
3397 * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
3398 - Added correct support for site-lisp directory.
3400 * symbols.c (defsubr): Modified to allow modules to add new subrs
3402 - (defsubr_macro): Same.
3403 - (defvar_magick): Only use purespace when not initialized, so
3404 that loaded modules can still add symbols.
3406 * symsinit.h: Add definitions for syms_of_module(),
3407 vars_of_module(). Removed syms_of_dll().
3409 * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
3410 - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
3411 - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
3413 * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
3414 explicitly pass -belf for native cc.
3416 * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
3417 hard-coding the library name.
3419 1999-01-01 <martin@xemacs.org>
3421 * device-x.c (Fx_set_font_path):
3422 Add proper cast to permit compilation under C++.
3424 * buffer.c (directory_is_current_directory):
3425 Add proper casts to permit compilation under C++.
3427 1998-12-30 Damon Lipparelli <lipp@primus.com>
3429 * event-msw.c (mswindows_wnd_proc):
3430 Fixed failure when building with MSVC 5.
3432 1998-12-29 Martin Buchholz <martin@xemacs.org>
3434 * file-coding.c (decode_coding_iso2022):
3435 - Prevent crash when decoding ISO7/Lock detected files
3436 - the usual martin fiddling
3438 1998-12-29 Jonathan Harris <jhar@tardis.ed.ac.uk>
3442 Fixed failures when building with MSVC.
3443 * unexnt.c (dump_bss_and_heap):
3444 Removed compiler warning by removing bss_data variable.
3446 1998-12-18 Jim Radford <radford@robby.caltech.edu>
3448 * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
3449 so that packages that distribute their own fonts can access them.
3451 1998-12-28 Andy Piper <andy@xemacs.org>
3453 * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
3454 that have an image provided.
3456 * glyphs.h: add Q_image decl.
3458 * glyphs-widget.c new functionality allowing images in
3460 (check_valid_glyph_or_image): new function to validate
3461 glyphs passed in through :image.
3462 (widget_normalize): new function. convert :image parameters into
3463 real glyphs if not already so.
3464 (widget_instantiate_1): mess with size parameters to be similar to
3466 (syms_of_glyphs_widget): new keyword :image.
3467 (image_instantiator_format_create_glyphs_widget): normalize
3468 buttons and allow :image.
3470 1998-12-27 Andy Piper <andy@xemacs.org>
3472 * frame-msw.c (mswindows_init_frame_1): warning elimination.
3474 * glyphs-widget.c (check_valid_anything): no-op function.
3475 (check_valid_callback): check callbacks in gui_items.
3476 (check_valid_symbol): as it sounds.
3477 (check_valid_string_or_vector): ditto.
3478 (widget_validate): modified for descriptors that are vectors or
3479 sequences of keyword/val pairs.
3480 (widget_instantiate_1): ditto.
3481 (image_instantiator_format_create_glyphs_widget): allow gui_item
3482 keywords in the instantiator.
3484 * gui.c (gui_parse_item_keywords_internal): renamed from
3485 gui_parse_item_keywords but taking error behaviour.
3486 (gui_parse_item_keywords): use it.
3487 (gui_parse_item_keywords_no_errors): ditto.
3488 (gui_item_add_keyval_pair): add Error_behavior flag and only
3489 signal invalid keywords if required.
3491 * gui.h: new gui signatures.
3493 * menubar.c (menu_parse_submenu_keywords): use new
3494 gui_item_add_keyval_pair signature.
3496 * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
3498 1998-12-28 Martin Buchholz <martin@xemacs.org>
3500 * XEmacs 21.2.8 is released.
3502 1998-12-28 Martin Buchholz <martin@xemacs.org>
3504 * editfns.c (get_home_directory):
3505 (user-home-directory): Simplify.
3508 * callproc.c (child_setup):
3509 - Environment variables were being passed to inferior processes
3510 using internal encoding.
3511 - Convert to external encoding.
3512 - Rename local var `tem' to better name `tail'.
3513 - Use Flength instead of `manual' calculation.
3515 * buffer.c (kill-buffer):
3517 (set-buffer-major-mode):
3519 - Fix up parameter names to correspond to docstrings.
3520 - Don't use `bufname' when a buffer will do as well.
3521 - Remove one unneeded GCPRO.
3523 * buffer.h (initial_directory):
3524 * buffer.c (init_initial_directory):
3525 - use correct conversions between internal and external format.
3526 (directory_is_current_directory): new function
3527 (init_buffer): convert initial_directory to internal format.
3528 - solve crashes when current working directory is non-ASCII.
3530 * alloc.c (xmalloc):
3533 - remove stupid casts, since XEmacs requires an ANSI C system.
3534 (lrecord_type_index): replace abort() with more readable assert().
3536 (reset_lcrecord_stats): remove.
3537 (sweep_lcrecords_1):
3538 - replace call to reset_lcrecord_stats() with call to xzero().
3540 1998-12-27 Martin Buchholz <martin@xemacs.org>
3542 * process-unix.c (unix_create_process):
3543 - Fix crash invoking program with non-ASCII name.
3544 Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
3545 - Remove unused variable `env'.
3546 - Rename `temp' to better name `save_errno'.
3547 - Reorganize code for clarity. But still too chicken to nuke the
3550 1998-12-24 Martin Buchholz <martin@xemacs.org>
3552 * XEmacs 21.2.7 is released.
3554 1998-12-23 Martin Buchholz <martin@xemacs.org>
3556 * glyphs.c (decode_device_ii_format):
3558 - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
3560 * glyphs-x.c (x_subwindow_instantiate):
3561 - A image instance mask was being assigned to a image instance type!
3562 - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
3564 * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
3566 * glyphs-x.h: Make indentation consistent.
3568 * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
3570 * glyphs-widget.c (check_valid_glyph): Warning suppression.
3572 - #ifdef it out, since it's not actually used yet (FIX THIS!)
3576 Move declarations of decode_device_ii_format and
3577 decode_image_instantiator_format into glyphs.h where they belong.
3579 1998-12-22 Martin Buchholz <martin@xemacs.org>
3581 * frame-x.c (x_delete_frame): Revert part of my changes at the
3582 suggestion of Gunnar Evermann - unfortunately no one really
3583 understands this code.
3585 * callproc.c (init_callproc): code cleanup.
3587 * free-hook.c (malloc):
3592 (block_input_malloc):
3593 (block_input_realloc):
3594 * device-x.c (x_delete_device):
3595 * emacs.c (voodoo_free_hook):
3596 * events.c (print_event):
3598 (CHECK_EVENT_TYPE2):
3599 (CHECK_EVENT_TYPE3):
3600 Use proper prototypes.
3601 Make C_E_T macros a little faster.
3602 Pedantic fiddly little changes. You really don't care.
3604 1998-12-22 Andy Piper <andy@xemacs.org>
3606 * redisplay-output.c (redisplay_clear_region): make sure that
3607 fg/bg colors get set even when we are in the border area.
3609 1998-12-13 Martin Buchholz <martin@xemacs.org>
3611 * console-msw.c: Function definitions follow coding standards
3612 - This prevents e.g. find-tag on Lisp_Event finding DEVENT
3614 1998-12-11 Martin Buchholz <martin@xemacs.org>
3616 * events.h (struct timeout_data):
3617 * event-tty.c (tty_timeout_to_emacs_event):
3618 * event-msw.c (mswindows_wm_timer_callback):
3619 * event-Xt.c (Xt_timeout_to_emacs_event):
3620 * event-msw.c (mswindows_cancel_dispatch_event):
3621 Make sure Lisp_Objects inside events are initialized to Qnil, not
3622 Qnull_pointer, which is now illegal.
3624 1998-12-10 Martin Buchholz <martin@xemacs.org>
3626 * lisp.h: Fix up prototypes to match alloc.c
3628 1998-12-08 Martin Buchholz <martin@xemacs.org>
3630 * windowsnt.h: Remove `support' for using index and rindex
3632 * filelock.c (current_lock_owner):
3633 - Change uses of index -> strchr, rindex -> strrchr
3635 1998-12-07 Martin Buchholz <martin@xemacs.org>
3637 * sysdep.c (set_descriptor_non_blocking):
3638 Since O_NONBLOCK is now always #defined, make use of fcntl
3639 conditional on F_SETFL being defined.
3641 * console-msw.c (DHEADgER):
3650 - max_align_t should not be visible to the user of the
3652 - use Bufbyte instead of char
3653 - parens around (FOOP (obj)) are always redundant.
3654 If they were necessary, we should fix the macro instead.
3655 - Always use string_data(foo) instead of foo->data.
3658 1998-12-06 Martin Buchholz <martin@xemacs.org>
3660 * frame-msw.c (mswindows_init_frame_1):
3661 - use make_lisp_hash_table, not Fmake_hash_table
3665 * alloc.c (make_vector): remove travesty
3669 (make_bit_vector_internal):
3671 (make_bit_vector_from_byte_vector):
3673 - make vector_equal a little faster.
3674 - Don't use variable name `new'.
3675 - Use size_t instead of EMACS_INT.
3676 - usual Martin-style pointless bit-twiddling.
3682 Make mapcar faster. In particular, make
3683 (mapc #'identity long-string)
3684 MUCH faster under Mule.
3685 * tests/automated/lisp-tests.el: Test 'em!
3687 * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3690 1998-12-01 Martin Buchholz <martin@xemacs.org>
3692 * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
3693 Qnil, not NULL, to initialize `null' Lisp_Objects.
3695 1998-11-29 Hrvoje Niksic <hniksic@srce.hr>
3697 * specifier.c (display_table_validate): Update.
3699 * redisplay.c (create_text_block): Use them.
3701 * glyphs.c (display_table_entry): New function.
3702 (get_display_tables): Ditto.
3704 1998-12-15 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
3706 * eldap.c (toplevel): Mention that eldap.c compiles with
3708 (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
3709 (Fldap_search_internal): Ditto
3711 1998-12-11 Martin Buchholz <martin@xemacs.org>
3713 * event-msw.c (mswindows_cancel_dispatch_event):
3714 Gratuitous code prettification
3717 1998-12-07 Hrvoje Niksic <hniksic@srce.hr>
3719 * fns.c (Fnconc): Fix use of wrong_type_argument().
3721 * floatfns.c (Ffloat): Fix docstring.
3722 (Ffloat): Fix use of wrong_type_argument().
3724 (extract_float): Ditto.
3729 1998-12-06 Martin Buchholz <martin@xemacs.org>
3731 * frame-msw.c (mswindows_init_frame_1):
3732 - use make_lisp_hash_table, not Fmake_hash_table
3736 * alloc.c (make_vector): remove travesty
3740 (make_bit_vector_internal):
3742 (make_bit_vector_from_byte_vector):
3744 - make vector_equal a little faster.
3745 - Don't use variable name `new'.
3746 - Use size_t instead of EMACS_INT.
3747 - usual Martin-style pointless bit-twiddling.
3753 Make mapcar faster. In particular, make
3754 (mapc #'identity long-string)
3755 MUCH faster under Mule.
3756 * tests/automated/lisp-tests.el: Test 'em!
3758 * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3761 1998-12-02 Didier Verna <verna@inf.enst.fr>
3763 * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
3764 accelerator field to nil for labels.
3766 1998-12-16 Jonathan Harris <jhar@tardis.ed.ac.uk>
3768 * menubar-msw.c (displayable_menu_item):
3769 Escape occurrences of '&' and support occurrences of the
3770 '%_' accelerator indicator in menus.
3772 1998-11-26 Didier Verna <verna@inf.enst.fr>
3774 * dired.c (Fdirectory_files): use make_string instead of
3775 make_ext_string on the filename. The conversion external->internal
3776 format is already done in sys_readdir.
3778 1998-12-15 Gunnar Evermann <ge204@eng.cam.ac.uk>
3780 * glyphs.c (normalize_image_instantiator): GCPRO instantiator
3782 1998-12-16 Jonathan Harris <jhar@tardis.ed.ac.uk>
3785 (Belatedly) added Kirill to list of file's authors.
3786 emacs_mswindows_quit_p: Don't process WM_PAINT messages in
3787 quit checking. WM_PAINT messages cause redisplay, but
3788 windows' states are not necessarily stable when this function
3791 1998-12-17 Andy Piper <andy@xemacs.org>
3793 * strftime.c (zone_name): CONSTify.
3795 1998-12-15 Andy Piper <andy@xemacs.org>
3797 * glyphs-msw.c (mswindows_combo_instantiate): ditto.
3798 (mswindows_widget_property): return Qunbound when no property available.
3799 (mswindows_button_property): ditto.
3800 (mswindows_combo_property): ditto.
3801 (mswindows_widget_set_property): ditto.
3803 * glyphs-widget.c (check_valid_item_list): use properties.
3805 * glyphs.h (struct Lisp_Image_Instance): we have properties now.
3807 * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
3808 (Fimage_instance_property): ditto.
3809 * glyphs-widget.c (widget_property): ditto.
3810 (widget_set_property): ditto.
3812 * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
3813 as setting the class cursor so that GC actually changes the
3816 * config.h: don't undef MAIL_USE_POP.
3818 1998-12-13 Andy Piper <andy@xemacs.org>
3821 (image_instantiator_format_create_glyphs_mswindows): line ->
3823 (mswindows_label_instantiate): ditto. Play with window flags.
3824 (image_instantiator_format_create_glyphs_mswindows): ditto.
3825 (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
3827 * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
3828 cope with lines and labels.
3829 (static_instantiate): use widget_instantiate_1.
3831 (image_instantiator_format_create_glyphs_widget): ditto.
3833 1998-12-10 Andy Piper <andy@xemacs.org>
3835 * Makefile.in.in (objs): add gui.o
3837 1998-12-10 Andy Piper <andy@xemacs.org>
3839 * gui.c: adjust defines of HAVE_POPUPS so that we can build with
3842 1998-12-09 Andy Piper <andy@xemacs.org>
3844 * glyphs.c (finalize_image_instance): mark glyphs changed when an
3845 image instance is removed so that the subwindow cache gets reset
3846 and thus destroyed images get GC'd.
3848 1998-12-08 Andy Piper <andy@xemacs.org>
3850 * gui-msw.c (mswindows_handle_gui_wm_command): call
3851 MARK_SUBWINDOWS_CHANGED.
3853 * glyphs-msw.c (mswindows_finalize_image_instance): make sure
3854 subwindows really get deleted.
3856 * redisplay.c: new variable subwindows_changed[_set].
3857 (redisplay_window): use it.
3858 (redisplay_frame): ditto.
3859 (redisplay_device): ditto.
3860 (redisplay_without_hooks): ditto.
3862 * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
3863 subwindows redisplay as per glyphs equivalent.
3864 * redisplay.h: ditto.
3865 (MARK_SUBWINDOWS_CHANGED): ditto.
3866 (RESET_CHANGED_SET_FLAGS): ditto.
3867 * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
3869 1998-12-07 Andy Piper <andy@xemacs.org>
3871 * frame.c (Fmake_frame): reset subwindow cachels on non-stream
3874 * redisplay.c (redisplay_frame): invalidate subwindow cachels.
3876 * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
3877 messages and paint widget glyphs as appropriate with their face fg
3880 1998-12-06 Andy Piper <andy@xemacs.org>
3882 * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
3883 here rather than in glyphs-widget - do this because we only want
3884 to provide what is really available.
3886 * glyphs.c (Fimage_instance_property): new function to get the
3887 properties of image instances. wires through to console specific
3888 methods and then to widget specific methods.
3889 (Fset_image_instance_property): ditto but for setting widget properties.
3890 (check_valid_face): make extern so that it can be used elsewhere.
3892 * glyphs-widget.c (widget_property): new function. gets the
3893 properties of widgets in general and wires the function through to
3894 widget specific ones.
3895 (widget_set_property): ditto but for setting widget properties.
3897 * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
3898 add items to the list. Play with window styles a bit to get the
3900 (mswindows_widget_property): break out specific widget properties.
3901 (mswindows_button_property): new function. gets the checked state
3903 (mswindows_combo_property): new function. gets the current
3904 selection in the combo box.
3905 (mswindows_widget_set_property): new function. sets specific
3906 properties of specific widgets.
3908 * glyphs-widget.c (check_valid_item_list): new function. check
3909 that items for a combo-box are just a list of strings.
3910 (combo_validate): new function. check there is an item list.
3911 (widget_instantiate_1): new function. renamed from
3912 widget_instantiate so that we can do slightly different things for
3914 (widget_instantiate): call widget_instantiate_1.
3915 (combo_instantiate): new function to instantiate combo boxes,
3916 defaults height to the pixel height of the number of items in the
3918 (syms_of_glyphs_widget): move widget keywords here.
3919 (image_instantiator_format_create_glyphs_widget): use new combo
3922 1998-12-04 Andy Piper <andy@xemacs.org>
3924 * event-msw.c (mswindows_wnd_proc): mule-ize.
3926 * glyphs.c (pixmap_to_lisp_data): mule-ize.
3928 * glyphs-msw.c (extract_xpm_color_names): mule-ize.
3929 (resource_name_to_resource): ditto.
3930 (mswindows_resource_instantiate): ditto.
3931 (mswindows_widget_instantiate): ditto.
3932 (mswindows_widget_set_property): ditto.
3934 * redisplay-output.c (redisplay_output_subwindow): don't show
3935 subwindows if they are obscured at the edge of the frame, emacs
3936 gets into some sort of redisplay loop otherwise.
3938 * gui.h: prototype gui_item_selected_p.
3940 * gui.c (gui_item_selected_p): new function to determine the
3941 selected state of a gui_item.
3943 * frame.h (struct frame): add subwindows_changed flag.
3945 * redisplay.c (redisplay_frame): call update_frame_subwindows ().
3947 * glyphs.c (update_subwindow): new function to update a
3949 (update_frame_subwindows): new function to update all the
3950 subwindows on a frame.
3952 * console.h (struct console_methods): add update_subwindow.
3954 * glyphs-msw.c (mswindows_widget_property): return selected state
3955 for selected property.
3956 (mswindows_update_subwindow): new function. updates widget glyphs
3957 in redisplay as per menubars or toolbars e.g. selected state.
3958 (console_type_create_glyphs_mswindows): add update_subwindow.
3960 1998-12-03 Andy Piper <andy@xemacs.org>
3962 * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
3963 tty coding system things are such.
3965 * glyphs-widget.c (widget_face_font_info): new function for
3966 pulling out height and width metrics for a widget's face.
3967 (widget_text_to_pixel_conversion): calculate pixel sizes of text
3970 * event-msw.c (mswindows_drain_windows_queue): translate messages
3971 that are destined for subwindows. This makes edit fields interact
3972 with the keyboard correctly.
3973 nuke warnings by #ifndef'ing out stuff not required by msg select().
3975 * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
3976 macro defining the iiforma without the symbol required by widget.
3977 (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
3979 * general.c (syms_of_general): add Qwidget, Qselected.
3981 * faces.c (complex_vars_of_faces): add widget face inheriting from
3984 1998-11-09 Andy Piper <andy@xemacs.org>
3986 * window.h (struct window): add a cache of subwindows on a
3989 * window.c (mark_window): mark the subwindow_instance_cache.
3990 (allocate_window): initialise the subwindow instance_cache.
3992 * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
3993 instead of the devmeth.
3994 (x_clear_toolbar): ditto.
3996 * redisplay-x.c (x_output_display_block): call
3997 redisplay_output_subwindow for subwindows and widgets.
3999 * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
4000 types to do nothing for.
4002 * lisp.h: declare new widget/subwindow symbols.
4004 * glyphs.c (image_instantiate): cache subwindows on a per-window
4006 (subwindow_possible_dest_types): new function for subwindow dest
4008 (subwindow_instantiate): generic instantiation of a
4009 subwindow. specialised by device multi-methods.
4010 (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
4012 (Fimage_instance_subwindow_id): ditto.
4013 (Fresize_subwindow): ditto.
4014 (Fforce_subwindow_map): ditto.
4016 * glyphs-x.c (x_print_image_instance): remove subwindow
4017 stuff. Handled genrically in glyphs.c.
4018 (x_image_instance_equal): ditto.
4019 (x_image_instance_hash): ditto.
4020 (x_finalize_image_instance): delete subwindows when required.
4021 (mark_subwindow) (print_subwindow) (finalize_subwindow)
4022 (subwindow_hash) (Fmake_subwindow): deleted because of new,
4023 glyph-based, subwindow implementation.
4024 (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
4026 (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
4028 (x_unmap_subwindow): new function to unmap X subwindows.
4029 (x_map_subwindow): new function to map X subwindows.
4030 (x_subwindow_instantiate): new function to instantiate X
4032 (x_resize_subwindow): new function to resize X subwindows.
4033 (console_type_create_glyphs_x): add subwindow functions.
4034 (image_instantiator_format_create_glyphs_x): add device
4035 multi-methods for xpm, xbm and subwindow.
4037 * glyphs.el (subwindow-xid): old alias for new subwindow functions.
4038 (subwindow-width): ditto.
4039 (subwindow-height): ditto.
4041 * glyphs-msw.c (mswindows_widget_instantiate): new function for
4042 generally instantiating ms subwindows. Used by
4043 mswindows_*_instantiate.
4044 (mswindows_edit_instantiate): instantiate an edit field on a
4047 1998-11-04 Andy Piper <andy@xemacs.org>
4049 * symsinit.h: declare new functions.
4051 * redisplay.h: declare new functions.
4053 * redisplay-x.c (x_output_display_block): call
4054 redisplay_clear_region rather than x_clear_region.
4055 (x_output_string): ditto.
4056 (x_output_pixmap): ditto.
4057 (x_clear_to_window_end): ditto.
4058 (x_output_eol_cursor): ditto.
4059 (x_clear_region): only do X specific things. other duties handled
4060 in redisplay_clear_region.
4062 * redisplay-tty.c (tty_clear_region): do tty specific things - some
4063 duties moved to redisplay_clear_region.
4065 * redisplay-output.c (clear_left_border): use
4066 redisplay_clear_region instead of device method.
4067 (clear_right_border): ditto.
4068 (output_display_line): ditto.
4069 (redisplay_output_subwindow): ditto.
4070 (redisplay_clear_top_of_window): ditto.
4071 (redisplay_clear_region): perform duties previously handled by
4072 device methods. call the appropriate device method at the
4073 end. unmap subwindows if necessary.
4075 * redisplay-msw.c (mswindows_output_string): use
4076 redisplay_clear_region instead of mswindows_clear_region.
4077 (mswindows_clear_to_window_end): ditto.
4078 (mswindows_output_display_block): output subwindows when required.
4079 (mswindows_clear_region): only do mswindows specific things,
4080 everything else is now handled in redisplay_clear_region.
4082 * gui.h: add item id hash defines and declare function prototypes.
4084 * gui.c (mark_gui_item): new function for marking gui_items.
4085 (gui_item_hash): generic hash function for generating command ids
4088 * gui-msw.c: new file.
4089 (mswindows_handle_gui_wm_command): new function to handle widget
4092 * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
4094 (IIFORMAT_HAS_SHARED_METHOD): ditto.
4095 (DEFINE_DEVICE_IIFORMAT): ditto.
4096 (INITIALIZE_DEVICE_IIFORMAT): ditto.
4097 (struct Lisp_Image_Instance): add widget and subwindow data plus
4098 appropriate access functions.
4100 * glyphs.c (decode_device_ii_format): new function for decoding
4101 image instantiator functions based on a device type as well as an
4103 (decode_image_instantiator_format): just call
4104 decode_device_ii_format with nil device.
4105 (add_entry_to_device_ii_format_list): new function for per device
4107 (add_entry_to_image_instantiator_format_list): just call
4108 add_entry_to_device_ii_format_list with nil device.
4109 (check_valid_vector): new function.
4110 (instantiate_image_instantiator): instantiate using per-format
4111 method and then per-format-per-device method (device
4112 multi-methods). signal an error if neither is possible.
4113 (mark_image_instance): cope with subwindows and widgets.
4114 (print_image_instance): ditto.
4115 (image_instance_equal): ditto.
4116 (image_instance_hash): ditto.
4117 (allocate_glyph): ditto.
4118 (glyph_width): ditto.
4119 (glyph_height_internal): ditto.
4120 (xpm_instantiate): removed because of device multi-methods.
4121 (mark_subwindow_cachels): new cachel functions for caching
4122 instantiated subwindows on a per-frame basis. mostly copied from
4123 glyph cachel functions.
4124 (update_subwindow_cachel_data): ditto.
4125 (add_subwindow_cachel): ditto.
4126 (get_subwindow_cachel_index): ditto.
4127 (reset_subwindow_cachels): ditto.
4128 (mark_subwindow_cachels_as_not_updated): ditto.
4129 (unmap_subwindow): generic unmapping of subwindows based on cachel
4131 (map_subwindow): ditto.
4132 (initialize_subwindow_image_instance): generic initialisation of
4134 (syms_of_glyphs): add widget keywords.
4136 * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
4139 1998-11-04 Andy Piper <andy@xemacs.org>
4141 * glyphs-widget.c: new file for instantiating widget type glyphs.
4142 (widget_possible_dest_types): new general dest type function for
4144 (widget_validate): ditto.
4145 (initialize_widget_image_instance): ditto
4146 (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
4147 before handing on control to device multi-methods.
4148 (syms_of_glyphs_widget): new function.
4149 (image_instantiator_format_create_glyphs_widget): new function,
4150 added placeholders for button, edit, combo, scrollbar
4151 (vars_of_glyphs_widget): new function.
4153 * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
4154 storing window ids of widgets.
4156 * glyphs-msw.c (mswindows_finalize_image_instance): cope with
4157 deletion of widget and subwindow glyphs.
4158 (mswindows_unmap_subwindow): new device function for unmapping
4159 subwindows on a msw frame.
4160 (mswindows_map_subwindow): ditto.
4161 (mswindows_register_image_instance): register instantiated widgets
4162 with the widget hastable.
4163 (mswindows_button_instantiate): instantiate a button type widget
4165 (mswindows_subwindow_instantiate): instanttiate a subwindow on a
4167 (image_instantiator_format_create_glyphs_mswindows): add device
4168 multi-methods for xbm, xpm, subwindow, edit and button.
4170 * frame.h (struct frame): add subwindow_cachels dynarr for caching
4171 information about subwindows visible on the current frame. used by
4172 redisplay_clear_region to unmap subwindows as required.
4174 * frame.c (mark_frame): mark subwindow_cachels.
4175 (allocate_frame_core): instantiate subwindow_cachels.
4177 * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
4180 * event-msw.c (mswindows_wnd_proc): add call to
4181 mswindows_handle_gui_wm_command to handle widget callbacks.
4183 * emacs.c (main_1): add calls to glyphs-widget initialisation
4186 * console.h (struct console_methods): add
4187 unmap/map_subwindow_method for use be redisplay_clear_region to
4188 map and unmap subwindows. Remove xpm and xbm stuff - now dealt
4189 with by image instantiator multi-methods. Add
4190 resize_subwindow_method.
4192 * console-stream.c (stream_clear_region): change signature to
4193 match new generic clear region function.
4195 * Makefile.in.in: add glyphs-widget.o to list of objects.
4197 * console-msw.h (struct mswindows_frame): add widget hashtable for
4198 wiring command ids to callbacks.
4200 1998-12-16 Andy Piper <andy@xemacs.org>
4202 * XEmacs 21.2.6 is released
4204 1998-12-08 Hrvoje Niksic <hniksic@srce.hr>
4206 * md5.c (Fmd5): Correctly initiate string input stream.
4208 * Makefile.in.in (tests): Add md5-tests.el.
4210 1998-12-06 Martin Buchholz <martin@xemacs.org>
4213 * alloc.c (make_vector): remove travesty
4217 (make_bit_vector_internal):
4219 (make_bit_vector_from_byte_vector):
4221 - make vector_equal a little faster.
4222 - Don't use variable name `new'.
4223 - Use size_t instead of EMACS_INT.
4224 - usual Martin-style pointless bit-twiddling.
4230 Make mapcar faster. In particular, make
4231 (mapc #'identity long-string)
4232 MUCH faster under Mule.
4233 * tests/automated/lisp-tests.el: Test 'em!
4235 1998-12-06 Martin Buchholz <martin@xemacs.org>
4237 * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
4240 1998-12-13 Martin Buchholz <martin@xemacs.org>
4242 * console-msw.c: Function definitions follow coding standards
4243 - This prevents e.g. find-tag on Lisp_Event finding DEVENT
4245 1998-12-11 Martin Buchholz <martin@xemacs.org>
4247 * events.h (struct timeout_data):
4248 * event-tty.c (tty_timeout_to_emacs_event):
4249 * event-msw.c (mswindows_wm_timer_callback):
4250 * event-Xt.c (Xt_timeout_to_emacs_event):
4251 * event-msw.c (mswindows_cancel_dispatch_event):
4252 Make sure Lisp_Objects inside events are initialized to Qnil, not
4253 Qnull_pointer, which is now illegal.
4255 1998-12-10 Martin Buchholz <martin@xemacs.org>
4257 * lisp.h: Fix up prototypes to match alloc.c
4259 1998-12-09 Andy Piper <andy@xemacs.org>
4261 * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
4262 XSETINT for assigning lisp objects.
4264 1998-12-07 Martin Buchholz <martin@xemacs.org>
4267 * console-msw.c (DHEADER):
4276 - max_align_t should not be visible to the user of the
4278 - use Bufbyte instead of char
4279 - parens around (FOOP (obj)) are always redundant.
4280 If they were necessary, we should fix the macro instead.
4281 - Always use string_data(foo) instead of foo->data.
4283 1998-12-07 Martin Buchholz <martin@xemacs.org>
4285 * sysdep.c (set_descriptor_non_blocking):
4286 Since O_NONBLOCK is now always #defined, make use of fcntl
4287 conditional on F_SETFL being defined.
4289 1998-12-09 Andy Piper <andy@xemacs.org>
4291 * menubar-msw.c (mswindows_handle_wm_command): add back in checks
4292 that got removed in the merge
4294 1998-11-30 Greg Klanderman <greg@alphatech.com>
4296 * dired.c (vars_of_dired): bugfix for previous conditionalization
4297 of user-name-completion on non- Windows NT.
4299 1998-12-08 Martin Buchholz <martin@xemacs.org>
4301 * windowsnt.h: Remove `support' for using index and rindex
4303 * filelock.c (current_lock_owner):
4304 - Change uses of index -> strchr, rindex -> strrchr
4306 1998-12-06 Martin Buchholz <martin@xemacs.org>
4308 * frame-msw.c (mswindows_init_frame_1):
4309 - use make_lisp_hash_table, not Fmake_hash_table
4312 1998-12-05 XEmacs Build Bot <builds@cvs.xemacs.org>
4314 * XEmacs 21.2.5 is released
4316 1998-11-30 Martin Buchholz <martin@xemacs.org>
4318 * xselect.c (receive_incremental_selection):
4319 * xselect.c (x_get_window_property):
4320 * xmu.c (XmuReadBitmapDataFromFile):
4321 * xmu.c (XmuCursorNameToIndex):
4322 * xgccache.c (describe_gc_cache):
4323 * xgccache.c (gc_cache_lookup):
4324 * xgccache.c (free_gc_cache):
4325 * xgccache.c (make_gc_cache):
4327 * window.c (map_windows_1):
4328 * window.c (Fother_window_for_scrolling):
4329 * window.c (window_scroll):
4330 * window.c (change_window_height):
4331 * window.c (Fsplit_window):
4332 * window.c (window_left_gutter_width):
4333 * window.c (window_modeline_height):
4334 * window.c (invalidate_vertical_divider_cache_in_window):
4335 * window.c (window_needs_vertical_divider_1):
4336 * window.c (update_mirror_internal):
4337 * window.c (SET_LAST_FACECHANGE):
4338 * widget.c (Fwidget_plist_member):
4339 * unexec.c (copy_text_and_data):
4340 * unexcw.c (copy_executable_and_dump_data_section):
4342 * tooltalk.c (struct Lisp_Tooltalk_Pattern):
4343 * tooltalk.c (struct Lisp_Tooltalk_Message):
4344 * toolbar.h (struct toolbar_button):
4345 * toolbar.c (default_toolbar_visible_p_changed_in_window):
4346 * toolbar.c (recompute_overlaying_specifier):
4347 * toolbar.c (toolbar_validate):
4348 * toolbar.c (toolbar_button_at_pixpos):
4349 * toolbar.c (get_toolbar_coords):
4350 * toolbar.c (update_frame_toolbars):
4352 * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
4353 * toolbar-msw.c (mswindows_find_toolbar_pos):
4354 * toolbar-msw.c (mswindows_output_toolbar):
4355 * toolbar-msw.c (mswindows_clear_toolbar):
4364 * sysdep.c (sys_fopen):
4365 * sysdep.c (sys_open):
4366 * sysdep.c (tty_init_sys_modes_on_device):
4367 * sysdep.c (get_eof_char):
4368 * sysdep.c (child_setup_tty):
4369 * sysdep.c (set_descriptor_non_blocking):
4371 * syntax.c (scan_words):
4374 * symeval.h (struct symbol_value_varalias):
4375 * symeval.h (struct symbol_value_forward):
4376 * symbols.c (syms_of_symbols):
4377 * symbols.c (init_symbols_once_early):
4378 * symbols.c (Fbuilt_in_variable_type):
4379 * symbols.c (Fsymbol_value_in_buffer):
4380 * symbols.c (default_value):
4382 * symbols.c (find_symbol_value_quickly):
4383 * symbols.c (store_symval_forwarding):
4384 * symbols.c (set_default_console_slot_variable):
4385 * symbols.c (set_default_buffer_slot_variable):
4386 * symbols.c (verify_ok_for_buffer_local):
4387 * symbols.c (symbol_is_constant):
4388 * symbols.c (oblookup):
4389 * symbols.c (Funintern):
4390 * symbols.c (Fintern):
4391 * symbols.c (check_obarray):
4393 * specifier.h (struct specifier_methods):
4395 * specifier.c (specifier_instance):
4396 * specifier.c (specifier_instance_from_inst_list):
4397 * specifier.c (decode_locale_type):
4398 * specifier.c (specifier_equal):
4399 * specifier.c (finalize_specifier):
4400 * specifier.c (prune_specifiers):
4401 * specifier.c (kill_specifier_buffer_locals):
4402 * sound.c (init_native_sound):
4405 * search.c (Fmatch_data):
4406 * search.c (match_limit):
4407 * search.c (Freplace_match):
4408 * search.c (skip_chars):
4409 * search.c (scan_buffer):
4411 * scrollbar.c (specifier_vars_of_scrollbar):
4412 * scrollbar.c (Fscrollbar_set_hscroll):
4413 * scrollbar.c (vertical_scrollbar_changed_in_window):
4414 * scrollbar.c (release_window_mirror_scrollbars):
4415 * scrollbar.c (free_scrollbar_instance):
4418 * s/msdos.h (O_BINARY):
4420 * s/freebsd.h (LIBS_TERMCAP):
4421 * regex.c (re_match_2_internal):
4422 * regex.c (compile_extended_range):
4423 * regex.c (POP_FAILURE_POINT):
4424 * regex.c (PUSH_FAILURE_POINT):
4425 * redisplay.h (RESET_CHANGED_SET_FLAGS):
4427 * redisplay.h (struct display_line):
4428 * redisplay.h (struct rune):
4429 * redisplay.c (vars_of_redisplay):
4430 * redisplay.c (redisplay_variable_changed):
4431 * redisplay.c (UPDATE_CACHE_RETURN):
4432 * redisplay.c (validate_line_start_cache):
4433 * redisplay.c (mark_redisplay_structs):
4434 * redisplay.c (mark_glyph_block_dynarr):
4435 * redisplay.c (window_line_number):
4436 * redisplay.c (redisplay_frame):
4437 * redisplay.c (redisplay_window):
4438 * redisplay.c (generate_modeline):
4439 * redisplay.c (create_right_glyph_block):
4440 * redisplay.c (create_left_glyph_block):
4441 * redisplay.c (create_text_block):
4443 * redisplay-x.c (x_output_hline):
4444 * redisplay-x.c (x_output_vertical_divider):
4445 * redisplay-tty.c (tty_output_display_block):
4446 * redisplay-output.c (output_display_line):
4447 * redisplay-output.c:
4448 * redisplay-msw.c (mswindows_output_vertical_divider):
4449 * redisplay-msw.c (mswindows_ring_bell):
4450 * redisplay-msw.c (mswindows_output_cursor):
4454 * puresize.h (RAW_PURESIZE):
4455 * profile.c (syms_of_profile):
4456 * profile.c (Fstart_profiling):
4457 * profile.c (sigprof_handler):
4460 * process.c (vars_of_process):
4461 * process.c (read_process_output):
4462 * process.c (get_process):
4464 * process-unix.c (unix_open_multicast_group):
4465 * process-unix.c (unix_get_tty_name):
4466 * process-unix.c (unix_send_process):
4467 * process-unix.c (unix_reap_exited_processes):
4468 * process-unix.c (unix_create_process):
4469 * process-unix.c (unix_init_process_io_handles):
4470 * process-unix.c (allocate_pty):
4472 * process-nt.c (nt_open_network_stream):
4473 * process-nt.c (nt_update_status_if_terminated):
4474 * process-nt.c (nt_finalize_process_data):
4476 * print.c (debug_short_backtrace):
4477 * print.c (debug_backtrace):
4478 * print.c (print_symbol):
4479 * print.c (print_internal):
4480 * print.c (print_cons):
4481 * print.c (Fwrite_char):
4482 * print.c (print_prepare):
4483 * print.c (canonicalize_printcharfun):
4484 * print.c (output_string):
4487 * opaque.c (allocate_managed_opaque):
4489 * offix.c (DndSetData):
4490 * objects.c (face_boolean_create):
4491 * objects.c (font_instantiate):
4492 * objects.c (font_create):
4493 * objects.c (color_create):
4494 * objects.c (finalize_font_instance):
4495 * objects.c (finalize_color_instance):
4497 * objects-x.c (x_font_instance_truename):
4499 * objects-x.c (x_initialize_font_instance):
4500 * objects-x.c (allocate_nearest_color):
4501 * objects-tty.c (tty_initialize_font_instance):
4502 * objects-tty.c (tty_initialize_color_instance):
4503 * objects-msw.c (mswindows_initialize_color_instance):
4504 * ntproc.c (syms_of_ntproc):
4505 * ntproc.c (Fwin32_set_process_priority):
4506 * ntproc.c (sys_spawnve):
4508 * ntheap.c (get_data_end):
4512 * nt.c (generate_inode_val):
4513 * nt.c (sys_rename):
4515 * mule-wnnfns.c (Fwnn_hinsi_number):
4516 * mule-wnnfns.c (Fwnn_yuragi):
4517 * mule-wnnfns.c (Fwnn_common_learn):
4518 * mule-wnnfns.c (Fwnn_suffix_learn):
4519 * mule-wnnfns.c (Fwnn_prefix_learn):
4520 * mule-wnnfns.c (Fwnn_okuri_learn):
4521 * mule-wnnfns.c (Fwnn_complex_conv):
4522 * mule-wnnfns.c (Fwnn_last_is_first):
4523 * mule-wnnfns.c (Fwnn_bmodify_dict_add):
4524 * mule-wnnfns.c (Fwnn_notrans_dict_add):
4525 * mule-wnnfns.c (Fwnn_fiusr_dict_add):
4526 * mule-wnnfns.c (Fwnn_fisys_dict_add):
4527 * mule-wnnfns.c (Fwnn_hinsi_list):
4528 * mule-wnnfns.c (Fwnn_fuzokugo_set):
4529 * mule-wnnfns.c (Fwnn_dict_search):
4530 * mule-wnnfns.c (Fwnn_word_toroku):
4531 * mule-wnnfns.c (Fwnn_hindo_update):
4532 * mule-wnnfns.c (Fwnn_bunsetu_henkou):
4533 * mule-wnnfns.c (Fwnn_kakutei):
4534 * mule-wnnfns.c (Fwnn_begin_henkan):
4535 * mule-wnnfns.c (Fwnn_dict_comment):
4536 * mule-wnnfns.c (Fwnn_dict_add):
4537 * mule-wnnfns.c (Fwnn_open):
4538 * mule-mcpath.c (mc_getcwd):
4539 * mule-coding.c (vars_of_mule_coding):
4540 * mule-coding.c (convert_to_external_format):
4541 * mule-coding.c (encoding_marker):
4542 * mule-coding.c (decoding_marker):
4543 * mule-coding.c (Fcopy_coding_system):
4544 * mule-coding.c (Fmake_coding_system):
4545 * mule-coding.c (Fcoding_system_list):
4546 * mule-coding.c (Ffind_coding_system):
4547 * mule-coding.c (symbol_to_eol_type):
4549 * mule-charset.c (complex_vars_of_mule_charset):
4550 * mule-charset.c (vars_of_mule_charset):
4551 * mule-charset.c (Fset_charset_ccl_program):
4552 * mule-charset.c (struct charset_list_closure):
4553 * mule-charset.c (Ffind_charset):
4554 * mule-charset.c (make_charset):
4555 * mule-charset.c (non_ascii_valid_char_p):
4557 * mule-ccl.c (ccl_driver):
4558 * mule-canna.c (c2mu):
4559 * mule-canna.c (Fcanna_henkan_begin):
4560 * mule-canna.c (Fcanna_parse):
4561 * mule-canna.c (Fcanna_store_yomi):
4562 * mule-canna.c (Fcanna_touroku_string):
4563 * mule-canna.c (Fcanna_initialize):
4565 * menubar.c (menu_parse_submenu_keywords):
4566 * menubar-x.c (make_dummy_xbutton_event):
4567 * menubar-x.c (set_frame_menubar):
4568 * menubar-x.c (menu_item_descriptor_to_widget_value_1):
4571 * menubar-msw.c (mswindows_popup_menu):
4572 * menubar-msw.c (mswindows_update_frame_menubars):
4573 * menubar-msw.c (mswindows_handle_wm_command):
4574 * menubar-msw.c (unsafe_handle_wm_initmenu_1):
4575 * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
4576 * menubar-msw.c (update_frame_menubar_maybe):
4577 * menubar-msw.c (populate_or_checksum_helper):
4578 * menubar-msw.c (empty_menu):
4581 * marker.c (set_marker_internal):
4582 * marker.c (print_marker):
4585 * lstream.c (lisp_buffer_rewinder):
4586 * lstream.c (mark_lstream):
4588 * lrecord.h (struct lrecord_header):
4589 * lread.c (readevalloop):
4590 * lread.c (locate_file):
4591 * lread.c (locate_file_in_directory):
4592 * lread.c (Flocate_file):
4593 * lread.c (load_force_doc_string_unwind):
4594 * lread.c (ebolify_bytecode_constants):
4599 * linuxplay.c (linux_play_data_or_file):
4600 * linuxplay.c (audio_init):
4603 * keymap.c (describe_map):
4604 * keymap.c (describe_map_mapper):
4605 * keymap.c (Fdescribe_bindings_internal):
4606 * keymap.c (Fsingle_key_description):
4607 * keymap.c (map_keymap_sorted):
4608 * keymap.c (get_relevant_keymaps):
4609 * keymap.c (Flookup_key):
4610 * keymap.c (raw_lookup_key_mapper):
4611 * keymap.c (Fdefine_key):
4612 * keymap.c (Fevent_matches_key_specifier_p):
4613 * keymap.c (key_desc_list_to_event):
4614 * keymap.c (define_key_parser):
4615 * keymap.c (define_key_check_and_coerce_keysym):
4616 * keymap.c (keymap_submaps):
4617 * keymap.c (keymap_store_internal):
4618 * keymap.c (keymap_delete_inverse_internal):
4619 * keymap.c (keymap_store_inverse_internal):
4620 * keymap.c (print_keymap):
4621 * keymap.c (Lisp_Keymap):
4624 * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
4625 * insdel.c (make_gap):
4626 * input-method-xlib.c (get_XIM_input):
4627 * input-method-xlib.c (XIM_init_frame):
4632 * gui-x.c (button_item_to_widget_value):
4633 * gui-x.c (popup_selection_callback):
4634 * glyphs.h (struct image_instantiator_methods):
4635 * glyphs.c (mark_glyph_cachels):
4636 * glyphs.c (Fglyph_type):
4637 * glyphs.c (image_instantiate):
4638 * glyphs.c (image_create):
4639 * glyphs.c (make_image_instance_1):
4640 * glyphs.c (finalize_image_instance):
4642 * glyphs-x.c (finalize_subwindow):
4643 * glyphs-x.c (xface_validate):
4644 * glyphs-x.c (x_locate_pixmap_file):
4645 * glyphs-x.c (convert_EImage_to_XImage):
4647 * glyphs-msw.c (mswindows_resource_instantiate):
4648 * glyphs-msw.c (xpm_to_eimage):
4649 * glyphs-msw.c (convert_EImage_to_DIBitmap):
4650 * glyphs-eimage.c (tiff_instantiate):
4651 * glyphs-eimage.c (png_instantiate):
4652 * glyphs-eimage.c (struct png_error_struct):
4653 * glyphs-eimage.c (gif_memory_storage):
4656 * getloadavg.c (getloadavg):
4659 * free-hook.c (log_gcpro):
4660 * free-hook.c (check_malloc):
4661 * free-hook.c (check_free):
4662 * free-hook.c (ROUND_UP_TO_PAGE):
4664 * frame.h (struct frame):
4666 * frame.c (change_frame_size_1):
4667 * frame.c (allocate_frame_core):
4669 * frame-x.c (x_focus_on_frame):
4670 * frame-x.c (x_init_frame_2):
4671 * frame-x.c (x_popup_frame):
4672 * frame-x.c (xemacs_XtPopup):
4674 * frame-x.c (Foffix_start_drag_internal):
4675 * frame-x.c (x_cde_destroy_callback):
4676 * frame-x.c (x_wm_hack_wm_protocols):
4677 * frame-tty.c (tty_frame_visible_p):
4678 * frame-msw.c (mswindows_make_frame_invisible):
4679 * frame-msw.c (mswindows_after_init_frame):
4680 * frame-msw.c (mswindows_init_frame_1):
4681 * fns.c (syms_of_fns):
4682 * fns.c (Fbase64_decode_string):
4684 * fns.c (Ffillarray):
4685 * fns.c (Fobject_plist):
4687 * fns.c (Fcanonicalize_lax_plist):
4688 * fns.c (Fcanonicalize_plist):
4689 * fns.c (Fplist_remprop):
4690 * fns.c (Fplist_get):
4691 * fns.c (advance_plist_pointers):
4692 * fns.c (internal_plist_put):
4693 * fns.c (Fnreverse):
4696 * fns.c (Fsubstring):
4697 * fns.c (Fbvconcat):
4699 * fns.c (length_with_bytecode_hack):
4700 * fns.c (print_bit_vector):
4702 * floatfns.c (Ffloor):
4704 * floatfns.c (in_float_error):
4705 * fileio.c (Ffile_modes):
4706 * fileio.c (Fexpand_file_name):
4707 * fileio.c (Fmake_temp_name):
4708 * fileio.c (Ffile_name_nondirectory):
4709 * fileio.c (Ffile_name_directory):
4711 * file-coding.c (vars_of_mule_coding):
4712 * file-coding.c (convert_to_external_format):
4713 * file-coding.c (encoding_marker):
4714 * file-coding.c (decoding_marker):
4715 * file-coding.c (Fcopy_coding_system):
4716 * file-coding.c (Fmake_coding_system):
4717 * file-coding.c (struct coding_system_list_closure):
4718 * file-coding.c (Ffind_coding_system):
4719 * file-coding.c (symbol_to_eol_type):
4721 * faces.h (struct face_cachel):
4722 * faces.c (vars_of_faces):
4723 * faces.c (face_property_was_changed):
4724 * faces.c (mark_face_cachels):
4725 * faces.c (temporary_faces_list):
4726 * faces.c (struct face_list_closure):
4728 * extents.h (struct extent):
4729 * extents.c (vars_of_extents):
4730 * extents.c (struct copy_string_extents_1_arg):
4731 * extents.c (add_string_extents_mapper):
4732 * extents.c (Fextent_property):
4733 * extents.c (Fset_extent_property):
4734 * extents.c (symbol_to_glyph_layout):
4735 * extents.c (properties_equal):
4736 * extents.c (print_extent):
4737 * extents.c (print_extent_1):
4738 * extents.c (extent_in_region_p):
4739 * extents.c (gap_array_make_gap):
4741 * events.h (struct Lisp_Event):
4743 * events.c (Fevent_properties):
4744 * events.c (format_event_object):
4745 * events.c (Fmake_event):
4746 * events.c (event_equal):
4747 * events.c (print_event):
4748 * events.c (mark_event):
4749 * event-stream.c ((read-char)
4750 * event-stream.c (vars_of_event_stream):
4751 * event-stream.c (syms_of_event_stream):
4752 * event-stream.c (Fset_recent_keys_ring_size):
4753 * event-stream.c (Fsit_for):
4754 * event-stream.c (Fnext_event):
4755 * event-stream.c (execute_help_form):
4756 * event-stream.c (maybe_kbd_translate):
4758 * event-msw.c (vars_of_event_mswindows):
4759 * event-msw.c (mswindows_wnd_proc):
4760 * event-msw.c (mswindows_need_event):
4761 * event-msw.c (mswindows_drain_windows_queue):
4762 * event-msw.c (mswindows_pump_outstanding_events):
4764 * event-msw.c (slurp_thread):
4765 * event-msw.c (struct ntpipe_slurp_stream):
4766 * event-msw.c (HANDLE_TO_USID):
4767 * event-Xt.c (emacs_Xt_handle_magic_event):
4768 * event-Xt.c (x_event_to_emacs_event):
4769 * event-Xt.c (x_reset_modifier_mapping):
4770 * event-Xt.c (x_reset_key_mapping):
4772 * eval.c (syms_of_eval):
4773 * eval.c (warn_when_safe):
4774 * eval.c (warn_when_safe_lispobj):
4775 * eval.c (Fbacktrace_frame):
4776 * eval.c (Fbacktrace):
4777 * eval.c (top_level_set):
4778 * eval.c (unbind_to_hairy):
4779 * eval.c (specbind_magic):
4780 * eval.c (specbind_unwind_wasnt_local):
4781 * eval.c (call2_trapping_errors):
4782 * eval.c (call1_trapping_errors):
4783 * eval.c (catch_them_squirmers_call2):
4784 * eval.c (call0_trapping_errors):
4785 * eval.c (run_hook_trapping_errors):
4786 * eval.c (catch_them_squirmers_eval_in_buffer):
4787 * eval.c (call4_in_buffer):
4788 * eval.c (call3_in_buffer):
4789 * eval.c (call2_in_buffer):
4790 * eval.c (call1_in_buffer):
4791 * eval.c (call0_in_buffer):
4792 * eval.c (run_hook):
4793 * eval.c (run_hook_with_args_in_buffer):
4796 * eval.c (do_autoload):
4797 * eval.c (un_autoload):
4798 * eval.c (Fautoload):
4799 * eval.c (Finteractive_p):
4800 * eval.c (Fcommand_execute):
4801 * eval.c (signal_quit):
4802 * eval.c (call_with_suspended_errors):
4803 * eval.c (signal_error):
4804 * eval.c (return_from_signal):
4805 * eval.c (Fcall_with_condition_handler):
4806 * eval.c (run_condition_case_handlers):
4807 * eval.c (condition_case_1):
4808 * eval.c (Funwind_protect):
4809 * eval.c (unwind_to_catch):
4810 * eval.c (internal_catch):
4811 * eval.c (Fmacroexpand_internal):
4812 * eval.c (Fuser_variable_p):
4813 * eval.c (Fdefconst):
4815 * eval.c (Ffunction):
4816 * eval.c (signal_call_debugger):
4817 * eval.c (call_debugger):
4820 * emacs.c (sort_args):
4824 * editfns.c (Fencode_time):
4825 * editfns.c (Fdecode_time):
4826 * editfns.c (Fuser_full_name):
4828 * editfns.c (save_excursion_restore):
4831 * doprnt.c (emacs_doprnt_1):
4832 * doc.c (verify_doc_mapper):
4833 * doc.c (Fsnarf_documentation):
4834 * doc.c (Fdocumentation):
4836 * dired.c (user_name_completion):
4837 * dired.c (Fdirectory_files):
4840 * dgif_lib.c (FreeSavedImages):
4841 * dgif_lib.c (DGifGetImageDesc):
4843 * device.h (struct device):
4844 * device.c (Fselect_device):
4845 * device.c (allocate_device):
4847 * device-x.c (Fx_keysym_on_keyboard_p):
4848 * device-x.c (Fx_valid_keysym_name_p):
4849 * device-x.c (x_IO_error_handler):
4850 * device-x.c (x_delete_device):
4851 * device-x.c (x_finish_init_device):
4852 * device-x.c (x_init_device):
4854 * device-msw.c (mswindows_init_device):
4856 * database.c (vars_of_database):
4857 * database.c (Fput_database):
4858 * database.c (Fopen_database):
4859 * database.c (berkdb_remove):
4860 * database.c (berkdb_put):
4861 * database.c (Fdatabasep):
4862 * database.c (print_database):
4864 * data.c (vars_of_data):
4865 * data.c (syms_of_data):
4866 * data.c (init_errors_once_early):
4867 * data.c (prune_weak_lists):
4868 * data.c (finish_marking_weak_lists):
4869 * data.c (print_weak_list):
4871 * data.c (Fstring_to_number):
4872 * data.c (Fnumber_to_string):
4873 * data.c (Findirect_function):
4876 * data.c (Fsubr_interactive):
4878 * data.c (Fkeywordp):
4881 * console.h (CONSOLE_NAME):
4883 * console.c (vars_of_console):
4884 * console.c (Fselect_console):
4886 * console-x.h (DEVICE_X_COLORMAP):
4887 * console-x.h (struct x_device):
4888 * console-x.c (x_device_to_console_connection):
4889 * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
4890 * console-tty.c (tty_init_console):
4892 * console-msw.h (struct mswindows_frame):
4895 * cmds.c (internal_self_insert):
4896 * cmds.c (Fforward_line):
4897 * cmds.c (Fforward_char):
4900 * chartab.c (mark_char_table_entry):
4902 * casefiddle.c (casify_word):
4903 * callproc.c (child_setup):
4904 * callproc.c (Fcall_process_internal):
4906 * callint.c (Fcall_interactively):
4908 * bytecode.c (execute_rare_opcode):
4909 * bytecode.c (execute_optimized_program):
4912 * buffer.h (BUFFER_REALLOC):
4913 * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
4914 * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
4916 * buffer.h (MAP_INDIRECT_BUFFERS):
4917 * buffer.h (CHECK_LIVE_BUFFER):
4918 * buffer.c (init_initial_directory):
4919 * buffer.c (complex_vars_of_buffer):
4920 * buffer.c (vars_of_buffer):
4921 * buffer.c (finish_init_buffer):
4922 * buffer.c (Fget_file_buffer):
4923 * buffer.c (Fbuffer_list):
4924 * buffer.c (mark_buffer):
4925 * balloon_help.c (balloon_help_move_to_pointer):
4926 * balloon_help.c (show_help):
4929 * alloc.c (garbage_collect_1):
4930 * alloc.c (sweep_strings):
4931 * alloc.c (sweep_compiled_functions):
4932 * alloc.c (sweep_bit_vectors_1):
4933 * alloc.c (sweep_vectors_1):
4934 * alloc.c (sweep_lcrecords_1):
4935 * alloc.c (tick_lcrecord_stats):
4936 * alloc.c (pure_string_sizeof):
4937 * alloc.c (mark_conses_in_list):
4938 * alloc.c (mark_object):
4939 * alloc.c (report_pure_usage):
4940 * alloc.c (make_pure_float):
4941 * alloc.c (make_pure_string):
4942 * alloc.c (free_managed_lcrecord):
4943 * alloc.c (mark_string):
4944 * alloc.c (noseeum_make_marker):
4945 * alloc.c (allocate_event):
4946 * alloc.c (Fbit_vector):
4947 * alloc.c (Fvector):
4948 * alloc.c (make_float):
4949 * alloc.c (Fmake_list):
4951 * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
4952 * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
4953 * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
4954 * alloc.c (dbg_constants):
4955 * alloc.c (gc_record_type_p):
4956 * alloc.c (free_lcrecord):
4957 * alloc.c (xmalloc):
4958 * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
4960 * Makefile.in.in (mostlyclean):
4961 * Makefile.in.in (external_client_xlib_objs_nonshared):
4962 * Makefile.in.in (temacs_link_args):
4963 * Makefile.in.in (release):
4964 * Makefile.in.in (dnd_objs):
4965 * Makefile.in.in (objs):
4966 * Makefile.in.in (PROGNAME):
4967 * EmacsShell.c: cast strings to (XtPointer)
4968 * EmacsFrame.c: cast strings to (XtPointer)
4970 - rewrite basic lisp functions for speed
4971 - rewrite bytecode interpreter for speed
4972 - rewrite list looping constructs for speed and safety using
4974 - use size_t where appropriate.
4975 - new hashtable implementation
4976 - cleanup implementation of opaques
4977 - opaques can now be purecopy'ed
4978 - move some cl functionality into C for speed.
4979 - remove last remaining VMS support
4981 - improve gdb/dbx debugger support
4982 - move pure.c back into alloc.c for performance
4983 - enable report_pure_usage() if --memory-usage-stats
4984 - remove remnants of Energize support (EMACS_BTL, cadillac...)
4985 - don't use symbols with leading `_' or embedded `__'
4986 - globally cleanup duplicated semicolons `;;'
4987 - I give in on %p vs %lx - we use printf("%lx",(long) p)
4989 - globally replace O_NDELAY with O_NONBLOCK.
4990 - globally replace CDISABLE with _POSIX_VDISABLE.
4991 - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
4992 - define (and maybe use!) STDERR_FILENO and friends.
4993 - add support for macros defined in C
4994 - `when', `unless', `not' and `defalias' now defined in C,
4995 so that they are universally available.
4996 - rename defvar_mumble to defvar_magic
4997 - rename RETURN__ to RETURN_SANS_WARNINGS
4998 - use consistent style of initial caps in error messages
4999 - implement last, butlast, nbutlast, copy-list in C.
5000 - provide typedefs for all struct Lisp_foo types
5001 - Lisp_Objects must be initialized to Qnil rather than 0.
5002 - make sure XEmacs runs (slowly) with always_gc == 1;
5003 - fast and safe LOOP_* macros
5004 - change calls to XSETOBJ to XSETFOO
5005 - replace calls to XSETINT by make_int()
5006 - plug up memory leaks
5007 - use style markobj (foo), not silly ((markobj) (foo))
5008 - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
5010 1998-12-02 P. E. Jareth Hein <jareth@camelot.co.jp>
5012 * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
5014 1998-11-28 SL Baur <steve@altair.xemacs.org>
5016 * XEmacs 21.2-beta4 is released.
5018 1998-11-27 SL Baur <steve@altair.xemacs.org>
5020 * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
5021 property in control-1 charset.
5022 From Julian Bradfield <jcb@daimi.au.dk>
5024 1998-11-26 Jan Vroonhof <vroonhof@math.ethz.ch>
5026 * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
5028 Add stub for :label.
5030 * gui.c (gui_item_add_keyval_pair): ditto.
5032 * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
5033 :key-sequence keyword.
5035 Support :active for submenus like the Windows code and FSF Emacs.
5037 1998-11-27 Hrvoje Niksic <hniksic@srce.hr>
5039 * dired.c (make_directory_hash_table): make_string() is OK because
5040 readdir() Mule-encapsulates.
5042 1998-11-26 Hrvoje Niksic <hniksic@srce.hr>
5044 * fns.c (Fbase64_encode_string): Fix docstring.
5045 (Fbase64_decode_string): Ditto.
5047 1998-11-26 Hrvoje Niksic <hniksic@srce.hr>
5049 * editfns.c (Ftranslate_region): Use
5050 convert_bufbyte_string_into_emchar_string().
5052 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
5054 * editfns.c (Ftranslate_region): Accept vectors and char-tables as
5056 (Ftranslate_region): Turn table into an array of Emchars for
5059 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
5061 * chartab.c (Freset_char_table): Fix wrong placement of #endif.
5063 1998-11-24 Hrvoje Niksic <hniksic@srce.hr>
5065 * chartab.c (Freset_char_table): Don't blindly fill chartables of
5066 type `char' with nils.
5068 * chartab.c (canonicalize_char_table_value): Coerce ints to chars
5069 for tables of type `char'.
5071 1998-11-26 Didier Verna <verna@inf.enst.fr>
5073 * input-method-xlib.c (Initialize_Locale): don't call
5074 XtSetLanguageProc. We've done the whole work here.
5075 * input-method-xfs.c (Initialize_Locale): ditto.
5076 * input-method-motif.c (Initialize_Locale): ditto.
5078 1998-11-26 Didier Verna <verna@inf.enst.fr>
5080 * process-unix.c (unix_create_process): handle properly
5081 Vfile_name_coding_system for converting the program and directory
5084 1998-11-27 SL Baur <steve@altair.xemacs.org>
5086 * m/arm.h: New file.
5087 From James LewisMoss <dres@ioa.com>
5089 1998-11-27 Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
5092 Fix the realpath() problem of UnixWare2.1.3.
5093 Patches for NEC's sysv4.2 machine.
5095 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
5097 * dired.c (Fdirectory_files): Remove redundant code.
5099 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
5101 * fns.c (free_malloced_ptr): New function.
5102 (XMALLOC_OR_ALLOCA): New macro.
5103 (XMALLOC_UNBIND): Ditto.
5104 (Fbase64_encode_region): Use malloc() for large blocks; arrange it
5105 to be freed in case of non-local exit.
5106 (Fbase64_encode_string): Ditto.
5107 (Fbase64_decode_region): Ditto.
5108 (Fbase64_decode_string): Ditto.
5109 (STORE_BYTE): New macro.
5110 (base64_decode_1): Use it.
5112 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
5114 * fns.c (base64_value_to_char): Base64 stuff.
5116 1998-11-24 Hrvoje Niksic <hniksic@srce.hr>
5118 * editfns.c (Fbuffer_substring): New function.
5120 * lisp.h: Declare make_string_from_buffer_no_extents().
5122 * insdel.c (make_string_from_buffer_1): New function.
5123 (make_string_from_buffer_no_extents): Ditto.
5125 1998-11-15 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
5127 * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
5128 sound work on AIX with OSS installed. Linux should still work.
5130 1998-11-03 Andy Piper <andyp@parallax.co.uk>
5132 * config.h.in: name change for cygwin/version.h
5134 * configure.in: check for cygwin/version.h now.
5136 * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
5137 CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
5138 move cygwin32/version.h to cygwin/version.h
5140 1998-11-03 Olivier Galibert <galibert@pobox.com>
5142 * lisp.h (struct Lisp_Bit_Vector): Fix declaration of bits from
5145 1998-10-22 Andy Piper <andyp@parallax.co.uk>
5147 * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
5148 CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
5149 enable BROKEN_SIGIO under b20 to make QUIT work.
5151 1998-10-22 Andy Piper <andyp@parallax.co.uk>
5153 * frame-msw.c (mswindows_size_frame_internal): force frame sizing
5154 to fit within the constraints of the screen size. I.e. make the
5155 frame small enough to fit and move it if some of it will be
5158 1998-10-19 Greg Klanderman <greg@alphatech.com>
5160 * dired.c: conditionalize inclusion of user-name-completion
5161 primitives on non-Windows NT. The needed functions don't exist on NT.
5163 1998-11-24 SL Baur <steve@altair.xemacs.org>
5165 * gifrlib.h: Clean up types for 64 bit compile.
5166 * dgif_lib.c (DGifInitRead): Ditto.
5167 (MakeSavedImage): Ditto.
5168 * emacs.c (decode_path): Ditto.
5169 From Steve Carney <carney@pa.dec.com>
5171 1998-10-16 William M. Perry <wmperry@aventail.com>
5173 * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
5174 (cehckboxes instead of checkboxes).
5176 1998-10-15 SL Baur <steve@altair.xemacs.org>
5178 * XEmacs 21.2-beta3 is released.
5180 1998-10-13 Raymond Toy <toy@rtp.ericsson.se>
5182 * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
5183 gnuclient. Otherwise, we run xemacs as we always did. This gets
5184 rid of the annoying DOS window when running gnuclient.
5186 1998-10-13 Andy Piper <andyp@parallax.co.uk>
5188 * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
5189 HAVE_MS_WINDOWS typo.
5191 1998-10-13 SL Baur <steve@altair.xemacs.org>
5193 * process-unix.c (unix_send_process): Set closed flag on writable
5194 pipe after SIGPIPE is received and before we call deactivate_process.
5196 1998-10-03 Gunnar Evermann <ge204@eng.cam.ac.uk>
5198 * window.c (Fset_window_start): respect narrowing when
5199 checking wheter start is at the beginning of a line.
5200 (Fset_window_buffer): Ditto
5201 Fixes repeatable crash in VM.
5203 1998-10-09 SL Baur <steve@altair.xemacs.org>
5205 * window.c (specifier_vars_of_window): Set default vertical
5206 divider width to 1 on ttys.
5208 1998-10-08 Martin Buchholz <martin@xemacs.org>
5213 Add <stddef.h> to get ptrdiff_t declaration
5215 1998-10-07 Jonathan Harris <jhar@tardis.ed.ac.uk>
5217 * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
5218 is used for Motif or Lucid scrollbars under X.
5220 1998-10-08 Pierre Wendling <pw@ebc.vbe.dec.com>
5222 * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
5225 1998-10-06 Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
5227 * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
5229 1998-10-05 Andy Piper <andyp@parallax.co.uk>
5231 * s/cygwin32.h: more cygwin b20 reorganisation.
5233 1998-10-01 Raymond Toy <toy@rtp.ericsson.se>
5235 * nas.c: Added necessary support functions to be able to handle
5236 WAVE files in memory, just like the support for SND files in
5239 1998-09-30 SL Baur <steve@altair.xemacs.org>
5241 * callproc.c (child_setup): Fix spelling typo.
5243 1998-09-29 SL Baur <steve@altair.xemacs.org>
5245 * XEmacs 21.2-beta2 is released.
5247 1998-09-27 P. E. Jareth Hein <jareth@camelot.co.jp>
5249 * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
5250 to prevent memory corruption in the case of jumping out of a series of
5251 nested match patterns. This is a rather brute force approach, though.
5253 1998-09-02 Andy Piper <andyp@parallax.co.uk>
5255 * config.h.in: ditto.
5257 * s/cygwin32.h: rearrange declarations to cope with cygwin
5258 b20. Include cygwin32/version.h if it exists.
5260 1998-09-20 Jonathan Harris <jhar@tardis.ed.ac.uk>
5262 * device-msw.c (mswindows_init_device): Call new
5263 mswindows_enumerate_fonts() function in objects-msw.c instead
5264 of font_enum_callback_1() to enumerate fonts.
5266 font_enum_callback_1() and _2() moved to objects-msw.c.
5268 * faces.c (complex_vars_of_faces): Make the mswindows default
5269 face font fully specified and provide some fallbacks.
5271 * objects-msw.c: font_enum_callback_1() and _2() moved here
5272 from objects-msw.c. Obtain the enumerated font's character
5273 sets by table lookup instead of using the locale-specific
5274 string provided by Windows.
5276 New public non-method mswindows_enumerate_fonts() that fills
5277 in the supplied mswindows device's font list.
5279 mswindows_initialize_font_instance: Use the supplied name
5280 variable instead of f->name when signalling errors. Match font
5281 weights and character sets using lookup tables which handle
5282 spaces instead of by frobbing.
5284 1998-09-20 Jonathan Harris <jhar@tardis.ed.ac.uk>
5286 * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
5287 on the size of code fragments passed to run_in_other_process.
5289 run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
5290 the amount of memory to allocate in the other process.
5292 Removed sigkill_code_end(), sigint_code_end() and
5293 sig_enable_code_end() since they are now redundant.
5295 send_signal() and enable_child_signals(): Don't try to work
5296 out the end of the code fragments passed to
5297 run_in_other_process()
5299 1998-09-10 Kazuyuki IENAGA <ienaga@jsys.co.jp>
5301 * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
5304 * src/unexelf.c: Partially synched with FSF's 20.3.
5306 1998-09-10 Hrvoje Niksic <hniksic@srce.hr>
5308 * insdel.c (signal_after_change): Map across indirect buffers
5309 here, and not in the upper-level functions.
5310 (signal_first_change): Don't check for Armageddon.
5311 (signal_before_change): Map across indirect buffers here.
5312 (prepare_to_modify_buffer): ...and here.
5314 1998-09-09 Hrvoje Niksic <hniksic@srce.hr>
5316 * insdel.c (signal_after_change): Add return value.
5317 (buffer_insert_string_1): Use it.
5318 (buffer_delete_range): Ditto.
5319 (buffer_replace_char): Ditto.
5320 (cancel_multiple_change): Map the indirect buffers.
5322 1998-09-06 Hrvoje Niksic <hniksic@srce.hr>
5324 * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
5325 (uninit_buffer_text): Ditto.
5327 * buffer.c (Fmake_indirect_buffer): Implement stricter
5330 1998-09-04 Hrvoje Niksic <hniksic@srce.hr>
5332 * insdel.c (change_function_restore): Reverse order of
5333 function-call and assignment.
5334 (first_change_hook_restore): Ditto.
5336 * extents.c (mark_extent_auxiliary): Mark them.
5337 (Fset_extent_property): Set them.
5338 (Fextent_property): Get them.
5339 (Fextent_properties): Ditto.
5340 (vars_of_extents): Set their default.
5342 * extents.h (struct extent_auxiliary): Add before_change_functions
5343 and after_change_functions.
5345 * insdel.c (signal_before_change): Use it.
5346 (signal_after_change): Ditto.
5348 * extents.c (report_extent_modification): New function.
5350 * insdel.c (signal_before_change): Don't check for Armageddon.
5351 (signal_after_change): Ditto.
5353 1998-09-11 Gunnar Evermann <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5355 * redisplay.c (redisplay_window): make sure a new starting point
5356 is chosen if it somehow got moved from the beginning of the line
5357 -- this can happen because Fwiden was called recently.
5359 * window.c (Fset_window_start): set start_at_line_beg correctly
5360 (Fset_window_buffer): Ditto
5362 1998-09-06 Hrvoje Niksic <hniksic@srce.hr>
5364 * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
5365 (uninit_buffer_text): Ditto.
5367 * buffer.c (Fmake_indirect_buffer): Implement stricter
5370 1998-05-14 Jan Vroonhof <vroonhof@math.ethz.ch>
5372 * emacs.c (main_1): Removed references to *vars_of_filelock.
5374 * lisp.h: Added Fsystem_name.
5376 * filelock.c: Replaced by version from FSF 20.2. Now implements
5377 locking by using symlinks which is NFS safe. However keep the
5378 GCPRO's in lock_file and the calls to callx_in_buffer like our old
5379 version (and of course use ansi C, acessor macros, etc).
5381 1998-09-06 Jan Vroonhof <vroonhof@math.ethz.ch>
5383 * process-unix.c (unix_create_process): Reset SIGHUP handler to
5384 SIG_DFL. We now try to conserve any inherted SIG_IGN settings
5385 in init_signals_very_early. However these should not be passed
5386 on to children attached to the new pty.
5388 1998-08-28 Andy Piper <andyp@parallax.co.uk>
5390 * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
5392 1998-09-07 Jonathan Harris <jhar@tardis.ed.ac.uk>
5394 * fileio.c (file-name-directory, file_name_as_directory):
5395 Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
5397 1998-09-02 Andy Piper <andyp@parallax.co.uk>
5399 * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
5401 * ralloc.c: uncomment __morecore.
5403 1998-09-92 Jonathan Harris <jhar@tardis.ed.ac.uk>
5405 * event-msw.c(winsock_writer): Supply a dummy 4th argument to
5406 WriteFile() to fix a winsock 1.x bug on Win95.
5408 1998-08-28 Hrvoje Niksic <hniksic@srce.hr>
5410 * event-Xt.c (emacs_Xt_mapping_action): Check for device being
5412 (x_event_to_emacs_event): Ditto.
5413 (emacs_Xt_handle_focus_event): Ditto.
5414 (emacs_Xt_handle_magic_event): Ditto.
5416 * console-x.h (struct x_device): New flag being_deleted.
5417 (DEVICE_X_BEING_DELETED): New macro.
5419 * device-x.c (x_IO_error_handler): Throw to top-level instead of
5420 returning. Before doing that, set the being_deleted flag on the
5423 1998-08-27 Hrvoje Niksic <hniksic@srce.hr>
5425 * device-x.c (x-seppuku-on-epipe): Removed.
5427 1998-08-26 Gunnar Evermann <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5429 * frame-x.c (x_delete_frame): Flush the X output buffer after
5430 calling XtDestroyWidget to ensure that the windows are really
5433 1998-08-26 Hrvoje Niksic <hniksic@srce.hr>
5435 * menubar-x.c (my_run_hook): New unused function.
5436 (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
5437 since we ignore the results of the contained functions anyway.
5439 1998-08-26 P. E. Jareth Hein <jareth@camelot.co.jp>
5441 * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
5442 interlaced GIF files that are smaller than 4 lines high...
5444 1998-08-31 Hrvoje Niksic <hniksic@srce.hr>
5446 * buffer.c (map_over_sharing_buffers): Deleted.
5448 * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
5450 * buffer.c (Fkill_buffer): Keep indirect_children updated while
5453 1998-08-31 Hrvoje Niksic <hniksic@srce.hr>
5455 * insdel.c (buffer_insert_string_1): Advance the point bytind in
5457 (buffer_delete_range): Ditto.
5459 * marker.c (init_buffer_markers): Set point-marker to the value of
5460 point in an indirect buffer.
5462 1998-08-30 Hrvoje Niksic <hniksic@srce.hr>
5464 * undo.c (undo_prelude): Test last-undo-buffer against base
5467 * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
5469 * buffer.h (BUFFER_BASE_BUFFER): New macro.
5471 1998-08-30 Hrvoje Niksic <hniksic@srce.hr>
5473 * insdel.c (init_buffer_text): Initialize it here.
5475 * line-number.c: Address line_number_cache through buffer->text.
5477 * buffer.c (mark_buffer): Mark line number cache.
5479 * bufslots.h (line_number_cache): Move to struct buffer_text.
5481 * insdel.c (buffer_insert_string_1): Propagate signals and changes
5482 across the children buffers.
5483 (buffer_delete_range): Ditto.
5484 (buffer_replace_char): Ditto.
5488 * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
5490 * buffer.c (Fmake_indirect_buffer): Uncomment.
5492 1998-08-31 Hrvoje Niksic <hniksic@srce.hr>
5494 * macros.c (Fend_kbd_macro): Remove trailing period from error
5496 (Fexecute_kbd_macro): Ditto.
5498 1998-08-21 Greg Klanderman <greg@alphatech.com>
5500 * dired.c (Fuser_name_completion): remove optional 2nd argument.
5501 (Fuser_name_completion_1): new function to return uniqueness
5502 indication in addition to the user name completion.
5503 (user_name_completion): change type of `uniq' argument.
5505 1998-08-19 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
5507 * lread.c (vars_of_lread): Removed `source-directory' variable.
5509 1998-08-22 Hrvoje Niksic <hniksic@srce.hr>
5511 * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
5514 1998-08-19 SL Baur <steve@altair.xemacs.org>
5516 * dired.c (vars_of_dired): Fix misapplied patch.
5518 1998-08-16 Martin Buchholz <martin@xemacs.org>
5520 * fns.c (Fremrassq, remrassq_no_quit):
5521 A XCAR that should have been an XCDR turned Fremrassq into Fremassq
5523 1998-07-17 Didier Verna <verna@inf.enst.fr>
5525 * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
5526 style as foreground GC for faces that have the `dim' property.
5527 (x_output_string): when the `dim' face property is set,
5528 ensure the gray pixmap has been created, and get a proper
5529 foreground GC to draw the text.
5531 1998-08-09 Jonathan Harris <jhar@tardis.ed.ac.uk>
5533 * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
5534 Manually track the state of the left and right Ctrl and Alt
5537 1998-08-07 Matt Stupple <matts@tibco.com>
5539 * ntproc.c: don't wait on char_consumed at thread entry.
5540 Additionally, to get the 'process' marked as finished, ensure
5541 that the CHILD_ACTIVE macro returns false, so before exiting
5542 close char_avail and set it to NULL, and close other handles
5543 to reduce handle leak problems.
5545 1998-08-09 Jonathan Harris <jhar@tardis.ed.ac.uk>
5547 * menubar-msw.c (displayable_menu_item): take account of menu
5548 depth when deciding whether to try to display accelerators.
5550 1998-08-04 Andy Piper <andyp@parallax.co.uk>
5552 * event-msw.c: use MsgWaitForMultipleObjects if there are no
5555 * glyphs-msw.c: fix a couple of potential handle leaks.
5557 1998-08-04 P. E. Jareth Hein <jareth@camelot.co.jp>
5559 * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
5560 *decoding ONLY* back into the core.
5561 * glyphs-eimage.c: Change referenced header file for GIF
5562 reading to point to the incore version.
5564 1998-07-20 Martin Buchholz <martin@xemacs.org>
5566 * casefiddle.c (casify_object):
5567 Change algorithm from O(N**2) to O(N).
5571 1998-07-22 Greg Klanderman <greg@alphatech.com>
5573 * dired.c (file_name_completion_unwind): don't leak the cons.
5575 1998-07-20 Greg Klanderman <greg@alphatech.com>
5577 * dired.c (Fuser_name_completion): new function.
5578 (Fuser_name_all_completions): new function.
5579 (user_name_completion): new function.
5580 (syms_of_dired): 2 new DEFSUBRs.
5581 (vars_of_dired): initialize user name cache vars.
5583 1998-07-29 P. E. Jareth Hein <jareth@camelot.co.jp>
5585 * glyphs-eimage.c (png_instantiate): Add proper handling for background
5586 colors taken from the default face. Also correct a thinko in
5587 transparency (not alpha) handling.
5589 1998-07-23 Martin Buchholz <martin@xemacs.org>
5591 * s/decosf4-0.h: Use a perfectly ordinary link. Nuke BSD crap.
5592 * unexalpha.c: ANSI C-ize. Clean compiler warnings.
5593 * lread.c (Fload_internal): Be very careful with printfs of
5595 * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
5598 1998-07-27 Gunnar Evermann <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5600 * callint.c (Fcall_interactively): GCPRO prompt string before
5601 passing it to Fread_key_sequence
5603 1998-07-27 SL Baur <steve@altair.xemacs.org>
5605 * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
5606 Vvertical_divider_map.
5608 * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
5609 Qnil or 0, none were initialized prior to this change.
5611 Rename misnamed `V' prefixed integer variables:
5612 Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
5613 Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
5614 Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
5615 Vcanna_ichiran_revLen.
5617 Rename misnamed `V' prefixed integer variables and initialize
5618 properly in the vars_of routine.
5619 Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
5620 Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
5621 Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
5622 Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
5623 Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
5624 Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
5625 Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
5626 Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
5627 Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
5628 Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
5629 Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
5630 Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
5631 Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
5632 Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
5633 Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
5634 Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
5635 Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
5636 Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
5637 Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
5638 Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
5639 Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
5640 Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
5641 Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
5642 Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
5643 Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
5644 Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
5645 Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
5646 Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
5647 Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
5648 Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
5649 Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
5650 Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
5651 Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
5652 Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
5653 Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
5654 Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
5655 Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
5656 Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
5657 Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
5658 Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
5659 Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
5660 Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
5661 Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
5662 Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
5663 Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
5664 Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
5666 1998-07-16 Jan Vroonhof <vroonhof@math.ethz.ch>
5668 * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
5669 (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
5670 keys thus no longer considering all keysyms on a key.
5672 1998-07-19 SL Baur <steve@altair.xemacs.org>
5674 * XEmacs 21.2-beta1 is released.
5676 1998-07-12 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
5678 * eldap.c (Fldap_search_internal): When converting the list of
5679 attributes to search Copy the final 0 from Lisp strings to C
5681 Check base, not Vldap_default_base as a a string
5683 1998-07-13 Jonathan Harris <jhar@tardis.ed.ac.uk>
5685 * nt.c: Remove Vstdio_str; already defined in console-stream.c.
5687 * unexnt.c: Unconditionally define bss_start and bss_size, and
5688 ensure that they don't go in the .bss section.
5690 1998-07-17 Olivier Galibert <galibert@pobox.com>
5692 * glyphs-x.c (convert_EImage_to_XImage): Fix previous patch (conv
5693 byte order is dependant of the local byte order).
5694 From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
5696 1998-07-18 SL Baur <steve@altair.xemacs.org>
5698 * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
5699 Qmswindows_resource.
5700 From Jonathan Harris <jhar@tardis.ed.ac.uk>
5702 1998-07-12 SL Baur <steve@altair.xemacs.org>
5704 * general.c (syms_of_general): Add defsymbol for Qresource.
5706 * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
5707 Qmswindows_resource.
5708 (TopLevel): Rename 'resource image format to 'mswindows_resource.
5709 (mswindows_resource_validate): Rename.
5710 (mswindows_resource_normalize): Rename.
5711 (mswindows_resource_possible_dest_types): Rename.
5712 (mswindows_resource_instantiate): Rename.
5713 (image_instantiator_format_create_glyphs_mswindows): Replace
5714 `resource' with `mswindows.resource'.
5716 * XEmacs 21.0-pre5 is released.
5718 1998-07-10 SL Baur <steve@altair.xemacs.org>
5720 * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
5721 server type in environment.
5722 Use alloca-ed strings instead of tiny fixed size ones.
5724 1998-07-09 SL Baur <steve@altair.xemacs.org>
5726 * XEmacs 21.0-pre4 is released.
5728 1998-07-01 James N. Potts <jnpotts@plutonium.net>
5730 * fileio.c: (expand_file_name): under win32: Don't treat names
5731 as UNC names if a drive letter has been specified. If a drive
5732 has been specified, strip out extra directory-seperators that
5733 reportedly cause problems under Win95.
5735 1998-07-09 Jonathan Harris <jhar@tardis.ed.ac.uk>
5737 * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
5738 MSVC >= 5.0. Put emacs init and zero-init data in a special
5739 section of the executable when this is defined.
5741 * unexnt.c, ntheap.h:
5742 Removed unused find_section() and get_section_size().
5745 Fix up the executable's checksum after dumping otherwise the
5747 When DUMP_SEPARATE_SECTION is defined, don't need to dump
5748 zero-init data separately from init data. Dump emacs data
5749 into a special section of the executable.
5750 When DUMP_SEPARATE_SECTION not defined, dump .bss up to
5751 my_ebss instead of up to the end of bss.
5753 1998-07-09 Jonathan Harris <jhar@tardis.ed.ac.uk>
5755 * filelock.c: Removed Vconfigure_lock_directory - already
5758 * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
5759 defined in frame.c and general.c respectively.
5761 * glyphs-msw.c: Removed Qresource - already defined in
5764 1998-07-05 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
5766 * eldap.c (Fldap_search_internal): Docstring fixes
5768 1998-07-04 Jonathan Harris <jhar@tardis.ed.ac.uk>
5770 * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
5771 EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
5772 EMACSPACKAGEPATH and INFOPATH variables.
5773 Removed unused get_emacs_configuration function.
5775 * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
5776 it is now defined at build-time by the makefile.
5778 1998-07-01 James N. Potts <jnpotts@plutonium.net>
5780 * fileio.c: (expand_file_name): under win32: Don't treat names as
5781 UNC names if a drive letter has been specified. If a drive has
5782 been specified, strip out extra directory-seperators that
5783 reportedly cause problems under Win95.
5785 1998-07-05 Andy Piper <andyp@parallax.co.uk>
5787 * faces.c (complex_vars_of_faces): for the gui-element face don't
5788 fallback to the default face, instead provide reasonable default
5789 fallbacks that were previously hardcoded elsewhere.
5791 1998-07-06 Olivier Galibert <galibert@pobox.com>
5793 * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
5794 when the X server endianness is different than the client's one.
5796 1998-06-29 Kyle Jones <kyle_jones@wonderworks.com>
5798 * eval.c (run_hook_with_args_in_buffer): Check
5799 default (non-buffer-local) value of hook for
5800 nil before treating it as a function. Don't initialize
5801 the `globals' variable twice.
5803 1998-06-24 Jonathan Harris <jhar@tardis.ed.ac.uk>
5805 * fileio.c: Don't do directory seperator canonicalisation in
5806 substitute-in-file-name because we don't know that the
5807 filename refers to a local file.
5809 1998-06-24 Adrian Aichner <aichner@ecf.teradyne.com>
5811 * process-nt.c (nt_create_process): Try appending the standard
5812 executable file extensions to the filename if none supplied.
5814 1998-06-29 SL Baur <steve@altair.xemacs.org>
5816 * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
5818 From Keisuke Mori <ksk@ntts.com>
5820 1998-06-24 Andy Piper <andyp@parallax.co.uk>
5822 * toolbar-msw.c (mswindows_output_toolbar): only enable masked
5823 images if we have masks. This handles the xbm case (have masks)
5824 and avoids overuse of resources in the xpm case (generally no masks).
5825 Don't output small toolbars.
5827 1998-06-29 Kyle Jones <kyle_jones@wonderworks.com>
5829 * eval.c (run_hook_with_args_in_buffer): Don't treat
5830 the default value of a buffer local hook as a list of
5831 hooks unless it is both a cons and the car of that cons
5834 1998-06-29 SL Baur <steve@altair.xemacs.org>
5836 * extents.c: Email address for Ben Wing is ben@xemacs.org.
5837 * process-unix.c: Ditto.
5838 * mule-coding.h: Ditto.
5839 * mule-coding.c: Ditto.
5840 * mule-charset.c: Ditto.
5841 * mule-charset.h: Ditto.
5842 * file-coding.c: Ditto.
5843 * file-coding.h: Ditto.
5845 1998-06-22 Jonathan Harris <jhar@tardis.ed.ac.uk>
5847 * event-msw.c: Guard against recursion when freeing
5848 FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
5850 * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
5851 Call ShowWindow twice in init_frame_3 to get round runemacs
5854 1998-06-27 Hrvoje Niksic <hniksic@srce.hr>
5856 * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
5858 * winslots.h: Rename.
5860 * window.c (specifier_vars_of_window): Renamed
5861 vertical-divider-draggable-p to vertical-divider-always-visible-p,
5862 as suggested by Ben Wing.
5863 (specifier_vars_of_window): Fix docstrings.
5865 1998-06-22 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
5867 * unexaix.c: Line number information works correctly again.
5869 1998-06-22 Olivier Galibert <galibert@pobox.com>
5871 * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
5873 1998-06-21 Martin Buchholz <martin@xemacs.org>
5875 * editfns.c (get_home_directory): ANSIfy.
5876 XEmacs is compilable under C *and* C++.
5877 It's XEmacs, not Xemacs!
5879 1998-06-19 Jonathan Harris <jhar@tardis.ed.ac.uk>
5881 * console-msw.h: added a list of fonts to device data.
5883 * device-msw.c: enumerate list of available fonts in
5884 mswindows_init_device. Free list in mswindows_delete_device.
5886 * objects-msw.c: Added helper function match_font used by
5887 mswindows_initialize_font_instance and mswindows_list_fonts.
5888 Allow a charset to be specified in a font string, even if
5889 previous fields havn't been specified.
5891 1998-06-23 Greg Klanderman <greg@alphatech.com>
5893 * indent.c (column_at_point): column cache bugfix.
5894 Set last_known_column_point to the buffer position for
5895 which the column was requested, not buffer's point.
5897 * redisplay.c (decode_mode_spec): for current-column, show
5898 window's point's column, not buffer's point's column.
5900 1998-06-23 Andy Piper <andyp@parallax.co.uk>
5902 * menubar-msw.c (mswindows_handle_wm_command): use
5903 enqueue_misc_user event rather than
5904 mswindows_enqueue_msic_user_event to fix customize problems. Add some
5907 * console-msw.h: declare mswindows_enqueue_magic_event.
5909 * event-msw.c (mswindows_enqueue_magic_event): make global.
5911 1998-06-24 Hrvoje Niksic <hniksic@srce.hr>
5913 * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
5914 (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
5915 (add_position_to_cache): Use EMACS_INT instead of int.
5917 1998-06-21 Olivier Galibert <galibert@pobox.com>
5919 * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
5920 suitable for an int used as a boolean (btw, C sucks.).
5922 1998-06-18 Andy Piper <andyp@parallax.co.uk>
5924 * object-msw.c: remove warnings.
5926 * device-msw.c: #define wrongly named cygwin structure elements.
5928 * s/cygwin32.h: define DEMI_BOLD
5930 1998-06-19 Jonathan Harris <jhar@tardis.ed.ac.uk>
5932 * redisplay-msw.c: new function mswindows_apply_face_effects.
5933 This is called by output_string and output_cursor to display
5934 underline and strikeout on faces.
5936 1998-06-19 Jonathan Harris <jhar@tardis.ed.ac.uk>
5938 * console-msw.h: added a list of fonts to device data.
5940 * device-msw.c: enumerate list of available fonts in
5941 mswindows_init_device. Free list in mswindows_delete_device.
5943 * objects-msw.c: Added helper function match_font used by
5944 mswindows_initialize_font_instance and mswindows_list_fonts.
5945 Allow a charset to be specified in a font string, even if
5946 previous fields havn't been specified.
5948 1998-06-15 Jonathan Harris <jhar@tardis.ed.ac.uk>
5951 Removed compilation warnings from mswindows_string_to_color.
5952 mswindows_list_fonts returns a more general bogus font.
5953 New lisp-visible function mswindows-color-list.
5955 1998-06-19 David Bush <david.bush@adn.alcatel.com>
5957 * editfns.c (Fuser_login_name): Modify to user new function
5959 (user_login_name): C only function to avoid Lisp object overhead
5960 Returns "unknown" instead of nil in Cygwin environment
5962 * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
5963 equivalent for current user in Cygwin environment. Use new
5964 function user_login_name to get username.
5966 * lisp.h: Declare user_login_name
5968 1998-06-18 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
5970 * unexaix.c (make_hdr): Fixed bias computations so debugging info
5972 Some other insignificant nitpicks.
5974 1998-06-18 Andy Piper <andyp@parallax.co.uk>
5976 * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
5977 creating the image list and make sure he bk color is transparent.
5979 1998-06-18 Jan Vroonhof <vroonhof@math.ethz.ch>
5981 * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
5982 completed_timeouts. The timer could have expired.
5984 1998-06-17 Andy Piper <andyp@parallax.co.uk>
5986 * console-msw.h: move XEMACS_RECT_WH inside frame
5987 parameters. define macors to access it.
5989 * frame-msw.c (mswindows_init_frame_1): use new target_rect
5990 parameter to intialise desired sizing. (mswindows_init_frame_2):
5991 enable and size the frame to something sensible when we get
5992 here. (mswindows_set_frame_properites): use new
5993 mswindows_size_frame_internal function and size frame if frame
5994 parameters not just if init is finished - WM_SIZE happens too
5995 early for some specs. (mswindows_size_frame_internal): new
5996 function abstracted from mswindows_set_frame_properties.
5997 (Vmswindows_use_system_frame_size_defaults):
5998 new variable controls whether to allow the system to pick frame
5999 size defaults, defaults to nil.
6001 * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
6002 than duplicated code.
6004 1998-06-15 Colin Rafferty <colin@xemacs.org>
6006 * Makefile.in.in: Made EXTW_LINK expand properly.
6008 1998-06-12 Martin Buchholz <martin@xemacs.org>
6010 * redisplay.c (vars_of_redisplay): default value of
6011 column-number-start-at-one should be NIL!
6013 1998-06-11 Martin Buchholz <martin@xemacs.org>
6016 (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
6018 1998-06-05 Hrvoje Niksic <hniksic@srce.hr>
6020 * eldap.c (Fldap_search_internal): Use build_ext_string instead of
6021 build_string to avoid crashes under Mule.
6023 1998-06-13 Andy Piper <andyp@parallax.co.uk>
6025 * ntplay.c (play_sound_data_1): don't delete the sound data until
6026 the next sound is played and the previous one finished.
6028 1998-06-10 Samuel Mikes <smikes@alumni.hmc.edu>
6030 * fileio.c (directory-sep-char): Escape backslashes.
6032 1998-06-10 Hrvoje Niksic <hniksic@srce.hr>
6034 * event-stream.c: Fix docstring reference.
6036 1998-06-12 Hrvoje Niksic <hniksic@srce.hr>
6038 * alloc.c (make_float): Remove useless initialization of `next'
6040 (make_pure_float): Ditto.
6042 * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
6044 1998-06-08 Kirill M. Katsnelson <kkm@kis.ru>
6046 * fileio.c (Fmake_directory_internal): Remove conditionals
6047 on WINDOWSNT when calling mkdir.
6049 * ntproc.c: Deleted the following unused functions:
6050 register_child, reap_subprocess, sys_wait.
6052 * nt.c (sys_rename): Ifzeroed this implementation.
6053 Deleted the following unused functions:
6054 sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
6055 sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
6056 sys_read, sys_write.
6057 Merger sys_fopen and sys_open with sysdep.c implementation.
6059 * sysdep.c: Removed MS-DOS code.
6060 (sys_rename): Deal with Microsoft rename weirdness.
6061 (sys_open): Implemented for Windows.
6065 1998-06-08 Kirill M. Katsnelson <kkm@kis.ru>
6067 * buffer.c (complex_vars_of_buffer): Removed %t description from
6070 1998-06-04 Rick Rankin <Rick_Rankin-P15254@email.mot.com>
6072 * scrollbar-msw.c: initialize the cbSize element of the
6073 SCROLLINFO struct before calling SetScrollInfo. WinNT seems
6074 to ignore the value of cbSize, but Win95 (and I presume Win98)
6075 appear to want it set to sizeof(SCROLLINFO).
6077 1998-06-04 Kirill M. Katsnelson <kkm@kis.ru>
6079 * event-stream.c: Defined Qcancel_mode_internal.
6080 (syms_of_event_stream): defsymbol'ed it.
6082 * events.h: Externed it.
6084 * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
6086 1998-06-04 Oliver Graf <ograf@fga.de>
6088 * frame-x.c (x_cde_destroy_callback): free the data
6089 (cde-start-drag-internal) corrected root position, 21.1 needs this
6090 hardcoded in Button events
6091 (offix-start-drag-internal) corrected root position
6093 1998-06-03 Kirill M. Katsnelson <kkm@kis.ru>
6095 * process-nt.c (signal_cannot_launch): Use signal_simple_error()
6098 1998-06-03 Kirill M. Katsnelson <kkm@kis.ru>
6100 * dialog-msw.c (button_width): Removed `inline' from the function
6103 1998-06-03 Rick Rankin <Rick_Rankin-P15254@email.mot.com>
6105 * frame-msw.c: add WS_VISIBLE flag to the first frame created.
6106 Note that adding this flag to subsequent frames causes problems.
6108 1998-06-03 Gunnar Evermann <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6110 * glyphs-eimage.c (png_instantiate) move 'struct
6111 png_memory_storage tbr' out of nested block to avoid dangling
6114 1998-06-02 Andy Piper <andyp@parallax.co.uk>
6117 * faces.c: rename 3d-object -> gui-element. add toolbar face which
6118 inherits from gui-element.
6120 * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
6121 with existing code, generate masks correctly.
6123 1998-06-03 P. E. Jareth Hein <jareth@camelot-soft.com>
6125 * glyphs-eimage.c: Changed included header for gifs to use
6126 Gifreader instead of giflib.
6128 * glyphs-x.c: removed the image-related functions that were
6129 moved into glyphs-eimage.
6131 1998-06-02 David Bush <david.bush@adnb.alcatel.com>
6133 * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
6134 if built without X Windows support.
6136 1998-06-02 Hrvoje Niksic <hniksic@srce.hr>
6138 * fns.c (Fconcat): Synch docstring with new reality.
6140 1998-06-03 SL Baur <steve@altair.xemacs.org>
6142 * frame.c: Remove reference to msdos.h (which is going away).
6143 Suggested by Hrvoje Niksic and Kirill Katsnelson.
6145 1998-06-02 P. E. Jareth Hein <jareth@camelot-soft.com>
6147 * glyphs-eimage.c (jpeg_instantiate): Fix handling of
6151 1998-05-30 Kirill M. Katsnelson <kkm@kis.ru>
6153 * events.h: Fixed commentary about misc-user scrollbar events.
6155 * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
6156 object as an event channel, instead of window object.
6157 (x_update_horizontal_scrollbar_callback): Ditto.
6159 1998-05-29 Andy Piper <andyp@parallax.co.uk>
6161 * ntplay.c (play_sound_data_1) new function. convert alloca data
6162 to malloc if necessary.
6163 (play_sound_file): if the file is not in our path then convert to
6166 1998-06-01 SL Baur <steve@altair.xemacs.org>
6168 * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
6169 * msdos.c (Frecent_doskeys): Ditto.
6171 * unexalpha.c (unexec): Reverse parameters in call to memcpy.
6172 Suggested by Reggie Perry <perry@zso.dec.com>
6174 * buffer.h: Eliminate size in declaration.
6176 1998-06-01 Olivier Galibert <galibert@pobox.com>
6178 * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
6180 1998-06-01 Kirill M. Katsnelson <kkm@kis.ru>
6182 * gui.c (gui_item_init): Changed the default value for config member
6183 from Qunbound to Qnil.
6185 1998-06-01 Greg Klanderman <greg@alphatech.com>
6187 * indent.c (vmotion_pixels): Don't #define abs().
6189 1998-05-30 Kirill M. Katsnelson <kkm@kis.ru>
6191 * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
6194 1998-05-30 Andy Piper <andyp@parallax.co.uk>
6196 * glyphs.h: add xbm declarations.
6198 * console.h: add xbm_instantiate_method device method.
6200 * glyphs.c (check_valid_xbm_inline) (xbm_validate)
6201 (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
6202 (xbm_possible_dest_types): moved here from glyphs-x.c. use
6203 locate_pixmap_file device method and read_bitmap_data_from_file
6204 instead of XmuReadBitmapDataFromFile.
6205 (xbm_instatntiate): make a device method.
6207 * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
6208 new function that just calls XmuReadBitmapDataFromFile.
6209 (x_xbm_instatntiate): device method from xbm_instantiate.
6211 * glyphs-msw.c (read_bitmap_data) (NextInt)
6212 (read_bitmap_data_from_file): new functions copied from Xmu
6214 (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
6215 inline data to an mswindows bitmap.
6216 (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
6217 (mswindows_xbm_instantiate): mswindows-ized versions of the X
6220 1998-05-30 Kirill M. Katsnelson <kkm@kis.ru>
6222 * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
6223 `modeline-visible-p'.
6224 Declared specifier lisp variables at the beginning oh the file
6227 * procimpl.h (struct process_methods): Changed semantics of
6228 create_process method so it accepts lisp strings instead of
6231 * process.c (Fstart_process_internal): Moved building of
6232 unix style argv from here to process-unix.c, ...
6234 * process-unix.c (unix_create_process): ... right here.
6236 * process-nt.c (nt_create_process): Changed this function to
6237 support new semantics, so avoided a GC problem.
6239 * events.c (Fmake_event): Document misc-user events properties.
6240 (Fmake_event): Do not allow arbitrary objects for channel property
6241 of misc-user events.
6242 (Fmake_event): Change misc-user event validation: it is function
6243 which is required, not button.
6245 * event-msw.c (mswindows_user_event_p): Recognize misc user events as
6247 (mswindows_enqueue_misc_user_event): Added function.
6248 (mswindows_bump_queue): Removed function.
6249 (mswindows_enqueue_magic_event): Support NULL HWND parameter.
6250 (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
6251 (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
6252 (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
6253 really nothing, which is my personal favorite thing.
6255 * console-msw.h: Removed prototype for mswindows_bump_queue().
6256 Added prototype for mswindows_enqueue_misc_user_event().
6258 * menubar-msw.c (mswindows_handle_wm_command): Use
6259 mswindows_enqueue_misc_user_event().
6261 * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6263 * dialog-msw.c (dialog_proc): Ditto.
6265 * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
6266 (mswindows_handle_scrollbar_event): Use frame, not window, for misc
6267 user events channel.
6269 1998-05-29 Greg Klanderman <greg@alphatech.com>
6271 * window.c (Fwindow_displayed_text_pixel_height): was relying on
6272 incorrect semantics of vmotion_pixels which has been fixed. don't
6273 use it anymore as it can't easily be used.
6275 * indent.c (vmotion_pixels): fix off by one bug moving up. also
6276 the motion was reported incorrectly if you tried to go past end of
6279 1998-05-30 Kirill M. Katsnelson <kkm@kis.ru>
6281 * toolbar.h: Removed misleading commentary, as Martin suggested.
6283 1998-05-30 Kirill M. Katsnelson <kkm@kis.ru>
6285 * lisp.h: Extern Qactivate_menubar_hook.
6287 * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
6290 1998-05-29 Andy Piper <andyp@parallax.co.uk>
6292 * glyphs-msw.c: use BPLINE macro.
6294 * select-msw.c (mswindows-selection-exists-p)
6295 (mswindows-delete-selection): doc string fixes.
6297 * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
6298 unpressable. warning elimination.
6300 1998-05-28 Martin Buchholz <martin@xemacs.org>
6302 * alloc.c (dbg_constants):
6305 Remove toolbar_data debugging code, since that lrecord has
6308 Wed May 27, 1998 Darryl Okahata <darrylo@sr.hp.com>
6310 * alloc.c: zap cached value of (user-home-directory), so that
6313 * buffer.c: From init_buffer(), separated out code that
6314 determined the initial directory for the *scratch* buffer, and
6315 put them into a function called "init_initial_directory()".
6316 The initial directory is now available as a global "char *"
6317 called initial_directory.
6319 * buffer.h: Added extern entries for initial_directory[] and
6320 init_initial_directory().
6322 * editfns.c: added new elisp function "user-home-directory",
6323 which basically returns getenv("HOME"), but attempts to use
6324 other values if $HOME isn't set.This may have to be tweaked in
6325 the future as, under Unix, "/" is used if $HOME isn't set (this
6326 probably should be set to the current directory). To support
6327 this, a new C function, "get_home_directory()", now exists,
6328 which returns the "home directory", as a "char *" string.
6330 * emacs.c: Rearrange NT initialization order so that
6331 environment/registry variables will be properly entered into
6332 Vprocess_enviroment.
6334 * fileio.c: replaced egetenv("HOME") with calls to the new
6335 get_home_directory().
6337 * lisp.h: Added function prototypes for uncache_home_directory()
6338 and get_home_directory(), along with lisp prototypes for
6339 Fuser_home_directory() and friends.
6341 * nt.c: replaced getenv("HOME") with calls to the new
6342 get_home_directory().
6344 * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
6345 warnings about getcwd(), etc. not having prototypes.
6347 1998-05-28 Kirill M. Katsnelson <kkm@kis.ru>
6349 * process-nt.c (send_signal): Emulate SIGHUP.
6350 (validate_signal_number): Ditto.
6352 * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
6353 remove MOD_SHIFT from ASCII characters.
6354 (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
6357 1998-05-24 Oliver Graf <ograf@fga.de>
6359 * frame-x.c (cde-start-drag-internal): added filename and multi-
6361 (x_cde_convert_callback) dito
6363 1998-05-26 Oliver Graf <ograf@fga.de>
6365 * frame-x.c: include event-mod.h also with CDE
6366 (x_cde_convert_callback) made the thing working
6367 (cde-start-drag-internal) also debugging
6369 1998-05-25 Hans Guenter Weigand <hgweigand@wiesbaden.netsurf.de>
6376 - add __OpenBSD__ where __NetBSD__ was found.
6377 - TODO: replace platform-specific conditional compilation by
6378 feature tests in configure.in.
6380 1998-05-15 Greg Klanderman <greg@alphatech.com>
6382 * window.c (Fwindow_displayed_text_pixel_height): New function.
6383 (syms_of_window): DEFSUBR it.
6385 * indent.c (Fvertical_motion_pixels): New function - request
6387 (vmotion_pixels): helper.
6388 (syms_of_indent): DEFSUBR.
6389 * lisp.h: declaration for vmotion_pixels().
6391 * indent.c (Fvertical_motion): Add optional third argument PIXELS,
6392 to request returning motion in pixels.
6393 (Fvertical_motion_pixels): Remove, functionality merged into
6395 * window.c (window_scroll): call Fvertical_motion with 3 arguments.
6396 (Fmove_to_window_line): ditto.
6397 * lisp.h: Change declaration for Fvertical_motion.
6399 * window.c: rename window-text-pixel-{height,width,edges} to
6400 window-text-area-pixel-*.
6402 1998-05-26 Gunnar Evermann <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6404 * tooltalk.c (vars_of_tooltalk) added staticpro for
6405 Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
6407 1998-05-27 Andy Piper <andyp@parallax.co.uk>
6409 * faces.c: create a new 3d_object_face, make modeline and
6410 vertical_divider faces fallback to this rather than the default.
6412 1998-05-21 Andy Piper <andyp@parallax.co.uk>
6414 * s/cygwin32.h: define charsets for cygwin.
6416 1998-05-25 Andy Piper <andyp@parallax.co.uk>
6418 * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
6419 and coordinates. resize bitmaps if we have already settled on a
6422 * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
6424 1998-05-25 Hrvoje Niksic <hniksic@srce.hr>
6426 * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6428 * menubar-msw.c (mswindows_handle_wm_command): Ditto.
6432 * gui-x.c (popup_selection_callback): Ditto.
6434 * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
6436 * gui.c (get_callback): Renamed to get_gui_callback.
6438 1998-05-17 Martin Buchholz <martin@xemacs.org>
6440 * glyphs.h: order rearrangement.
6442 * device-tty.c (tty_asynch_device_change): Warning suppression.
6443 * device-x.c (x_device_system_metrics): Warning suppression.
6444 Make Doc strings consistent with coding standards.
6446 1998-05-24 Martin Buchholz <martin@xemacs.org>
6448 * general.c: multiple definition of `Qicon'. general.c seems
6449 like a good home for Qicon.
6451 1998-05-20 Kirill M. Katsnelson <kkm@kis.ru>
6453 * This patch is to fix compilation warnings under Windows.
6455 * s/windowsnt.h: Encapsulate getpid with sys_getpid.
6456 Added prototypes for FSF inherited functions, with which XEmacs is
6457 sprinkled thoroughly.
6458 Removed some #if 0 code. Bracketed some more definitions, probably
6459 related to Visual C versions prior to 4 (we do not support them).
6461 * sysfloat.h (logb): Finally, get logb() prototyped.
6463 * sysfile.h: Added Windows specific includes.
6464 Removed old Windows specific code bracketed with #if 0.
6466 * sysdep.h: Added prototype for xrealpath().
6468 * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
6470 * symsinit.h: Added prototypes for syms_of_dired_mswindows,
6471 vars_of_dired_mswindows and init_ntproc (Grrr).
6473 * realpath.c: Added Windows specific include files.
6474 (xrealpath): Conditionalized declaration of some auto variables on
6475 S_IFLNK, to avoid warnings.
6477 * ntproc.c: Disabled some compiler warnings. This file is going to
6478 die, so I have not cleaned it up much.
6479 (set_process_dir): Const parameter.
6480 (Fwin32_short_file_name): Down CHECK_* macros to one argument.
6481 (Fwin32_long_file_name): Ditto.
6482 (Fwin32_set_process_priority): Ditto. Why didn't I remove these
6485 * nt.h: Added prototypes for set_process_dir and convert_time.
6487 * nt.c: More include files.
6488 (getpwnam): Consted char* argument.
6489 (get_emacs_configuration): Const return value.
6490 (opendir): Const argument.
6491 (stat): Casted converstion long->short.
6492 (stat): Removed ad hoc and questionable support for non-MSC compile.
6493 (sys_pipe): Removed unused auto variable.
6494 (_sys_read_ahead): Removed calls to DebPrint.
6495 (sys_read): Ditto, in 2 places.
6496 (term_ntproc): Added unused int parameter to signal handler, to
6497 avoid a warning when compiling a call to signal().
6498 (msw_sigset): Properly return old signandler or NULL instead of void.
6500 * floatfns.c (Flogb): Casted arguments to unary minus to signed.
6502 * gmalloc.c (morecore): Ditto.
6503 (_free_internal): Ditto.
6505 * lread.c (parse_integer): Ditto.
6507 * dired-msw.c: Added several include files.
6509 * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
6510 of Compilers to Shut Up.
6512 * callproc.c: Added #includes to suppress warnings under Windows.
6513 (init_callproc): Removed #if0'ed code and unused variables.
6515 1998-05-25 Andy Piper <andyp@parallax.co.uk>
6517 * device-msw.c (mswindows_device_system_metrics): do planes in a
6518 way consistent with X.
6520 * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
6521 use SetPixel, use DIBits functions.
6522 (xpm_to_eimage): frob colors more closely like xpm deos.
6524 * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
6525 to be closer to X version.
6527 * event-msw.c: use tooltip string directly.
6529 * redisplay-msw.c: reinstate Kirill's bg pixmap change.
6531 * objects-msw.c: frob rgb colors that only Kyle uses.
6533 * dialog-msw.c (button_width): INLINE -> inline.
6535 1998-05-23 SL Baur <steve@altair.xemacs.org>
6537 * getloadavg.c (getloadavg): Fix typo.
6539 1998-05-23 Kirill M. Katsnelson <kkm@kis.ru>
6541 * objects-msw.c (mswindows_initialize_font_instance): Added support
6542 for font character sets.
6543 Replaced 'XXX' with '####' in comments throughout the file.
6545 1998-05-23 Kirill M. Katsnelson <kkm@kis.ru>
6547 * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
6548 console_type_create_dialog_mswindows(), to initialize Windows dialog
6551 * symsinit.h: Prototyped the above functions.
6553 * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
6554 checks to dialog.c...
6556 * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
6557 device must support dialog boxes, and the descriptor must supply at
6560 * dialog-msw.c: New file, dialogs for Windows.
6562 1998-05-21 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
6564 * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
6565 (Fldap_search_internal): Removed unused variable `err'
6567 * eldap.h: Moved Lisp_LDAP declaration here instead of using a
6570 1998-05-17 Martin Buchholz <martin@xemacs.org>
6572 * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
6573 defined. Therefore there is no need to handle the case when
6574 HAVE_LDAP is undefined. Similarily, there is no reason to have
6575 any code wrapped within `#ifdef emacs', since this code is only
6576 useful within an emacs. This simplifies the code significantly.
6578 * inline.c: Include eldap.h only if HAVE_LDAP.
6579 * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
6582 1998-05-21 Kirill M. Katsnelson <kkm@kis.ru>
6584 * unexnt.c (copy_executable_and_dump_data_section): Suppress
6585 printing dump stats when building without DEBUG_XEMACS.
6586 (dump_bss_and_heap): Ditto.
6588 1998-05-21 Andy Piper <andyp@parallax.co.uk>
6590 * gnuclient.c: don't suppress window system if there is no display
6591 and we are running under mswindows. send 'mswindows device type if
6592 we are in this situation.
6594 1998-05-20 Andy Piper <andyp@parallax.co.uk>
6597 * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
6599 * glyphs-msw.c: change cursor imgae type name to resource. Fix
6602 1998-05-20 Kirill M. Katsnelson <kkm@kis.ru>
6604 * EmacsFrame.c (Xt_StringToScrollBarPlacement): Added support for
6605 {top,bottom}-{left,right} values in addition to
6606 {top,bottom}_{left,right}.
6608 1998-05-18 Hrvoje Niksic <hniksic@srce.hr>
6610 * fileio.c (Fmake_temp_name): Remove unreached code.
6612 * process-nt.c (validate_signal_number): Use
6613 signal_simple_error().
6615 1998-05-19 Martin Buchholz <martin@xemacs.org>
6618 * sound.c (vars_of_sound):
6619 * sysdep.c (reset_sigio_on_device):
6620 * window.c (window_bottom_gutter_height):
6621 unexhp9k800.c:258: warning: implicit declaration of function
6622 `calculate_checksum'
6623 sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
6624 sysdep.c:1012: warning: unused variable `owner'
6625 window.c:993: warning: `window_right_toolbar_width' defined but not used
6627 1998-05-19 Andy Piper <andyp@parallax.co.uk>
6629 * glyphs-msw.c (mswindows_create_resized_mask)
6630 (mswindows_create_resized_bitmap): new funnctions split out from
6631 mswindows_resize_dibitmap_instance.
6633 * glyphs-msw.h: declare new resize functions.
6635 * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
6636 functions so that the original bitmaps are preserved.
6638 * sheap.c: fixup static heap exhausted error to avoid FAQs.
6640 * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
6641 color if we are trying to output 0 depth bg pixmap.
6643 * scrollbar-msw.c: warning elimination.
6645 1998-05-18 Martin Buchholz <martin@xemacs.org>
6647 * frame-x.c (x_update_frame_external_traits): Start preprocessor
6648 directives in column 1.
6650 * search.c (skip_chars): Avoid using xzero with arrays, since some
6651 compilers get confused by the construct &array.
6653 1998-05-18 Kirill M. Katsnelson <kkm@kis.ru>
6656 * objects-msw.c: Changed the charset value for a new font from
6657 "don't care" to "ansi".
6659 * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
6661 1998-05-18 Kirill M. Katsnelson <kkm@kis.ru>
6663 * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
6664 modifier on control chars.
6665 Use IsCharAlpha() instead of isaplha().
6667 1998-05-19 Kazuyuki IENAGA <ienaga@jsys.co.jp>
6669 * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
6671 1998-05-18 Kirill M. Katsnelson <kkm@kis.ru>
6673 * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
6674 charset when creating font.
6675 (mswindows_initialize_color_instance): Do not create brush along
6677 (mswindows_finalize_color_instance): Do not delete it then.
6679 * objects-msw.h (struct mswindows_color_instance_data): Removed
6680 brush slot, and corresponding accessor macro.
6682 1998-05-18 Kirill M. Katsnelson <kkm@kis.ru>
6684 * toolbar.c: Removed toolbar_data lrecord implementation.
6685 (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
6686 with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
6687 (compute_frame_toolbar_buttons): Ditto.
6688 (CHECK_TOOLBAR): Ditto.
6689 (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
6690 (update_frame_toolbars): Do not check for changed buffer
6691 here. Toolbar information is provided by cached specs in
6692 windows. The check for buffer is eliminated becuase toolbars are
6693 marked changed in set_frame_selected_window() in frame.c
6694 Added check for changed toolbars geometry.
6695 (compute_frame_toolbars_data): Removed unused second parameter;
6696 Adjusted callers of this static function throughout the file.
6697 (init_frame_toolbars): Initialize current_toolbar_size.
6698 (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
6699 what is its current expansion, for clarity.
6700 (init_frame_toolbars): Ditto.
6701 (init_device_toolbars): Ditto.
6702 (init_global_toolbars): Ditto.
6704 * toolbar.h: Removed definition of toolbar_data lrecord.
6705 Added accessor macros FRAME_TOOLBAR_BUTTONS and
6706 FRAME_CURRENT_TOOLBAR_SIZE.
6707 Added macro DEVICE_SUPPORTS_TOOLBARS_P.
6709 * toolbar-x.c (x_output_toolbar): The same change as in
6711 (x_output_toolbar): Ditto.
6712 (x_redraw_exposed_toolbar): Ditto.
6714 * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
6715 buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
6716 (mswindows_output_toolbar): Ditto.
6717 (mswindows_output_toolbar): Ditto.
6719 * frame.c (mark_frame): Removed marking of arrays, according to
6720 frameslots.h change.
6721 (nuke_all_frame_slots): Ditto.
6722 (set_frame_selected_window): Mark toolbars changed when
6723 last_nonminibuf_window changes.
6725 * frame.h (struct frame): Moved some slots to frameslots.h.
6726 Added current_toolbar_size array.
6727 Changed references from toolbar_data to toolbar_buttons in macros
6728 FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
6729 FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
6730 FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
6732 * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
6733 Moved arrays of lisp objects here from frame.h: toolbar_size,
6734 toolbar_visible_p, toolbar_border_width.
6735 Removed toolbar_data slot and added toolbar_buttons.
6737 1998-05-17 Kirill M. Katsnelson <kkm@kis.ru>
6739 * symsinit.h: Externed syms_of_process_nt()
6741 * emacs.c (main_1): Call syms_of_process_nt()
6743 * process-nt.c: Quote process arguments by a call to Lisp function
6744 `nt-quote-process-args'.
6745 (syms_of_process_nt): New function.
6746 (nt_send_process): Flush data stream after each write, to avoid
6747 leaving buffered data.
6748 (nt_send_process): When blocked on process output, wait for
6749 process to slurp more for progressively increasing time intervals.
6751 1998-05-17 Martin Buchholz <martin@xemacs.org>
6753 * window.c (have_undivided_common_edge): Make file-local function
6755 (map_windows): Return 0 if all map functions successful.
6758 * winslots.h: Use unlikely names for local variables in macros to
6759 avoid shadowing warnings.
6761 1998-05-17 Andy Piper <andyp@parallax.co.uk>
6763 * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
6764 so that we re-output if the toolbar size has changed.
6766 1998-05-17 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
6768 * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
6770 * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
6772 * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
6775 1998-05-16 Kirill M. Katsnelson <kkm@kis.ru>
6777 * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
6778 get bitmap manifest constants defined.
6780 * console-msw.h: Include system files in angle brackets, not in
6783 * window.c (specifier_vars_of_window): Fixed a typo in
6784 `vertical-divider-line-width' docstirng.
6786 1998-05-16 Olivier Galibert <galibert@pobox.com>
6788 * line-number.c (delete_invalidate_line_number_cache): Use an
6790 (buffer_line_number): Remove dangerous, plain wrong when using
6791 64bits emacs ints, cast.
6793 * insdel.c (buffer_delete_range): Use an EMACS_INT.
6795 * cmds.c (Fforward_line): Use EMACS_INTs.
6797 * search.c (bi_scan_buffer): Change to use EMACS_INTs.
6798 (scan_buffer): Ditto.
6799 (bi_find_next_newline_no_quit): Remove useless cast.
6800 (find_next_newline_no_quit): Ditto.
6801 (find_next_newline): Ditto.
6802 (find_before_next_newline): Use an EMACS_INT.
6804 * lisp.h: Change scan_buffer to pass EMACS_INTs.
6806 1998-05-16 Hrvoje Niksic <hniksic@srce.hr>
6808 * menubar-msw.c (mswindows_handle_wm_command): Ditto.
6810 * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6812 * gui-x.c (popup_selection_callback): Use it.
6814 * gui.h (get_callback): Declare it.
6816 * gui.c (get_callback): New function.
6818 1998-05-15 SL Baur <steve@altair.xemacs.org>
6820 * window.c (have_undivided_common_edge): Guard scrollbar specific
6822 (window_needs_vertical_divider_1): Ditto.
6824 1998-05-16 Hrvoje Niksic <hniksic@srce.hr>
6826 * emacs.c (decode_path): Eliminate compiler warning.
6827 (Fdecode_path): Renamed to Fsplit_path.
6828 (Fsplit_string_by_char): New function.
6830 1998-05-14 Damon Lipparelli <lipp@primus.com>
6832 * winslots.h: close comment
6834 1998-05-16 Kirill M. Katsnelson <kkm@kis.ru>
6836 * callproc.c: Removed declared and unused variable Qbuffer_file_type.
6838 * bufslots.h: Removed buffer_file_type slot.
6840 * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
6842 (complex_vars_of_buffer): Removed buffer-file-type variable and
6843 its default reference.
6845 1998-05-15 Kirill M. Katsnelson <kkm@kis.ru>
6847 * faces.c (complex_vars_of_faces): Defined
6848 Vvertical_divider_face.
6849 (vars_of_faces): Staticpro it.
6851 * faces.h: Externed Vvertical_divider_face.
6853 * redisplay-x.c (x_output_vertical_divider): Use
6854 Vvertical_divider_face to draw the divider instead of modeline
6857 * redisplay-msw.c (mswindows_output_vertical_divider): Draw
6858 divider face using Vvertical_divider_face background.
6859 Fix drawing spacing gaps around the divider.
6861 1998-05-14 Didier Verna <verna@inf.enst.fr>
6863 * redisplay-x.c (x_output_vertical_divider): removed hard-wired
6864 values for the vertical divider line width and spacing. Use the
6865 cached values from the window structure instead.
6866 (x_divider_width): ditto.
6868 * window.c (specifier_vars_of_window): new specifiers:
6869 vertical-divier -line-width and -spacing.
6870 (vertical_divider_global_width_changed): formerly known as
6871 vertical_divider_shadow_thickness_changed.
6873 * winslots.h: new slots: vertical_specifier _line_width and
6874 _spacing. Plus corrected a comment typo.
6876 1998-05-15 Kirill M. Katsnelson <kkm@kis.ru>
6878 * window.h: Declared window_divider_width().
6880 * console-stream.c (stream_divider_width): Removed method.
6881 (console_type_create_stream): And declaration for it.
6883 * redisplay.c (pixel_to_glyph_translation): Use
6884 window_divider_width() instead of divider_width redisplay method.
6885 (pixel_to_glyph_translation): Fix top divider edge calculation
6886 when scrollbar is on top.
6888 * window.c (window_divider_width): New function, an outphaser for
6889 divider_width redisplay method.
6890 (window_right_gutter_width): Use it.
6891 (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
6892 specifiers, set fallback values differently on TTYs, and document
6893 the behavior of these on TTYs in the docstrings.
6895 * scrollbar.c (update_scrollbar_instance): Use
6896 window_divider_width() instead of divider_width redisplay method.
6898 * console.h (struct console_methods): Removed divider_width_method.
6900 * redisplay-tty.c (tty_divider_width): Removed device method.
6901 (console_type_create_redisplay_tty): Removed definition for it.
6902 (tty_output_vertical_divider): Respect the value returned by
6903 window_divider_width thus divider line width specification.
6905 * redisplay-msw.c (mswindows_divider_width): Removed device method.
6906 (console_type_create_redisplay_mswindows): Removed definition for it.
6907 (mswinodws_output_vertical_divider): Respect the value returned by
6908 window_divider_width thus divider line width specification.
6910 1998-05-15 Andy Piper <andyp@parallax.co.uk>
6912 * toolbar-msw.c: guess toolbar frame size a bit more accurately.
6914 1998-05-15 Andy Piper <andyp@parallax.co.uk>
6916 * glyphs-msw.c: resource loading implementation.
6917 (cursor_normalize): new function.
6918 (cursor_validate): ditto.
6919 (cursor_instantiate): ditto.
6920 (cursor_name_to_resource): ditto.
6921 (cursor_possible_dest_types): ditto.
6922 (check_valid_symbol): ditto.
6923 (check_valid_string_or_int): ditto.
6925 1998-05-14 Martin Buchholz <martin@xemacs.org>
6927 * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
6930 * process-unix.c (process_signal_char): Use VSUSP instead of
6931 non-standard VSWTCH. Always prefer VSUSP to VSWTCH.
6933 1998-05-14 Kirill M. Katsnelson <kkm@kis.ru>
6935 * specifier.c (specifier_instance): Change locale precedence of
6936 instantiation so window locale has higher priority than buffer
6938 (Fspecifier_instance): Reflect this in docstring.
6939 (Fadd_spec_list_to_specifier): Ditto.
6940 (Fadd_spec_to_specifier): Ditto.
6941 (Fremove_specifier): Ditto.
6943 1998-05-15 Kirill M. Katsnelson <kkm@kis.ru>
6945 ** Dialog separation into a device method from Andy Piper
6947 * emacs.c (main_1): Call console_type_create_dialog_x().
6949 * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
6950 into this device method.
6951 (console_type_create_dialog_x): New function.
6953 * dialog.c (Fpopup_dialog_box): New function.
6954 (syms_of_dialog): Defsubr it.
6956 * console.h (struct console_methods): Declared
6957 popup_dialog_box_method().
6959 * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
6961 1998-05-14 Oliver Graf <ograf@fga.de>
6963 * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
6964 * frame-x.c (x_cde_transfer_callback): checked for merge errors
6966 1998-05-13 Oliver Graf <ograf@fga.de>
6968 * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
6970 1998-05-15 Kirill M. Katsnelson <kkm@kis.ru>
6972 * console.h (device_metrics): Removed dbcs, input-method-editor
6973 and right-to-left metrics.
6975 * device.c (Fdevice_system_metric): Ditto.
6976 (Fdevice_system_metrics): Ditto.
6977 (syms_of_device): Ditto.
6978 (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
6981 1998-05-14 Hrvoje Niksic <hniksic@srce.hr>
6983 * line-number.h (mark_line_number_cache): Remove unused
6986 * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
6987 (get_nearest_line_number): Simplify.
6988 (add_position_to_cache): Make the old marker point nowhere.
6990 1998-05-14 Kirill M. Katsnelson <kkm@kis.ru>
6992 ** Renamed window-divider-map => vertical-divider-map
6993 and event-over-divider-p => event-over-vertical-divider-p,
6994 in the following files/functions:
6996 * events.c (Fevent_over_divider_p):
6997 * keymap.c (get_relevant_keymaps):
7000 * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
7002 * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
7004 1998-05-14 Kirill M. Katsnelson <kkm@kis.ru>
7006 * window.c (vertical_divider_changed_in_window): Renamed so.
7007 (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
7008 (window_needs_vertical_divider_1): Decide whether we need it based
7009 on the value of the above specifier. If separators are unwanted,
7010 put them only if there's no scrollbar between this window and its
7012 (have_undivided_common_edge): New function, helper for the above.
7013 (window_needs_vertical_divider): Return either a cached value,
7014 or clauclate and cache one.
7015 (invalidate_vertical_divider_cache_in_window): Implemented.
7016 (map_windows): Changed return type to int, return the value from
7019 * window.h: Prototype invalidate_vertical_divider_cache_in_window.
7020 (struct window): Added need_vertical_divider_p and
7021 need_vertical_divider_valid_p.
7023 * winslots.h: Added vertical_divider_draggable_p slot.
7025 * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
7026 (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
7028 * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
7030 * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
7031 invalidate_vertical_divider_cache_in_frame().
7034 1998-05-14 Andy Piper <andyp@parallax.co.uk>
7036 * toolbar-msw.c: provide correct parameters to TB_SETROWS.
7038 * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
7039 masks correctly and don't select 0.
7041 1998-05-14 Kirill M. Katsnelson <kkm@kis.ru>
7043 * winslots.h: New file, declaration of some struct window and
7044 struct saved_window members.
7046 * window.h (struct window): Include it, with required preprocessor
7049 * window.c (mark_window): Ditto.
7050 (allocate_window): Ditto.
7051 (struct saved_window): Ditto.
7052 (mark_window_config): Ditto.
7053 (saved_window_equal): Ditto.
7054 (Fset_window_configuration): Ditto.
7056 1998-05-14 Kirill M. Katsnelson <kkm@kis.ru>
7058 * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
7060 1998-05-12 Didier Verna <verna@inf.enst.fr>
7062 * redisplay-x.c (x_output_vertical_divider): draw shadows around
7063 the divider line. The shadow thickness is currently
7064 hard-wired. This will probably be turned into a specifier soon.
7066 1998-05-12 Didier Verna <verna@inf.enst.fr>
7068 * console.h (struct console_methods): the divider_width console
7069 method now requires a struct window * argument.
7071 * redisplay-x.c (x_divider_width): ditto. Plus remove
7072 X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
7073 (x_output_vertical_divider): give a depressed look when the shadow
7074 thickness is negative.
7076 * console-stream.c (stream_divider_width): pass a struct window *
7079 * redisplay-tty.c (tty_divider_width): ditto.
7081 * window.c (window_right_gutter_width): totdi.
7083 * redisplay.c (generate_modeline): ittod.
7085 * scrollbar.c (update_scrollbar_instance): ttido.
7087 * redisplay-msw.c (mswindows_divider_width): ottid.
7088 WARNING: this enables to compile, but the feature is not functional.
7090 * window.h (struct window): new field
7091 vertical_divider_shadow_thickness.
7093 * window.c (specifier_vars_of_window): new specifier
7094 vertical-divider-shadow-thickness.
7095 (vertical_divider_shadow_thickness_changed): new function to
7096 inform redisplay that the window has changed.
7097 (mark_window): handle new field vertical_divider_shadow_thickness
7099 (allocate_window): ditto.
7100 (saved_window_equal): toddi.
7101 (Fset_window_configuration): totid.
7102 (save_window_save): ttdio.
7103 (struct saved_window): new field vertical_divider_shadow_thickness.
7105 1998-05-14 Kirill M. Katsnelson <kkm@kis.ru>
7107 * device-msw.c (mswindows_device_system_metrics): Support a deluge
7110 1998-05-12 Oliver Graf <ograf@fga.de>
7112 * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
7113 * event-Xt.c (x_event_to_emacs_event): C++ compability
7115 1998-05-14 Hrvoje Niksic <hniksic@srce.hr>
7117 * emacs.c (Fdecode_path): Default SEPCHAR to value of
7120 1998-05-14 Hrvoje Niksic <hniksic@srce.hr>
7122 * emacs.c (vars_of_emacs): Do it here; change the meaning of
7125 * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
7127 1998-05-14 Hrvoje Niksic <hniksic@srce.hr>
7129 * emacs.c (decode_path_1): New function.
7130 (decode_path): Use it.
7131 (Fdecode_path): Renamed from Fdecode_path_internal; use
7134 1998-05-12 Hrvoje Niksic <hniksic@srce.hr>
7136 * macros.c (Fzap_last_kbd_macro_event): New function.
7137 (Fend_kbd_macro): Remove REMOVE_LAST kludge.
7139 1998-05-10 Andy Piper <andyp@parallax.co.uk>
7141 * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
7142 multiple bitmaps are output vertically as well as horizontally.
7143 * (mswindows_output_dibitmap): don't cope with bitmap boundaries
7144 crossing lines this is handled by
7145 mswindows_output_dibitmap_region.
7147 1998-05-12 Martin Buchholz <martin@xemacs.org>
7149 * inline.c: Include eldap.h
7151 * menubar-x.c (x_update_frame_menubar_internal):
7152 Remove: unused variable `container'
7154 1998-05-11 Martin Buchholz <martin@xemacs.org>
7156 * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
7157 Unfortunately, the resulting temacs still cannot dump.
7159 * symbols.c (symbol_is_constant):
7160 (verify_ok_for_buffer_local):
7161 -Wswitch Warning suppression - add default case to switches.
7163 * redisplay.c (decode_mode_spec): Remove unused variables,
7164 Replace Fcoding_system_property (codesys, Qmnemonic) with
7165 XCODING_SYSTEM_MNEMONIC (codesys);
7166 Fcoding_system_property is for users.
7172 Change empty docstrings into no doc strings at all.
7173 Fix bogus FSF-format docstrings.
7176 Standardize docstrings.
7179 Explain problems with matherr.
7181 * glyphs.c: make DEFUNs etags-readable, i.e. single-line
7184 if BROKEN_SIGIO, then SIGIO wants to be undefined.
7185 if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
7186 Fix the weird resultant interaction (causes windows problems)
7190 Take new EMACSBOOTSTRAPLOADPATH into account.
7191 Update documentation strings
7194 - Adjust for luser's CDPATH being set to something weird.
7195 - Take into account bash 2.02's tendency to print the cwd when
7196 using CDPATH. Always use `cd ./foo' instead of `cd foo'.
7197 - fix the run-temacs target to use $(DUMPENV)
7198 - fix the run-puremacs target to use $(DUMPENV)
7199 - fix the `depend' target to properly $(RM) the right files
7200 - Generate a better TAGS file for XEmacs' lisp code using
7201 hand-crafted regexps.
7202 - Use standard coding conventions for modules/Makefile.in
7204 1998-05-12 Didier Verna <verna@inf.enst.fr>
7206 * redisplay.c: removed the scrolling modeline code that didn't
7207 make it for 21.0. To be continued ...
7209 1998-05-13 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
7211 * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
7212 and empty string inputs.
7214 1998-05-12 Hrvoje Niksic <hniksic@srce.hr>
7216 * redisplay-x.c (x_output_vertical_divider): Fixed typo.
7218 1998-05-10 Oliver Graf <ograf@fga.de>
7220 * event-stream.c (enqueue_misc_user_event_pos): created
7221 * lisp.h (enqueue_misc_user_event_pos): prototype added
7222 * frame-x.c (x_cde_transfer_callback): debug code plus API changes
7223 * emacs.c: call vars_of_dragdrop
7224 * dragdrop.c (vars_of_dragdrop): provide dragdrop
7226 1998-05-11 Oliver Graf <ograf@fga.de>
7228 * frame-x.c (x_cde_transfer_callback): return at correct pos
7229 * event-Xt.c (x_event_to_emacs_event): changed format of drop
7230 object for MIME (see comment in dragdrop.c)
7231 * dragdrop.c: API change documented in comment
7232 removed provide of dragdrop [is provided by dragdrop.el]
7234 1998-05-12 Kirill M. Katsnelson <kkm@kis.ru>
7236 * window.c (window_needs_vertical_divider): Enable vertical
7237 dividers for every non-rightmost window.
7238 (window_left_gutter_width): Left gutter consists of mythical
7239 toolbar and a virtual scrollbar.
7240 (window_right_gutter_width): The right one may have a divider
7243 * scrollbar.c (update_scrollbar_instance): Position vertical
7244 scrollbar left to divider if the latter present.
7246 * redisplay.h: Declared OVER_DIVIER constant.
7248 * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
7251 * redisplay-x.c (x_output_vertical_divider): Output divider along
7252 the right side of the window, down to window bottom. Swapped
7253 foreground and background colors so it is visible by default.
7255 * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
7256 stick the divider to the right window side.
7258 * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
7260 (mswindows_divider_width): Ask system for user preferred value.
7261 (mswindows_output_vertical_divider): Always output the divider on
7262 the right side of a window, down to bottom.
7264 * keymap.c (get_relevant_keymaps): Route mouse button events which
7265 happened over a window divider through window-divider-map.
7266 (Fkey_binding): Documented that in the docstring.
7267 Defined the variable Vwindow_divider_map.
7269 * events.c (Fevent_over_divider_p): Added this function.
7271 * events.h: EXFUNed it.
7273 1998-05-12 Kirill M. Katsnelson <kkm@kis.ru>
7275 * toolbar.c (update_frame_toolbars): Re-layout frame windows if
7276 toolbar geometry is suspected to change.
7278 1998-05-11 Jonathan Harris <jhar@tardis.ed.ac.uk>
7282 Condition dnd and dde code on HAVE_DRAGNDROP.
7284 1998-05-11 Hrvoje Niksic <hniksic@srce.hr>
7286 * events.c (format_event_object): Print space as SPC etc.
7288 1998-05-11 Hrvoje Niksic <hniksic@srce.hr>
7290 * print.c (print_internal): In the default case, abort() if
7291 ERROR_CHECK_TYPECHECK.
7293 * fileio.c (Fmake_temp_name): Doc fix.
7295 1998-05-10 Hrvoje Niksic <hniksic@srce.hr>
7297 * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
7299 * undo.c (Fprimitive_undo): Fixed typo.
7301 1998-05-11 Hrvoje Niksic <hniksic@srce.hr>
7303 * fns.c (concat): Signal error on integer argument.
7305 1998-05-10 Kirill M. Katsnelson <kkm@kis.ru>
7307 * console.h (device_metrics): Prefixed each constatnt with DM_
7309 * device.c: (Fdevice_system_metric): Renamed so from plural form
7310 (metrics); Changed parameters order and added DEFAULT parameter;
7311 Unabbreviated some metric constants; Fixed and untabified doc string.
7312 (Fdevice_system_metrics): Added. Returns a plist of all provided
7315 * device-msw.c (mswindows_device_system_metrics): Renamed
7316 device_metrics enum constants.
7317 Return Qunbound instead of Qnil.
7319 * device-tty.c (tty_device_system_metrics): Ditto.
7321 * device-x.c (x_device_system_metrics): Ditto.
7323 1998-05-10 Andy Piper <andyp@parallax.co.uk>
7325 * redisplay-msw.c: implement background pixmaps (really!). Make
7326 sure bg color is transparent if we have bg pmaps.
7327 * (mswindows_output_string) (mswindows_clear_region): output bg
7329 * (mswindows_output_dibitmap_region): new function.
7330 * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
7331 the bg color rather than transparently.
7333 * toolbar-msw.c: use masks if they exist.
7335 * glyphs-msw.c: set up masks correctly.
7337 * event-msw.c: typedef SOCKET if cygwin and not msg select().
7339 1998-05-10 Hrvoje Niksic <hniksic@srce.hr>
7341 * regex.c (re_match_2_internal): Check for quit.
7343 1998-05-10 Hrvoje Niksic <hniksic@srce.hr>
7345 * frame.c (Ffocus_frame): New function.