1 2008-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3 * concord.c (Fconcord_object_put): Check argument FEATURE is a
6 2008-09-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
8 * text-coding.c (struct decoding_stream): Add new member
9 `bom_flag' in XEmacs CHISE.
10 (reset_decoding_stream): Ignore U+FEFF in the beginning of stream
13 2008-09-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
15 * mule-charset.c: Move definition of `=jis-x0208@1978' to
16 lisp/mule/mule-conf.el.
18 2008-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
20 * mule-charset.c (Qpartial): New variable in XEmacs CHISE.
21 (make_charset): Add new argument `partial'.
22 (Fmake_charset): Add new property 'partial in XEmacs CHISE.
23 (Fmake_reverse_direction_charset): Modify for `make_charset'.
24 (syms_of_mule_charset): Add new builtin symbol `partial' in XEmacs
26 (complex_vars_of_mule_charset): Modify for `make_charset'; specify
27 `=jis-x0208' as a partial coded-charset.
29 2008-08-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
31 * text-coding.c (decode_add_er_char): Fix problem when a character
32 represented by an entity-reference is not defined.
34 2008-06-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
36 * char-ucs.h, chartab.c, fns.c, mule-charset.c: Rename Qmap_* to
39 2007-09-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
41 * mule.c (vars_of_mule): Update `xemacs-chise-version' to 0.24
44 2006-06-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
46 * concord.c (Fconcord_object_put): Add reversed links when FEATURE
47 is a relation feature.
49 2006-06-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
51 * chartab.c (syms_of_chartab): Define
52 `{<-|->}{subsumptive|denotational}' when HAVE_CONCORD is defined.
54 * chartab.h (Q_denotational): New extern when UTF2000 or
55 HAVE_CONCORD is defined.
56 (Q_denotational_from): Likewise.
57 (Q_subsumptive): Likewise.
58 (Q_subsumptive_from): Likewise.
60 2006-06-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
62 * concord.c (concord_object_put): New function.
63 (Fconcord_object_put): Use `concord_object_put'.
65 2006-06-01 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
67 * concord.c (Fconcord_define_object): New function.
68 (syms_of_concord): Add new builtin function
69 `concord-define-object'.
71 2006-05-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
73 * mule.c (vars_of_mule): Update `xemacs-chise-version' to 0.23
76 2006-04-25 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
78 * concord.c: Add EXFUN for Fconcord_object_get.
79 (Vconcord_genre_object_hash_table): New variable.
80 (concord_genre_cache_get_object): New function.
81 (concord_genre_cache_put_object): New function.
82 (Fconcord_make_object): Use object cache; put object-ID into `=id'
84 (Fconcord_object_put): Call `concord_index_sync' after
85 `concord_index_strid_put_obj'.
86 (vars_of_concord): Setup Vconcord_genre_object_hash_table.
88 2006-04-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
90 * concord.c (Fconcord_decode_object): Do GCPRO for
92 (func_for_each_object): Likewise; do GCPRO for
93 for_each_object_closure->function.
94 (Fconcord_foreach_object_in_feature): Use GCPRO4 for
95 for_each_object_closure->function, for_each_object_closure->genre,
96 for_each_object_closure->ds and for_each_object_closure->ret.
97 (concord_object_validate): Do GCPRO for Fconcord_make_object.
99 2006-04-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
101 * concord.c: Add EXFUNs for Fconcord_decode_object and
103 (Fconcord_make_object): Change order of arguments.
104 (Fconcord_decode_object): Modify for Fconcord_make_object.
105 (func_for_each_object): Likewise.
106 (concord_object_validate): Likewise.
107 (concord_object_instantiate): Use GCPRO2 for `data' and `retval'.
109 2006-04-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
111 * concord.c (Fconcord_object_put): Setup index for `=FOO' feature.
113 2006-04-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
115 * concord.c (Fconcord_decode_object): Try to use readable print
116 form as a key of Concord-index.
117 (Fconcord_object_get): Try to use readable print form as an ID of
119 (Fconcord_object_put): Try to use readable print form as an ID of
120 Concord-object and a feature value.
121 (Fconcord_object_spec): Try to use readable print form as an ID of
124 2006-04-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
126 * concord.c (print_concord_object): Support readable form.
128 2006-04-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
130 * emacs.c (main_1): Call `structure_type_create_concord' when
131 HAVE_CONCORD is defined.
133 * symsinit.h (structure_type_create_concord): New prototype.
135 * concord.c (Qconcord_object): New variable.
138 (Fconcord_ds_directory): Use <char*> instead of <unsigned char*>
140 (add_feature_to_list_mapper): Use <char*> instead of <unsigned
141 char*> for genre-name.
142 (Fconcord_feature_list): Likewise.
143 (Fconcord_make_object): Likewise.
144 (Fconcord_decode_object): Likewise; use <char*> instead of
145 <unsigned char*> for feature_name and strid.
146 (Fconcord_object_get): Use <char*> instead of <unsigned char*> for
147 c_obj and feature_name.
148 (Fconcord_object_put): Likewise; use <char*> instead of <unsigned
150 (struct closure_for_object_spec): Use <char*> instead of <unsigned
151 char*> for member `object_id'.
152 (add_feature_to_spec_mapper): Use <char*> instead of <unsigned
153 char*> for feature-name.
154 (Fconcord_object_spec): Use <char*> instead of <unsigned char*>
156 (func_for_each_object): Cast to avoid warnings.
157 (Fconcord_foreach_object_in_feature): Use <char*> instead of
158 <unsigned char*> for genre_name and feature_name.
159 (concord_name_validate): New function.
160 (concord_object_validate): Likewise.
161 (concord_object_instantiate): Likewise.
162 (syms_of_concord): Add new builtin symbols `concord-object',
164 (structure_type_create_concord): New function.
166 2006-04-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
168 * concord.c (Vconcord_ds_hash_table): New variable.
169 (Vconcord_genre_hash_table): New variable.
170 (Fconcord_open_ds): Use Vconcord_ds_hash_table.
171 (Fconcord_ds_directory): New function.
172 (Fconcord_assign_genre): New function.
173 (Fconcord_genre_directory): New function.
174 (Fconcord_genre_ds): New function.
175 (Fconcord_feature_list): Allow to omit `ds'.
176 (Fconcord_make_object): Likewise.
177 (Fconcord_decode_object): Likewise.
178 (Fconcord_foreach_object_in_feature): Likewise.
179 (syms_of_concord): Add new builtin function Fconcord_ds_directory,
180 Fconcord_assign_genre, Fconcord_genre_directory and
182 (vars_of_concord): Setup Vconcord_ds_hash_table and
183 Vconcord_genre_hash_table.
185 2006-02-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
187 * concord.c (struct closure_for_each_object): Add new member
189 (func_for_each_object): Setup the return value to
190 `for_each_object_closure->ret'.
191 (Fconcord_foreach_object_in_feature): If FUNCTION returns non-nil,
192 returns the value instead of Qt.
194 2005-12-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
196 * concord.c: New file.
198 2005-12-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
200 * lrecord.h (enum lrecord_type): Add `lrecord_type_concord_ds' and
201 `lrecord_type_concord_object'.
203 2005-09-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
205 * symsinit.h (syms_of_concord): New prototype.
206 (vars_of_concord): New prototype.
208 * emacs.c (main_1): Setup symbols and variable about concord if
209 HAVE_CONCORD is defined.
211 * config.h.in (HAVE_CONCORD): New macro.
213 2005-09-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
215 * chartab.c (Fput_char_attribute): For each character relation
216 feature `{<-|->}FOO', set up the reversed link `{->|<-}FOO'.
218 2005-08-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
220 * chartab.c (Fput_char_attribute): Use
221 `Fchar_refs_simplify_char_specs' for `=>decomposition' before
222 calling `put_char_composition'.
224 2005-08-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
226 * chartab.c (Q_halfwidth_of): New variable.
227 (put_char_composition): Return `<-halfwidth' instead of
228 `=decomposition' for compatibility mapping to single character
230 (Fput_char_attribute): Convert char-specs in value of
231 `{<-|->}halfwidth[^*]*' to characters and put reverse links.
232 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
234 (syms_of_chartab): Add new symbol `<-halfwidth'.
236 2005-08-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
238 * chartab.c (put_char_composition): Return
239 `<-formed@{isolated|initial|medial|final}' for compatibility
240 mapping to single character tagged
241 `{isolated|initial|medial|final}'.
243 2005-08-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
245 * chartab.c (Q_compat_of): Deleted.
246 (put_char_composition): Return `<-FOO' for compatibility mapping
247 to single character tagged `FOO'; use `Fsymbol_name (...)' instead
248 of `symbol_name (XSYMBOL(...))'.
249 (Fput_char_attribute): Convert char-specs in value of
250 `{<-|->}font[^*]*' to characters and put reverse links.
251 (Fsave_char_attribute_table): Don't refer Q_compat_of.
252 (syms_of_chartab): Delete builtin symbol `<-compat'.
254 2005-08-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
256 * chartab.c (Q_circled_of): New variable.
257 (put_char_composition): Return `<-circled' instead of
258 `=decomposition' for compatibility mapping to single character
260 (Fput_char_attribute): Convert char-specs in value of
261 `{<-|->}circled[^*]*' to characters and put reverse links.
262 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
264 (syms_of_chartab): Add new symbol `<-circled'.
266 2005-08-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
268 * chartab.c (Qto_decomposition_at_circled): New variable.
269 (put_char_composition): Return `=>decomposition@circled' instead
270 of `=decomposition' for compatibility decomposition mapping tagged
272 (syms_of_chartab): Add new symbol `=>decomposition@circled'.
274 2005-08-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
276 * chartab.c (Q_subscript_of): New variable.
277 (put_char_composition): Return `<-subscript' instead of
278 `=decomposition' for compatibility mapping to single character
280 (Fput_char_attribute): Convert char-specs in value of
281 `{<-|->}subscript[^*]*' to characters and put reverse links.
282 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
284 (syms_of_chartab): Add new symbol `<-subscript'.
286 2005-08-01 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
288 * chartab.c (Q_superscript_of): New variable.
289 (put_char_composition): Return `<-superscript' instead of
290 `=decomposition' for compatibility mapping to single character
292 (Fput_char_attribute): Convert char-specs in value of
293 `{<-|->}superscript[^*]*' to characters and put reverse links.
294 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
296 (syms_of_chartab): Add new symbol `<-superscript'.
298 2005-08-01 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
300 * chartab.c (Qto_decomposition_at_compat): Deleted.
301 (Qto_decomposition_at_superscript): New variable.
302 (put_char_composition): Use `=>decomposition@superscript' instead
303 of `=decomposition' for compatibility decomposition mapping tagged
305 (Fput_char_attribute): Fix condition about `put_char_composition'.
306 (syms_of_chartab): Delete builtin symbol `=>decomposition@compat';
307 add news symbol `=>decomposition@superscript'.
309 2005-07-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
311 * chartab.c (put_char_composition): Return `=>decomposition@FOO'
312 for compatibility decomposition mapping tagged FOO.
313 (Fput_char_attribute): Modify for `put_char_composition'.
315 2005-07-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
317 * chartab.c (Qto_decomposition_at_compat): New variable.
318 (Q_compat_of): Renamed from `Q_compatibility_of'.
319 (put_char_composition): Rename `Q_compatibility_of' to
320 `Q_compat_of'; return `=>decomposition@compat' for compatibility
321 decomposition mapping.
322 (Fsave_char_attribute_table): Rename `Q_compatibility_of' to
324 (syms_of_chartab): Add new symbol `=>decomposition@compat'; rename
325 `<-compatibility' to `<-compat'.
327 2005-07-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
329 * chartab.c (Q_compatibility_of): New variable.
330 (put_char_composition): Use XCAR/XCDR instead of Fcar/Fcdr if an
331 object is proved to be a cons cell; return `<-compatibility' if
332 the first element of argument `value' is `compat'.
333 (Fput_char_attribute): Eliminate the first value if
334 `put_char_composition' returns `<-compatibility'.
335 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
336 for `<-compatibility'.
337 (syms_of_chartab): Add new symbol `<-compatibility'.
339 2005-07-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
341 * chartab.c (Q_canonical): New variable.
342 (put_char_composition): Return a feature name: return
343 `->canonical' if argument `value' specifies single character.
344 (Fput_char_attribute): Use `put_char_composition' to determine
345 feature name for `=decomposition' or `->denotational'.
346 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
348 (syms_of_chartab): Add new symbol `->canonical'.
350 2005-07-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
352 * chartab.c (Qmap_decomposition): New variable.
353 (Fput_char_attribute): Convert `->decomposition' to
355 (syms_of_chartab): Add new symbol `=decomposition'.
357 2005-07-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
359 * chartab.c (Fget_range_char_table): Fix serious problem when
362 2005-06-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
364 * chartab.c (char_table_get_db): Use `read_from_c_string'.
366 2005-06-19 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
368 * lread.c (read_from_c_string): New function.
370 * lisp.h (read_from_c_string): New prototype.
372 2005-05-25 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
374 * chartab.c (Fput_char_attribute): Convert char-specs in value of
375 `{<-|->}Oracle-Bones[^*]*' to characters and put reverse links.
376 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
377 for `{<-|->}Oracle-Bones[^*]*'.
379 2005-05-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
381 * mule.c (vars_of_mule): Update `xemacs-chise-version' to 0.22
384 2005-02-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
386 * text-coding.c (Qccs_priority_list): New variable in XEmacs
388 (Fmake_coding_system): Support new property `ccs-priority-list' in
390 (Fcoding_system_property): Likewise.
391 (char_encode_iso2022): Prefer CODING_SYSTEM_CCS_PRIORITY_LIST than
392 Vdefault_coded_charset_priority_list in XEmacs CHISE.
393 (syms_of_file_coding): Add builtin symbol `ccs-priority-list' in
395 (complex_vars_of_file_coding): Define new coding-system-property
396 `ccs-priority-list' in XEmacs CHISE.
398 * file-coding.h (XCODING_SYSTEM_CCS_PRIORITY_LIST): New macro.
400 2004-12-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
402 * char-ucs.h (decoding_table_put_char): Moved to mule-charset.c;
403 changed to normal function.
404 (encode_char_2): Likewise.
406 * mule-charset.c (decoding_table_put_char): Copied from
407 char-ucs.h; changed to normal function.
408 (encode_char_2): Likewise.
410 2004-12-13 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
412 * char-ucs.h (Vdisplay_coded_charset_priority_use_inheritance):
414 (Vdisplay_coded_charset_priority_use_hierarchy_order): Likewise.
415 (encode_char_2_search_children): New inline function.
416 (encode_char_2): Refer
417 `Vdisplay_coded_charset_priority_use_{inheritance|hierarchy_order}'
418 and use `encode_char_2_search_children'.
420 2004-12-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
423 (Vdisplay_coded_charset_priority_use_inheritance): New variable.
424 (Vdisplay_coded_charset_priority_use_hierarchy_order): Likewise.
425 (vars_of_mule_charset): Add new variable
426 `display-coded-charset-priority-use-inheritance' and
427 `display-coded-charset-priority-use-hierarchy-order'.
429 2004-11-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
431 * char-ucs.h (Q_subsumptive): New extern.
432 (Q_denotational): Likewise.
433 (encode_char_2): Search children specified by `->subsumptive' and
436 2004-11-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
438 * mule-charset.c (complex_vars_of_mule_charset): Modify the
439 X-registry of `ucs-bmp'.
441 2004-10-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
443 * chartab.c (char-variants): Refer `->subsumptive',
444 `->denotational' and `->identical' as same as `->ucs-unified'.
446 2004-10-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
448 * chartab.c (Fput_char_attribute): Convert char-specs in value of
449 `{<-|->}{fullwidth|halfwidth}[^*]*' to characters and put reverse
452 2004-09-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
454 * text-coding.c: Add EXFUN for `Fregexp_quote'.
455 (decode_add_er_char): Fix problem about infinite loop when a CCS
456 specified in `coded-charset-entity-reference-alist' is not
459 2004-09-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
461 * mule-charset.c (syms_of_mule_charset): Rename
462 `=jis-x0208-{1978|1983|1990}' to `=jis-x0208@{1978|1983|1990}'.
464 2004-08-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
466 * fns.c (simplify_char_spec): Don't allocate new character-object
467 if specified char_spec does not have any CCS-features.
469 * chartab.h: Add EXFUN for Fdefine_char.
471 * chartab.c: Delete EXFUN for Fdefine_char.
473 2004-08-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
475 * fns.c (simplify_char_spec): Use Fdefine_char instead of
476 Ffind_char for char-spec.
478 2004-07-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
480 * lisp-disunion.h (XCHARVAL): Fix condition about
483 2004-07-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
485 * mule-charset.c (decode_builtin_char): Use <EMACS_INT> instead of
487 (Fdecode_builtin_char): Use <EMACS_INT> instead of <int> for code
488 point; use <Emchar> instead of <int> for character-id.
490 2004-07-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
492 * lisp-disunion.h (make_int): Cast the argument into <EMACS_INT>.
493 (make_char): Likewise.
494 (XCHARVAL): Don't use the inline function for UTF-2000 in 64 bit
496 (XCHARVAL[for UTF-2000 in 32 bit environment]): Use <Emchar>
497 instead of <int> as the type of return value; use <Lisp_Object>
498 instead of <Emchar> as the type of argument.
499 (XCHARVAL[macro version]): Cast the result into <Emchar>.
501 * syntax.h (SYNTAX_CODE_UNSAFE): Use <Lisp_Object> and <enum
502 syntaxcode> instead of <int>.
504 2004-07-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
506 * chartab.c (put_char_composition): Use DECODE_CHAR to get
507 character corresponding with UCS code point.
508 (Fput_char_attribute): Likewise.
510 * mule-charset.c (put_char_ccs_code_point): Don't omit a UCS
511 character in the UCS decoding-table if the char-id is not equal to
514 2004-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
516 * mule-charset.c (Fsave_charset_properties): Use `true-name' only
517 for aliases; write `description'; write
518 `mother-code-{min|max|offset|conversion}' if CHARSET_MAX_CODE is
521 2004-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
523 * chartab.c (Fsave_char_attribute_table): Don't use
524 `save_charset_properties'.
526 * mule-charset.c (Fsave_charset_properties): Renamed from
527 `save_charset_properties' and changed to Lisp function again;
528 write property `type' as `CCS'; write properties `final-byte' and
529 `mother' if they exists.
530 (syms_of_mule_charset): Revive builtin function
531 `save-charset-properties' when HAVE_LIBCHISE is defined.
533 2004-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
535 * chartab.c (open_chise_data_source_maybe): Use Vdata_directory
536 instead of Vexec_directory.
537 (char_attribute_system_db_file): Likewise.
539 2004-07-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
541 * chartab.c (Fsave_char_attribute_table): Use
542 `save_charset_properties' for CCS features when HAVE_LIBCHISE is
545 * mule-charset.c (save_charset_properties): Renamed from
546 `Fsave_charset_properties'; changed to non-Lisp function.
547 (syms_of_mule_charset): Abolish builtin function
548 `save-charset-properties'.
550 2004-07-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
552 * mule-charset.c (Fsave_charset_properties): New function when
553 HAVE_LIBCHISE is defined.
554 (syms_of_mule_charset): Add new builtin function
555 `save-charset-properties' when HAVE_LIBCHISE is defined.
557 2004-06-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
559 * chartab.c (Fput_char_attribute): Convert char-specs in value of
560 `{<-|->}ancient[^*]*' to characters and put reverse links.
561 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
562 for `{<-|->}ancient[^*]*'.
564 2004-06-19 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
566 * chartab.c (Fput_char_attribute): Convert char-specs in value of
567 `{<-|->}original[^*]*' to characters and put reverse links.
568 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
569 for `{<-|->}original[^*]*'.
571 2004-06-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
573 * mule-canna.c (m2c): Fix problem with XEmacs CHISE.
575 2004-06-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
577 * mule-charset.c (Qsystem_char_id): New variable.
579 * chartab.c (Qsystem_char_id): Deleted even if HAVE_CHISE is
580 defined and HAVE_LIBCHISE_LIBCHISE is not defined.
582 2004-05-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
584 * chartab.c (Fput_char_attribute): When processing a reference of
585 a character, put into the end of the reversed reference of each
588 2004-05-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
590 * chartab.c (Q_same): Deleted.
591 (Q_same_of): Deleted.
592 (Fput_char_attribute): Use Fstring_match to find `{<-|->}same'.
593 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
595 (syms_of_chartab): Delete builtin symbol `{<-|->}same'.
597 2004-05-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
599 * chartab.c (Q_vulgar): Deleted.
600 (Q_vulgar_of): Deleted.
601 (Fput_char_attribute): Use Fstring_match to find `{<-|->}vulgar'.
602 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
604 (syms_of_chartab): Don't define `{<-|->}vulgar'.
606 2004-04-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
608 * chartab.c (Fput_char_attribute): Convert char-specs in value of
609 `{<-|->}wrong[^*]*' to characters and put reverse links.
610 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
611 for `{<-|->}wrong[^*]*'.
613 2004-04-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
615 * chartab.c (Q_vulgar): New variable.
616 (Q_vulgar_of): New variable.
617 (Fput_char_attribute): Convert char-specs in value of
618 `{->|<-}vulgar' to characters and put reverse links.
619 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
621 (syms_of_chartab): Add new symbols `{->|<-}vulgar'.
623 2004-04-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
625 * text-coding.c (decode_add_er_char): Must to quote prefix string
628 2004-04-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
630 * mule-charset.c (put_char_ccs_code_point): Store characters of
631 =ucs whose code_points >= 0xF0000.
633 2004-04-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
635 * mule-charset.c (Vcharset_system_char_id): New variable in XEmacs
637 (syms_of_mule_charset): Add new symbol `system-char-id' in XEmacs
639 (complex_vars_of_mule_charset): Add new coded-charset
640 `system-char-id' in XEmacs CHISE; modify `=ucs' to eliminate
641 builtin characters over 0xEFFFF.
643 * chartab.c (syms_of_chartab): Don't define symbol
644 `system-char-id' in every case.
646 * char-ucs.h (Qsystem_char_id): New extern variable.
647 (LEADING_BYTE_SYSTEM_CHAR_ID): New macro.
649 2004-04-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
651 * text-coding.c (char_encode_utf8): Try to use entity-references
652 for U-000F0000 ... U-0010FFFF.
654 2004-04-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
656 * text-coding.c (ER_BUF_SIZE): New macro.
657 (struct decoding_stream): Use `ER_BUF_SIZE' to specify size of
659 (decode_add_er_char): Use `ER_BUF_SIZE' instead of 16.
660 (char_encode_as_entity_reference): Use `ER_BUF_SIZE'.
662 2004-03-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
664 * chartab.c (find_char_feature_in_family): New function.
665 (Fchar_feature): Use `find_char_feature_in_family' with
666 `->identical', `<-subsumptive' and `<-denotational'.
668 2004-03-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
670 * text-coding.c (char_encode_as_entity_reference): Allow prefix
671 within 8 characters; fix infinite loop.
673 2004-03-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
675 * chartab.c (Q_same): New variable.
676 (Q_same_of): New variable.
677 (Fput_char_attribute): Convert char-specs in value of
678 `{->|<-}same' to characters and put reverse links.
679 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
681 (syms_of_chartab): Add new symbols `{->|<-}same'.
683 2004-03-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
685 * chartab.c (Q_component): New variable.
686 (Q_component_of): Likewise.
687 (Fput_char_attribute): Convert char-specs in value of
688 `{->|<-}ideographic-component-forms' to characters and put reverse
690 (syms_of_chartab): Add new symbols
691 `{->|<-}ideographic-component-forms'.
693 2004-02-24 MORIOKA Tomohiko <tomo@m17n.org>
695 * chartab.c (Q_identical): New variable.
696 (Q_identical_from): New variable.
697 (Fchar_feature): Regard `->identical' as a feature to find
699 (Fput_char_attribute): Add reversed link for `{->|<-}identical'.
700 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
701 for `{->|<-}identical'.
702 (syms_of_chartab): Add new symbols `{->|<-}identical'.
704 2004-02-13 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
706 * char-ucs.h (encode_char_2): New inline function.
707 (CHAR_TO_CHARC): Use `encode_char_2' instead of `encode_char_1'.
709 2004-02-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
711 * chartab.c (Fput_char_attribute): Convert char-specs to
712 characters in value of `ideographic-structure'.
713 (Fsave_char_attribute_table): Use `Fchar_refs_simplify_char_specs'
714 for `{<-|->}simplified(@...)'.
715 (Fdefine_char): Try to use predefined character's id.
717 2004-02-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
719 * fns.c (simplify_char_spec): Try to convert builtin chars to
722 2004-02-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
724 * chartab.c (Fput_char_attribute): Convert char-specs in value of
725 `<-simplified[^*]*' to characters and put reverse links.
727 2004-02-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
729 * chartab.c (Q_subsumptive): Renamed from Q_unified.
730 (Q_subsumptive_from): Renamed from Q_unified_from.
731 (Fchar_feature): Use `Q_subsumptive_from' instead of
733 (Fput_char_attribute): Likewise; Use `Q_subsumptive' instead of
735 (syms_of_chartab): Rename `->unified' to `->subsumptive' and
736 `<-unified' to `<-subsumptive'.
738 2004-02-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
740 * chartab.c (Fchar_feature): Check `<-denotational' to avoid
741 inheritance itself; fix typo; stop recursive search if cyclic
742 inheritance is found.
744 2004-02-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
746 * chartab.c (Q_denotational): New variable.
747 (Q_denotational_from): New variable.
748 (Fchar_feature): Refer `<-denotational' as same as `<-unified'.
749 (put_char_attribute): New function.
750 (Fput_char_attribute): Use `put_char_attribute'; regard
751 `->denotational' and `<-denotational' as same as `->unified' and
753 (syms_of_chartab): Add new symbols `->denotational' and
756 2004-02-01 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
758 * chartab.c (Fget_composite_char): Use `Fchar_feature' instead of
759 `Fget_char_attribute'.
760 (Fchar_variants): Likewise.
761 (get_char_table): Likewise.
762 (Fchar_feature): New function.
763 (put_char_composition): Use `Fchar_feature' instead of
764 `Fget_char_attribute'.
765 (Fput_char_attribute): Likewise; don't put the target character
766 into its `->unified' value.
767 (syms_of_chartab): Add new builtin function `char-feature'.
769 2004-01-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
771 * text-coding.c (COMPOSE_ADD_CHAR): Use `Fchar_feature' instead of
772 `Fget_char_attribute'.
773 (char_encode_utf8): Likewise.
775 * chartab.h: Add an EXFUN for `Fchar_feature'.
777 2004-01-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
779 * chartab.c (Vnext_defined_char_id): New variable.
780 (Fput_char_attribute): Accept characters in `->unified'.
781 (Fdefine_char): Refer and update Vnext_defined_char_id to allocate
782 new characters which are not related with builtin char-id ranges.
783 (vars_of_chartab): Add new variable `next-defined-char-id'.
785 2004-01-19 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
787 * chartab.c (Q_unified): New variable.
788 (Q_unified_from): New variable.
789 (Fput_char_attribute): Add code for `->unified'.
790 (syms_of_chartab): Add new symbols `->unified' and `<-unified' in
793 2003-11-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
795 * mule-charset.c (decode_ccs_conversion): New function.
796 (decode_defined_char): Use `decode_ccs_conversion'.
797 (decode_builtin_char): Likewise.
799 2003-11-25 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
801 * char-ucs.h: Change some charset-ids of private coded-charsets.
803 2003-11-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
805 * text-coding.c (decode_add_er_char): Modify for `DECODE_CHAR'.
806 (char_encode_as_entity_reference): Likewise.
807 (decode_coding_big5): Modify for `decode_defined_char' and
809 (decode_coding_utf8): Modify for `decode_defined_char'; modify to
810 avoid compiler warning.
811 (decode_coding_iso2022): Modify for `DECODE_CHAR'.
813 * mule-charset.c (decode_defined_char): Add new argument
814 `without_inheritance'.
815 (Fdecode_char): Add new optional argument `without_inheritance'.
816 (Fdecode_builtin_char): Modify for `Fdecode_char'.
818 * fns.c (ids_format_unit): Modify for `Fdecode_char'.
819 (simplify_char_spec): Likewise.
821 * chartab.h (Fdecode_char): Modify number of arguments of EXFUN
824 * chartab.c (put_char_table): Modify for `DECODE_CHAR'.
825 (map_char_table): Likewise.
826 (Fdefine_char): Use `Fdecode_char' without inheritance.
827 (Ffind_char): Modify for `Fdecode_char'.
829 * character.h (CHARC_TO_CHAR): Modify for `DECODE_CHAR'.
831 * char-ucs.h (decode_defined_char): Add new argument
832 `without_inheritance'.
833 (DECODE_CHAR): Likewise.
834 (MAKE_CHAR): Modify for `DECODE_CHAR'.
836 2003-10-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
838 * chartab.c (Vchise_system_db_directory): New variable.
839 (vars_of_chartab): Add new variable `chise-system-db-directory'.
841 2003-10-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
843 * chartab.c: EXFUN `Fmount_char_attribute_table'.
844 (print_chartab_range): Don't define when `UTF2000' is defined.
845 (open_chise_data_source_maybe): Specify 0 instead of DB_HASH for
848 2003-10-13 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
850 * chartab.c (Fchar_attribute_list): When HAVE_LIBCHISE is defined
851 and optional argument `rehash' is specified, call
852 `open_chise_data_source_maybe' before
853 `chise_ds_foreach_char_feature_name' is called.
855 2003-10-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
857 * chartab.c (char_attribute_list_reset_map_func): New function
858 when HAVE_LIBCHISE is defined.
859 (Fchar_attribute_list): Add new optional argument `rehash' when
860 HAVE_LIBCHISE is defined.
861 (open_chise_data_source_maybe): Use "chise-db" instead of
863 (char_attribute_system_db_file): Likewise.
864 (Fload_char_attribute_table): Use
865 `chise_feature_foreach_char_with_value' instead of
866 `chise_char_feature_value_iterate'.
868 2003-10-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
870 * chartab.c (Vchise_db_directory): New variable.
871 (vars_of_chartab): Add new built-in variable `chise-db-directory'.
873 2003-10-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
875 * mule-charset.c (Freset_charset_mapping_table): Use HAVE_LIBCHISE
876 instead of HAVE_CHISE to specify using with libchise.
878 * config.h.in (HAVE_CHISE_CLIENT): Deleted.
880 * chartab.h: Don't use HAVE_CHISE_CLIENT.
882 * chartab.c (Qsystem_char_id): Don't define when HAVE_CHISE is not
883 defined or HAVE_LIBCHISE_LIBCHISE is defined.
884 (char_attribute_system_db_file): Don't define when HAVE_LIBCHISE
886 (Freset_char_attribute_table): Use HAVE_LIBCHISE instead of
887 HAVE_CHISE to specify using with libchise.
888 (syms_of_chartab): Don't define symbol `system-char-id' when
889 HAVE_CHISE is not defined or HAVE_LIBCHISE_LIBCHISE is defined.
891 2003-10-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
893 * mule-charset.c: Use HAVE_CHISE instead of HAVE_CHISE_CLIENT to
894 specify CHISE DB support.
895 (Freset_charset_mapping_table): Use `chise_ccs_setup_db' instead
896 of `char_attribute_system_db_file' to check feature DB file.
898 * chartab.h, casetab.c, char-ucs.h: Use HAVE_CHISE instead of
899 HAVE_CHISE_CLIENT to specify CHISE DB support.
901 * chartab.c: Use HAVE_CHISE instead of HAVE_CHISE_CLIENT to
902 specify CHISE DB support.
903 (open_chise_data_source_maybe): Don't define when HAVE_LIBCHISE is
905 (Freset_char_attribute_table): Use `chise_feature_setup_db'
906 instead of `char_attribute_system_db_file' to check feature DB
909 2003-10-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
911 * mule.c (vars_of_mule): Use `HAVE_CHISE' instead of `CHISE' and
914 2003-10-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
916 * mule-charset.c: Use HAVE_LIBCHISE instead of CHISE.
917 (Fsave_charset_mapping_table): Don't use
918 `char_attribute_system_db_file' when HAVE_LIBCHISE is defined.
920 * config.h.in (HAVE_CHISE): Renamed from `CHISE'.
921 (HAVE_LIBCHISE): New macro.
923 * chartab.h: Use HAVE_LIBCHISE instead of CHISE.
925 * chartab.c: Use HAVE_LIBCHISE instead of CHISE.
926 (Fsave_char_attribute_table): Don't use
927 `char_attribute_system_db_file' when HAVE_LIBCHISE is defined.
929 2003-10-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
931 * chartab.c (save_uint8_byte_table): Use libchise when CHISE is
933 (save_uint16_byte_table): Likewise.
934 (save_byte_table): Likewise.
935 (char_table_get_db): Use `chise_ds_load_char_feature_value'
936 instead of `chise_char_load_feature_value'.
937 (Fsave_char_attribute_table): Use libchise when CHISE is defined.
939 2003-10-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
941 * chartab.h (struct Lisp_Char_Table): Delete member
942 `feature_table' if CHISE is defined.
944 * chartab.c (Fmake_char_table): Don't refer `ct->feature_table'.
945 (Fcopy_char_table): Likewise.
946 (char_table_open_db_maybe): Likewise.
947 (char_table_close_db_maybe): Likewise.
948 (char_table_get_db): Likewise.
949 (Fmount_char_attribute_table): Likewise.
950 (Fload_char_attribute_table): Likewise.
952 2003-10-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
954 * mule-charset.c (load_char_decoding_entry_maybe): Use
955 `chise_ds_decode_char' instead of `chise_ds_get_ccs' and
958 2003-10-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
960 * chartab.c (open_chise_data_source_maybe): Use `CHISE_DS_open'
961 instead of `chise_open_data_source'.
962 (Fclose_char_data_source): Use `CHISE_DS_close' instead of
965 2003-10-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
967 * chartab.c (char_table_open_db_maybe): Use `chise_ds_get_feature'
968 instead of `chise_ds_open_feature_table'.
969 (char_table_close_db_maybe): Don't use `chise_ft_close'.
971 2003-10-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
973 * mule-charset.c (Fsave_charset_mapping_table): Use
974 `chise_ds_get_ccs' instead of `chise_ds_open_ccs_table'; use
975 `chise_ccs_set_decoded_char' instead of `chise_ccst_put_char'; use
976 `chise_ccs_sync' instead of `chise_ccst_close'.
977 (load_char_decoding_entry_maybe): Modify for `chise_ds_get_ccs'.
979 * chartab.c (open_chise_data_source_maybe): Modify for
980 `chise_open_data_source'.
981 (char_table_open_db_maybe): Modify for
982 `chise_ds_open_feature_table'.
984 2003-08-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
986 * mule-charset.c (load_char_decoding_entry_maybe): Use
987 `chise_ds_get_ccs' instead of `chise_ds_open_ccs_table'; don't use
990 2003-08-25 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
992 * mule-charset.c (Fsave_charset_mapping_table): Use
993 `chise_ds_open_ccs_table', `chise_ccst_put_char' and
994 `chise_ccst_close' instead of `chise_ds_open_decoding_table',
995 `chise_dt_put_char' and `chise_dt_close'.
996 (load_char_decoding_entry_maybe): Use `chise_ds_open_ccs_table',
997 `chise_ccs_decode' and `chise_ccst_close' instead of
998 `chise_ds_open_decoding_table', `chise_dt_get_char' and
1001 * chartab.c (char_table_get_db): Use
1002 `chise_char_load_feature_value' instead of `chise_ft_get_value'.
1003 (load_char_attribute_table_map_func): Modify for
1004 `chise_char_feature_value_iterate'.
1005 (Fload_char_attribute_table): Use
1006 `chise_char_feature_value_iterate' instead of `chise_ft_iterate'.
1008 2003-10-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1010 * text-coding.c (COMPOSE_ADD_CHAR): Fixed.
1012 2003-08-19 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1014 * chartab.c (put_char_table): Modify for inherited coded-charsets
1017 2003-08-19 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1019 * chartab.c (Fput_char_table_map_function): Fixed.
1020 (word_boundary_p): Don't check charset in XEmacs CHISE.
1022 2003-08-17 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1024 * mule-charset.c (Fsave_charset_mapping_table): Use
1025 `open_chise_data_source_maybe'; use `chise_ds_open_decoding_table'
1026 instead of `chise_open_decoding_table'; refer
1027 `default_chise_data_source'; use `chise_dt_close' instead of
1028 `chise_close_decoding_table'.
1029 (load_char_decoding_entry_maybe): Likewise.
1031 * chartab.c (default_chise_data_source): New variable when `CHISE'
1033 (Fcopy_char_table): `ct->ds' is deleted.
1034 (open_chise_data_source_maybe): New function.
1035 (Fclose_char_data_source): New function.
1036 (char_table_open_db_maybe): Use `open_chise_data_source_maybe';
1037 use `chise_ds_open_feature_table' instead of
1038 `chise_open_feature_table'.
1039 (char_table_close_db_maybe): Use `chise_ft_close' instead of
1040 `chise_close_feature_table'; `cit->ds' is deleted.
1041 (syms_of_chartab): Add new builtin function
1042 `close-char-data-source' when `HAVE_CHISE_CLIENT' is defined.
1044 * chartab.h (default_chise_data_source): New extern variable.
1045 (open_chise_data_source_maybe): New prototype.
1046 (struct Lisp_Char_Table): Delete `ds'.
1048 2003-08-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1050 * mule-charset.c (Fsave_charset_mapping_table): Use libchise when
1053 2003-08-10 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1055 * chartab.c (char_table_open_db_maybe): Defined even if `CHISE' is
1056 not defined; add code for non-libchise setting.
1057 (char_table_close_db_maybe): Likewise.
1058 (char_table_get_db): New function when `HAVE_CHISE_CLIENT' is
1060 (Fclose_char_attribute_table): Use `char_table_close_db_maybe'
1061 even if `CHISE' is not defined.
1062 (Freset_char_attribute_table): Likewise.
1063 (load_char_attribute_maybe): Use `char_table_open_db_maybe' and
1064 `char_table_close_db_maybe' even if `CHISE' is not defined; use
1065 `char_table_get_db'.
1066 (Fload_char_attribute_table): Use `char_table_open_db_maybe' and
1067 `char_table_close_db_maybe' even if `CHISE' is not defined.
1069 2003-08-10 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1071 * chartab.c (char_table_open_db_maybe): New function.
1072 (char_table_close_db_maybe): New function.
1073 (Fclose_char_attribute_table): Use `char_table_close_db_maybe'.
1074 (Freset_char_attribute_table): Likewise.
1075 (load_char_attribute_maybe): Use `char_table_open_db_maybe' and
1076 `char_table_close_db_maybe'.
1077 (Fload_char_attribute_table): Likewise.
1079 2003-08-09 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1081 * chartab.c: Don't include <chise.h> because it is included in
1083 (Fmake_char_table): Initialize `ct->feature_table' when `CHISE' is
1085 (Fcopy_char_table): Copy `ct->ds' and `ct->feature_table' when
1087 (Fmount_char_attribute_table): Initialize `ct->feature_table' when
1089 (Fclose_char_attribute_table): Close `ct->feature_table' and
1090 `ct->ds' when `CHISE' is defined.
1091 (Freset_char_attribute_table): Likewise.
1092 (load_char_attribute_maybe): Use `cit->ds' and
1093 `cit->feature_table' when `CHISE' is defined.
1094 (Fload_char_attribute_table): Likewise.
1096 * chartab.h: Include <chise.h> when `CHISE' is defined.
1097 (struct Lisp_Char_Table): Add new member `ds' and `feature_table'
1098 when `CHISE' is defined.
1100 2003-08-09 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1102 * chartab.c (mark_char_table): Member `db' is deleted when `CHISE'
1104 (char_table_description): Likewise.
1105 (Fmake_char_table): Likewise.
1106 (Fcopy_char_table): Likewise.
1107 (Fmount_char_attribute_table): Likewise.
1108 (Fclose_char_attribute_table): Likewise.
1109 (Freset_char_attribute_table): Likewise.
1110 (load_char_attribute_maybe): Likewise.
1111 (Fload_char_attribute_table): Likewise.
1113 * chartab.h (struct Lisp_Char_Table): Delete `db' when `CHISE' is
1116 2003-08-09 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1118 * chartab.c (load_char_attribute_table_map_func): New function
1119 when CHISE is defined.
1120 (Qload_char_attribute_table_map_function): Don't define when CHISE
1122 (Fload_char_attribute_table_map_function): Likewise.
1123 (Fload_char_attribute_table): Use libchise when `CHISE' is
1125 (syms_of_chartab): Don't define
1126 `load-char-attribute-table-map-function' when CHISE is defined.
1128 2003-08-06 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1130 * chartab.c: Include <chise.h> when `CHISE' is defined.
1131 (load_char_attribute_maybe): Use libchise when `CHISE' is defined.
1133 2003-07-01 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1135 * mule-charset.c (charset_code_point): Fix problem when searching
1136 in mother CCS fails with `defined_only' mode.
1138 2003-06-29 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1140 * chartab.c (Q_ucs_unified): Renamed from `Q_ucs_variants'.
1141 (Fchar_variants): Rename `Q_ucs_variants' to `Q_ucs_unified'.
1142 (put_char_composition): Likewise.
1143 (Fput_char_attribute): Likewise.
1144 (syms_of_chartab): Rename `->ucs-variants' to `->ucs-unified'.
1146 2003-06-29 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1148 * chartab.c (Q_ucs): Deleted.
1149 (Fput_char_attribute): Don't refer `->ucs'.
1150 (Fdefine_char): Likewise.
1151 (Ffind_char): Likewise.
1152 (syms_of_chartab): Delete `->ucs'.
1154 2003-04-30 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1156 * mule-charset.c (Qmap_cns11643_2): Renamed from
1157 `Qchinese_cns11643_2'.
1158 (syms_of_mule_charset): Add new symbol `=cns11643-2' instead of
1159 `chinese-cns11643-2'.
1160 (complex_vars_of_mule_charset): Rename `chinese-cns11643-2' to
1163 2003-04-27 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1165 * mule-charset.c (Qmap_cns11643_1): Renamed from
1166 `Qchinese_cns11643_1'.
1167 (syms_of_mule_charset): Add new symbol `=cns11643-1' instead of
1168 `chinese-cns11643-1'.
1169 (complex_vars_of_mule_charset): Rename `chinese-cns11643-1' to
1172 2003-04-24 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1174 * mule-charset.c (Qmap_gb12345): Renamed from `Qchinese_gb12345'.
1175 (syms_of_mule_charset): Add new symbol `=gb12345' instead of
1177 (complex_vars_of_mule_charset): Rename `chinese-gb12345' to
1180 2003-04-21 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1182 * mule-charset.c (Qmap_gb2312): Renamed from `Qchinese_gb2312'.
1183 (syms_of_mule_charset): Add new symbol `=gb2312' instead of
1185 (complex_vars_of_mule_charset): Rename `chinese-gb2312' to
1188 2003-04-19 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1190 * mule-charset.c (Qmap_big5): Renamed from `Qchinese_big5'.
1191 (syms_of_mule_charset): Add new symbol `=big5' instead of
1193 (complex_vars_of_mule_charset): Rename `chinese-big5' to `=big5'.
1195 2003-04-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1197 * mule-charset.c (Qmap_ks_x1001): Renamed from `Qkorean_ksc5601'.
1198 (syms_of_mule_charset): Add new symbol `=ks-x1001' instead of
1200 (complex_vars_of_mule_charset): Rename `korean-ksc5601' to
1203 2003-04-15 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1205 * mule-charset.c (Qmap_jis_x0212): Renamed from
1206 `Qjapanese_jisx0212'.
1207 (syms_of_mule_charset): Add new symbol `=jis-x0212' instead of
1208 `japanese-jisx0212'.
1209 (complex_vars_of_mule_charset): Rename `japanese-jisx0212' to
1212 2003-04-12 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1214 * mule-charset.c (Qmap_jis_x0208_1983): Renamed from
1215 `Qjapanese_jisx0208'.
1216 (syms_of_mule_charset): Add new symbol `=jis-x0208-1983' instead
1217 of `japanese-jisx0208'.
1218 (complex_vars_of_mule_charset): Rename `japanese-jisx0208' to
1221 2003-04-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1223 * mule-charset.c (Qmap_jis_x0208_1978): Renamed from
1224 `Qjapanese_jisx0208_1978'.
1225 (syms_of_mule_charset): Add new symbol `=jis-x0208-1978' instead
1226 of `japanese-jisx0208-1978'.
1227 (complex_vars_of_mule_charset): Rename `japanese-jisx0208-1978' to
1230 2003-04-04 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1232 * chartab.c (decode_char_table_range): CHARTAB_RANGE_DEFAULT is
1233 only for XEmacs CHISE.
1235 2003-04-03 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1237 * char-ucs.h: Compact non-ISO-IR charset-ids.
1238 (LEADING_BYTE_UCS): Changed to -177.
1239 (LEADING_BYTE_CONTROL_1): Changed to -77.
1240 (LEADING_BYTE_UCS_BMP): Changed to -176.
1241 (LEADING_BYTE_JAPANESE_JISX0208_1990): Changed to -168.
1243 2003-04-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1245 * mule-charset.c (Qiso_ir): New variable.
1246 (Fmake_charset): Recognise new property `iso-ir'.
1247 (syms_of_mule_charset): Add new symbol `iso-ir'.
1249 2003-04-02 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1251 * char-ucs.h: Change charset-id of ISO-IR sets from ISO-IR-number
1252 n to -n; charset-id of non ISO-IR sets are changed to positive
1255 2003-03-19 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1257 * text-coding.c (decode_add_er_char): Use XUINT instead of XINT
1258 for &MCS-XXXXXXXX; values.
1260 2003-03-12 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1262 * mule.c (Vxemacs_chise_version): Renamed from
1263 `Vutf_2000_version'.
1264 (vars_of_mule): Add new variable `xemacs-chise-version'; define
1265 `utf-2000-version' as an alias for `xemacs-chise-version'.
1267 2003-03-10 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1269 * mule-charset.c: Include <chise.h> when `CHISE' is defined.
1270 (load_char_decoding_entry_maybe): Use libchise when `CHISE' is
1273 * config.h.in (CHISE): New macro.
1275 2003-03-09 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1277 * mule-charset.c (put_char_ccs_code_point): Refer `=ucs' instead
1279 (Qmap_ucs): New variable.
1280 (syms_of_mule_charset): Add new symbol `=ucs'.
1281 (complex_vars_of_mule_charset): Rename `ucs' to `=ucs'.
1283 * fns.c (ids_format_unit): Refer `=ucs' instead of `ucs'.
1284 (simplify_char_spec): Likewise.
1286 * chartab.c (Fdefine_char): Refer `=ucs' as same as `ucs'.
1288 * char-ucs.h (Qmap_ucs): New extern variable.
1290 2003-03-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1292 * mule-charset.c (Qmap_jis_x0208): Renamed from `Qjis_x0208'.
1293 (Qmap_jis_x0208_1990): Renamed from `Qjapanese_jisx0208_1990';
1294 don't define it when UTF2000 is not defined.
1295 (syms_of_mule_charset): Modify for `Qmap_jis_x0208'; rename
1296 `japanese-jisx0208-1990' to `=jis-x0208-1990'; don't define it
1297 when UTF2000 is not defined.
1298 (complex_vars_of_mule_charset): Modify for `Qmap_jis_x0208';
1299 rename `japanese-jisx0208-1990' to `=jis-x0208-1990'.
1301 2003-03-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1303 * char-ucs.h (LEADING_BYTE_UCS_GB): Deleted.
1305 * mule-charset.c (Vcharset_ucs_gb): Deleted.
1307 (syms_of_mule_charset): Delete `ucs-gb'.
1308 (complex_vars_of_mule_charset): Likewise.
1310 2003-03-04 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1312 * char-ucs.h (LEADING_BYTE_UCS_CNS): Deleted.
1314 * mule-charset.c (Vcharset_ucs_cns): Deleted.
1315 (Qucs_cns): Deleted.
1316 (syms_of_mule_charset): Delete `ucs-cns'.
1317 (complex_vars_of_mule_charset): Likewise.
1319 2003-03-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1321 * char-ucs.h (LEADING_BYTE_UCS_JIS): Deleted.
1323 * mule-charset.c (Vcharset_ucs_jis): Deleted.
1324 (Qucs_jis): Deleted.
1325 (syms_of_mule_charset): Delete `ucs-jis'.
1326 (complex_vars_of_mule_charset): Likewise.
1328 2003-03-02 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1330 * char-ucs.h (LEADING_BYTE_UCS_KS): Deleted.
1332 * mule-charset.c (Vcharset_ucs_ks): Deleted.
1334 (syms_of_mule_charset): Delete `ucs-ks'.
1335 (complex_vars_of_mule_charset): Likewise.
1337 2003-03-01 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1339 * mule-charset.c (Vcharset_ideograph_daikanwa_2): Deleted.
1340 (Qideograph_daikanwa_2): Deleted.
1341 (syms_of_mule_charset): Delete `ideograph-daikanwa-2'.
1342 (complex_vars_of_mule_charset): Likewise.
1344 * char-ucs.h (LEADING_BYTE_DAIKANWA_0): Deleted.
1345 (LEADING_BYTE_DAIKANWA_1): Deleted.
1346 (LEADING_BYTE_DAIKANWA_2): Deleted.
1347 (MIN_CHAR_DAIKANWA): Deleted.
1348 (MAX_CHAR_DAIKANWA): Deleted.
1350 2003-02-27 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1352 * char-ucs.h (LEADING_BYTE_DAIKANWA_3): Deleted.
1353 (LEADING_BYTE_HANZIKU_{1..12}): Deleted.
1354 ({MIN|MAX}_CHAR_HANZIKU_{1..12}): Deleted.
1356 * mule-charset.c (Vcharset_ideograph_hanziku_{1..12}): Deleted.
1357 (Vcharset_ideograph_daikanwa): Deleted.
1358 (Qideograph_hanziku_{1..12}): Deleted.
1359 (Qideograph_daikanwa): Deleted.
1360 (encode_builtin_char_1): Don't use {MIN|MAX}_CHAR_DAIKANWA and
1361 Vcharset_ideograph_daikanwa.
1362 (syms_of_mule_charset): Delete `ideograph-daikanwa' and
1363 `ideograph-hanziku-{1..12}'.
1364 (complex_vars_of_mule_charset): Likewise.
1366 2003-02-26 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1368 * char-ucs.h (LEADING_BYTE_GT_PJ_{1..11}): Deleted.
1370 * mule-charset.c (Vcharset_ideograph_gt_pj_{1..11}): Deleted.
1371 (Qideograph_gt_pj_{1..11}): Deleted.
1372 (syms_of_mule_charset): Delete `ideograph-gt-pj-{1..11}'.
1373 (complex_vars_of_mule_charset): Likewise.
1375 2003-02-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1377 * mule-charset.c (Vcharset_ucs_big5): Deleted.
1378 (Vcharset_ideograph_gt): Deleted.
1379 (Qucs_big5): Deleted.
1380 (Qideograph_gt): Deleted.
1381 (syms_of_mule_charset): Delete symbol `ucs-big5' and
1383 (complex_vars_of_mule_charset): Delete coded-charset `ucs-big5'
1386 * char-ucs.h (LEADING_BYTE_UCS_BIG5): Deleted.
1387 (LEADING_BYTE_GT): Deleted.
1388 (MIN_CHAR_GT): Deleted.
1389 (MAX_CHAR_GT): Deleted.
1391 2003-02-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1393 * chartab.c (Fput_char_attribute): Canonicalise charset-aliases.
1395 2003-01-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1397 * chartab.c (save_uint8_byte_table): Add new argument `filter'.
1398 (save_uint16_byte_table): Likewise.
1399 (save_byte_table): Likewise; convert values by it.
1400 (Fput_char_attribute): Don't use `char-refs-simplify-char-specs'
1401 for `ideographic-structure'.
1402 (Fsave_char_attribute_table): Use `char-refs-simplify-char-specs'
1403 as the filter for `ideographic-structure'.
1405 2003-01-07 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1407 * chartab.c (put_char_composition): New function.
1408 (Fput_char_attribute): Use `put_char_composition'; use
1409 `Fchar_refs_simplify_char_specs' for `ideographic-structure'.
1411 * fns.c (simplify_char_spec): New function.
1412 (char_ref_simplify_spec): New function.
1413 (Fchar_refs_simplify_char_specs): New function.
1414 (syms_of_fns): Add new builtin function
1415 `char-refs-simplify-char-specs'.
1417 2003-01-05 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1419 * mule-charset.c (Vcharset_ideograph_cbeta): Deleted.
1420 (Qideograph_cbeta): Deleted.
1421 (syms_of_mule_charset): Don't define `ideograph-cbeta'.
1422 (complex_vars_of_mule_charset): Likewise.
1424 * char-ucs.h (LEADING_BYTE_CBETA): Deleted.
1425 (MIN_CHAR_CBETA): Comment out.
1426 (MAX_CHAR_CBETA): Likewise.
1428 2002-12-30 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1430 * mule-charset.c, chartab.h, casetab.c, char-ucs.h, chartab.c: Use
1431 `HAVE_CHISE_CLIENT' instead of `HAVE_DATABASE' to indicate the
1432 CHISE client feature.
1434 2002-12-25 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1436 * mule.c (vars_of_mule): Update `utf-2000-version' to 0.20.
1438 2002-12-19 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1440 * mule-charset.c (charset_lookup_description_1): Use
1441 `NUM_LEADING_BYTES' in UTF-2000.
1443 2002-12-18 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1445 * char-ucs.h (GC_CHARSETP): Deleted.
1447 2002-12-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1449 * char-ucs.h (MAX_CHAR_GT): Updated.
1451 2002-12-15 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1453 * text-coding.c: Sync with XEmacs 21.4.10.
1455 2002-11-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1457 * mule-charset.c (Vcharset_china3_jef): Deleted.
1458 (Qchina3_jef): Deleted.
1459 (syms_of_mule_charset): Don't define `china3-jef'.
1460 (complex_vars_of_mule_charset): Likewise.
1462 * char-ucs.h (LEADING_BYTE_CHINA3_JEF): Deleted.
1463 (MIN_CHAR_CHINA3_JEF): Comment out.
1464 (MAX_CHAR_CHINA3_JEF): Comment out.
1466 2002-11-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1468 * mule-charset.c (Vcharset_ucs_gb): New variable.
1469 (Qucs_gb): New variable.
1470 (syms_of_mule_charset): Add new symbol `ucs-gb'.
1471 (complex_vars_of_mule_charset): Add new coded-charset `ucs-gb'.
1473 * char-ucs.h (LEADING_BYTE_UCS_GB): New macro.
1475 2002-11-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1477 * mule-charset.c (charset_code_point): if a coded-charset has a
1478 final-byte, don't inherit the builtin range of the mother CCS.
1480 2002-11-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1482 * mule-charset.c (charset_code_point): Fix problem about
1485 2002-11-14 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1487 * mule-charset.c (decode_builtin_char): Reorganized.
1489 2002-10-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1491 * text-coding.c (char_encode_as_entity_reference): Modify for
1492 `charset_code_point'.
1493 (char_encode_shift_jis): Likewise.
1494 (char_encode_big5): Likewise.
1495 (char_encode_utf8): Likewise.
1496 (char_encode_iso2022): Likewise.
1498 * mule-charset.c (charset_code_point): Add new argument
1500 (Fencode_char): Add new optional argument `defined_only'.
1502 * chartab.c (put_char_table): Modify for `charset_code_point'.
1504 * char-ucs.h (charset_code_point): Add new argument
1506 (encode_char_1): Modify for `charset_code_point'.
1508 2002-10-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1510 * mule-charset.c (complex_vars_of_mule_charset): Don't specify
1511 `MIN_CHAR_THAI' and `MAX_CHAR_THAI' for `thai-tis620'.
1513 2002-10-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1515 * mule-charset.c (Vcharset_jis_x0208): New variable in UTF-2000.
1516 (Qjis_x0208): Likewise.
1517 (decode_builtin_char): Prefer XCHARSET_MAX_CODE(charset) than
1518 XCHARSET_FINAL(charset).
1519 (charset_code_point): Modify condition for final-byte based
1521 (syms_of_mule_charset): Add new symbol `=jis-x0208' in UTF-2000.
1522 (complex_vars_of_mule_charset): Add new coded-charset `=jis-x0208'
1523 in UTF-2000; specify `=jis-x0208' as the mother of
1524 `japanese-jisx0208-1978', `japanese-jisx0208' and
1525 `japanese-jisx0208-1990' in UTF-2000.
1527 2002-10-27 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1529 * char-ucs.h (LEADING_BYTE_JIS_X0208): New macro.
1531 2002-10-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1533 * text-coding.c (decode_coding_utf16): Support UTF-16.
1534 (char_encode_utf16): Fixed.
1536 2002-10-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1538 * text-coding.c (Qutf16): New variable in MULE.
1539 (Fmake_coding_system): Accept `utf-16' as `type' in MULE.
1540 (Fcoding_system_type): Add `utf-16' in MULE.
1541 (struct detection_state): Add a structure for utf16 in MULE.
1542 (detect_coding_type): Setup st->utf16.mask in MULE.
1543 (mule_decode): Use `decode_coding_utf16' for `CODESYS_UTF16' in
1545 (reset_encoding_stream): Use `char_encode_utf16' and
1546 `char_finish_utf16' for `CODESYS_UTF16' in MULE.
1547 (detect_coding_utf16): New function [incomplete].
1548 (decode_coding_utf16): New function [support only UCS-2].
1549 (char_encode_utf16): New function.
1550 (char_finish_utf16): New function.
1551 (syms_of_file_coding): Add new symbol `utf-16'; setup
1552 `coding_category_symbol[CODING_CATEGORY_UTF16]'.
1554 * file-coding.h (enum coding_system_type): Add `CODESYS_UTF16' in
1556 (enum coding_category_type): Add `CODING_CATEGORY_UTF16' in MULE.
1557 (CODING_CATEGORY_UTF16_MASK): New macro in MULE.
1559 2002-10-08 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1561 * chartab.c (put_char_table): When a charset is specified as a
1562 range in UTF-2000, don't support builtin characters.
1564 2002-09-30 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1566 * mule-charset.c (decode_defined_char): Don't refer external
1567 database if Qunbound or Qnil are found.
1568 (Fsave_charset_mapping_table): Don't define it if
1569 HAVE_CHISE_CLIENT is not defined.
1570 (Freset_charset_mapping_table): New function.
1571 (load_char_decoding_entry_maybe): Store Qnil if a character is not
1572 found in external database.
1573 (syms_of_mule_charset): Don't define `save-charset-mapping-table'
1574 if HAVE_CHISE_CLIENT is not defined; add new builtin function
1575 `reset-charset-mapping-table' if HAVE_CHISE_CLIENT is defined.
1577 2002-09-18 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1579 * text-coding.c (decode_coding_utf8): Check CCS is specified or
1582 2002-08-26 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1584 * chartab.h: Add extern declarations for Qdowncase, Qflippedcase,
1585 Q_lowercase, Q_uppercase in UTF-2000.
1587 * chartab.c (get_char_table): Add special code for the standard
1588 case table to use character attribute `->downcase' and
1589 `->uppercase' for case operations in UTF-2000.
1591 * casetab.c (Qflippedcase): New variable in UTF-2000.
1592 (Q_lowercase): Likewise.
1593 (Q_uppercase): Likewise.
1594 (syms_of_casetab): Add new symbols `flippedcase', `->lowercase'
1595 and `->uppercase' in UTF-2000.
1596 (complex_vars_of_casetab): Assign attribute name `downcase' to
1597 downcase and CANON table of Vstandard_case_table in UTF-2000;
1598 assign attribute name `flippedcase' to upcase and EQV table of
1599 Vstandard_case_table in UTF-2000.
1601 2002-08-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1603 * text-coding.c (decode_add_er_char): Support isolated-chars.
1604 (char_encode_as_entity_reference): Likewise.
1606 2002-08-13 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1608 * emacs.c (Vutf_2000_lisp_directory): New variable.
1609 (Vconfigure_utf_2000_lisp_directory): Likewise.
1610 (complex_vars_of_emacs): Add new variable
1611 `utf-2000-lisp-directory' and `configure-utf-2000-lisp-directory'.
1613 2002-08-12 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1615 * char-ucs.h (DECODE_CHAR): Delete special code for
1616 `chinese-big5-1' and `chinese-big5-2'.
1618 * mule-charset.c (Qbig5_1): New variable in UTF-2000.
1619 (Qbig5_2): Likewise.
1620 (decode_defined_char): Support CONVERSION_BIG5_1 and
1622 (decode_builtin_char): Likewise.
1623 (charset_code_point): Likewise.
1624 (Fmake_charset): Accept `big5-1' and `big5-2' as a value of
1625 'conversion in UTF-2000.
1626 (syms_of_mule_charset): Add new symbol `big5-1' and `big5-2'.
1627 (complex_vars_of_mule_charset): Define `chinese-big5-1' and
1628 `chinese-big5-2' as children of `chinese-big5'.
1630 * char-ucs.h (CONVERSION_BIG5_1): New macro.
1631 (CONVERSION_BIG5_2): New macro.
1633 2002-08-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1635 * text-coding.c (char_encode_big5): Support entity-reference.
1637 2002-08-10 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1639 * text-coding.c (char_encode_as_entity_reference): New function.
1640 (char_encode_utf8): Use `char_encode_as_entity_reference'.
1642 2002-08-09 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1644 * text-coding.c (decode_coding_big5): Support entity-reference
1647 2002-08-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1649 * text-coding.c (allocate_coding_system): Initialize initial
1650 charsets for CODESYS_UTF8.
1651 (Fmake_coding_system): Accept charset-g0, charset-g1 and
1652 charset-g2 for CODESYS_UTF8.
1653 (decode_coding_utf8): Use charset-g0.
1654 (char_encode_utf8): Use charset-g0; use charset-g1 and charset-g2
1655 to force variants to map to UCS.
1657 2002-07-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1659 * text-coding.c (Qutf_8_mcs): New variable.
1660 (syms_of_file_coding): Add new symbol `utf-8-mcs' in UTF-2000.
1661 (complex_vars_of_file_coding): Define coding-system `utf-8-mcs'
1662 instead of `utf-8' in UTF-2000.
1664 2002-07-22 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1666 * mule-charset.c (charset_code_point): If CHARSET_CONVERSION is
1667 CONVERSION_IDENTICAL, identical conversion is used even if a CCS
1668 is ISO-2022 style; instead of it, CONVERSION_94, CONVERSION_96,
1669 CONVERSION_94x94, CONVERSION_96x96, CONVERSION_94x94x94,
1670 CONVERSION_96x96x96, CONVERSION_94x94x94x94 and
1671 CONVERSION_96x96x96x96 are introduced.
1672 (complex_vars_of_mule_charset): Specify CONVERSION_96 instead of
1673 CONVERSION_IDENTICAL for thai-tis620; Specify CONVERSION_94x94
1674 instead of CONVERSION_IDENTICAL for japanese-jisx0208-1990.
1676 * char-ucs.h (CONVERSION_94): New macro.
1677 (CONVERSION_96): New macro.
1678 (CONVERSION_94x94): New macro.
1679 (CONVERSION_96x96): New macro.
1680 (CONVERSION_94x94x94): New macro.
1681 (CONVERSION_96x96x96): New macro.
1682 (CONVERSION_94x94x94x60): New macro.
1683 (CONVERSION_94x94x94x94): New macro.
1684 (CONVERSION_96x96x96x96): New macro.
1686 2002-07-17 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1688 * chartab.c (Vcharacter_variant_table): Deleted.
1689 (Fchar_variants): Use character-attribute `->ucs-variants' instead
1690 of `Vcharacter_variant_table'.
1691 (Fput_char_attribute): Likewise.
1692 (vars_of_chartab): Don't setup `Vcharacter_variant_table'.
1693 (complex_vars_of_chartab): Likewise.
1695 2002-07-17 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1697 * lisp.h: Add an EXFUN for `Fchar_ref_p'.
1699 * fns.c (Qideographic_structure): New variable.
1700 (Qkeyword_char): New variable.
1701 (ids_format_unit): New function.
1702 (Fideographic_structure_to_ids): New function.
1703 (syms_of_fns): Add new symbols `ideographic-structure' and
1704 `:char'; add new builtin function `ideographic-structure-to-ids'.
1706 * data.c (Fchar_ref_p): New function.
1707 (syms_of_data): Add new builtin function `char-ref-p'.
1709 * chartab.h: Add an EXFUN for `Ffind_char'.
1711 2002-07-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1713 * text-coding.c (Vcharacter_composition_table): Deleted.
1714 (COMPOSE_ADD_CHAR): Use the implementation for external-DB support
1717 * chartab.c: Add EXFUN for `Fmap_char_attribute' in every
1719 (Vcharacter_composition_table): Deleted.
1720 (Fget_composite_char): Use the implementation for external-DB
1721 support in every UTF-2000.
1722 (Fput_char_attribute): Likewise.
1723 (char_attribute_system_db_file): Don't define if external-DB
1724 feature is not available.
1725 (Fsave_char_attribute_table): Likewise.
1726 (Fmount_char_attribute_table): Likewise.
1727 (Fclose_char_attribute_table): Likewise.
1728 (Freset_char_attribute_table): Likewise.
1729 (Fload_char_attribute_table): Likewise.
1730 (syms_of_chartab): Don't define `save-char-attribute-table',
1731 `mount-char-attribute-table', `reset-char-attribute-table',
1732 `close-char-attribute-table' and `load-char-attribute-table' if
1733 external-DB feature is not available.
1734 (vars_of_chartab): Don't setup `Vcharacter_composition_table'.
1736 2002-07-15 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1738 * text-coding.c (Qcomposition): Add extern if external-DB feature
1740 (Vcharacter_composition_table): Don't add extern if external-DB
1741 feature is supported.
1742 (COMPOSE_ADD_CHAR): Modify for new data-representation of
1743 character composition rule if external-DB feature is supported.
1745 * chartab.c (Vcharacter_composition_table): Don't define if
1746 external-DB feature is supported.
1747 (Qcomposition): New variable.
1748 (Fget_composite_char): New implementation for external-DB support.
1749 (Fput_char_attribute): Use `composition' property of each
1750 character instead of `Vcharacter_composition_table' to store
1751 character-composition rules if external-DB feature is supported.
1752 (syms_of_chartab): Add new symbol `composition'.
1753 (vars_of_chartab): Don't setup `Vcharacter_composition_table' if
1754 external-DB feature is supported.
1756 2002-07-14 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1758 * chartab.c (Vchar_db_stingy_mode): New variable.
1759 (load_char_attribute_maybe): Close database if
1760 Vchar_db_stingy_mode is not NIL.
1761 (Fload_char_attribute_table_map_function): Use
1762 `get_char_id_table_0' instead of `get_char_id_table'.
1763 (vars_of_chartab): Add new variable `char-db-stingy-mode'.
1765 * chartab.h (get_char_id_table_0): New inline function.
1766 (get_char_id_table): Use `get_char_id_table_0'.
1768 2002-07-07 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1770 * text-coding.c (decode_coding_utf8): Use `COMPOSE_FLUSH_CHARS'
1771 and `COMPOSE_ADD_CHAR'.
1772 (decode_coding_iso2022): Use `decode_flush_er_chars'.
1774 2002-07-07 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1776 * text-coding.c (COMPOSE_FLUSH_CHARS): Use `decode_add_er_char'
1777 instead of `DECODE_ADD_UCS_CHAR'.
1778 (COMPOSE_ADD_CHAR): Likewise.
1780 2002-07-06 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1782 * text-coding.c (decode_flush_er_chars): New inline function.
1783 (decode_add_er_char): New function.
1784 (decode_coding_utf8): Use `decode_flush_er_chars' and
1785 `decode_add_er_char'.
1787 2002-07-06 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1789 * text-coding.c (decode_coding_utf8): Flush for er_buf must be
1790 done before `decode_output_utf8_partial_char'.
1792 * mule-charset.c (complex_vars_of_mule_charset): Specify
1793 `Vcharset_ucs' as the mother of `Vcharset_ucs_cns',
1794 `Vcharset_ucs_ks' and `Vcharset_ucs_big5'.
1796 2002-07-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1798 * mule-charset.c (decode_defined_char): New function; search
1800 (decode_builtin_char): Don't search mother if
1801 XCHARSET_MAX_CODE(charset) == 0.
1802 (charset_code_point): Search mother if XCHARSET_MAX_CODE(charset)
1803 == 0 even if code >= XCHARSET_MAX_CODE(charset).
1804 (Fdecode_char): Use `decode_defined_char' instead of
1805 `DECODE_DEFINED_CHAR'.
1806 (complex_vars_of_mule_charset): Specify `Vcharset_ucs' as the
1807 mother of `Vcharset_ucs_jis'.
1809 * text-coding.c (decode_coding_big5): Use `decode_defined_char'
1810 instead of `DECODE_DEFINED_CHAR'.
1812 * char-ucs.h (decode_defined_char): Renamed from
1813 `DECODE_DEFINED_CHAR'; changed to normal function.
1814 (DECODE_CHAR): Use `decode_defined_char' instead of
1815 `DECODE_DEFINED_CHAR'.
1817 * lisp.h: Add `EXFUN' for `Fstring_to_number'.
1819 2002-07-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1821 * char-ucs.h: Add `extern' for `Vcharset_ucs'.
1823 * text-coding.c (Vcoded_charset_entity_reference_alist): New
1825 (Quse_entity_reference): New variable.
1829 (coding_system_description): Add description for
1830 `ccs_priority_list'.
1831 (mark_coding_system): Mark `ccs_priority_list' in UTF-2000.
1832 (allocate_coding_system): Initialize `ccs_priority_list' in
1834 (Fmake_coding_system): Add description about
1835 'use-entity-reference; setup CODING_SYSTEM_USE_ENTITY_REFERENCE
1837 (Fcoding_system_property): Accept `disable-composition' and
1838 `use-entity-reference' in UTF-2000.
1839 (struct decoding_stream): Add new member `er_counter' and `er_buf'
1841 (reset_decoding_stream): Initialize `str->er_counter' in UTF-2000.
1842 (decode_coding_utf8): Decode entity-reference if
1843 CODING_SYSTEM_USE_ENTITY_REFERENCE (str->codesys).
1844 (char_encode_utf8): Encode non-Unicode characters as
1845 entity-references if CODING_SYSTEM_USE_ENTITY_REFERENCE
1847 (syms_of_file_coding): Add new symbols `use-entity-reference',
1849 (vars_of_file_coding): Add new variable
1850 `coded-charset-entity-reference-alist'.
1851 (complex_vars_of_file_coding): Declare `disable-composition' and
1852 `use-entity-reference' to be coding-system-properties in UTF-2000.
1854 * file-coding.h (struct Lisp_Coding_System): Add new member
1855 `use_entity_reference' and `ccs_priority_list'.
1856 (CODING_SYSTEM_USE_ENTITY_REFERENCE): New macro.
1857 (CODING_SYSTEM_CCS_PRIORITY_LIST): New macro.
1858 (XCODING_SYSTEM_USE_ENTITY_REFERENCE): New macro.
1860 2002-07-03 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1862 * chartab.c (save_uint8_byte_table): Don't clear the table.
1863 (save_uint16_byte_table): Likewise.
1864 (save_byte_table): Likewise.
1865 (Fmount_char_attribute_table): New function.
1866 (syms_of_chartab): Add new builtin function
1867 `mount-char-attribute-table'.
1869 2002-07-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1871 * mule-charset.c (Fsave_charset_mapping_table): Open database as
1873 (load_char_decoding_entry_maybe): Open database as read-only mode.
1875 * chartab.c (Fsave_char_attribute_table): Don't share `ct->db';
1876 open database as "w+" mode.
1877 (load_char_attribute_maybe): Open database as read-only mode.
1878 (Fload_char_attribute_table): Likewise.
1880 2002-07-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1882 * chartab.c (mark_char_table): Don't refer `ct->db_file'.
1883 (char_table_description): Delete member `db_file'.
1884 (Fmake_char_table): Don't refer `ct->db_file'.
1885 (Fcopy_char_table): Likewise.
1886 (Fsave_char_attribute_table): Likewise.
1887 (Fclose_char_attribute_table): Likewise.
1888 (Freset_char_attribute_table): Likewise.
1889 (load_char_attribute_maybe): Likewise.
1890 (Fload_char_attribute_table): Likewise.
1892 * chartab.h (struct Lisp_Char_Table): Delete member `db_file'.
1894 2002-07-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1896 * chartab.c: Add an EXFUN for `Fmap_char_attribute'.
1897 (Fsave_char_attribute_table): Don't check `ct->db_file' if
1899 (load_char_attribute_maybe): Likewise.
1900 (Fload_char_attribute_table): Likewise.
1902 2002-07-01 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1904 * chartab.c (Fclose_char_attribute_table): Set Qnil on
1905 `ct->db_file' unconditionally.
1907 2002-07-01 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1909 * chartab.c (mark_char_table): Mark `ct->db_file' and `ct->db' in
1911 (char_table_description): Add description for `db_file' and `db'
1913 (Fmake_char_table): Initialize `ct->db_file' and `ct->db' in
1915 (Fcopy_char_table): Copy `ct->db_file' and `ct->db' in UTF-2000.
1916 (Fsave_char_attribute_table): Use `ct->db_file' and `ct->db'.
1917 (Fclose_char_attribute_table): New function.
1918 (Freset_char_attribute_table): Reset `ct->db_file' and `ct->db'.
1919 (load_char_attribute_maybe): Change interface; use `cit->db_file'
1921 (Fload_char_attribute_table): Use `ct->db_file' and `ct->db'.
1922 (syms_of_chartab): Add new builtin function
1923 `Fclose_char_attribute_table'.
1925 2002-06-28 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1927 * chartab.h (struct Lisp_Char_Table): Add new member `db_file' and
1929 (load_char_attribute_maybe): Change interface.
1930 (get_char_id_table): Modify for `load_char_attribute_maybe'.
1932 2002-06-27 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1934 * database.h: Add an EXFUN for `Fdatabase_live_p'.
1936 2002-04-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1938 * mule-charset.c (decode_builtin_char): Use `decode_builtin_char'
1939 instead of `DECODE_CHAR' for mother; don't use special code for
1940 chinese-big5 to use code space of chinese-big5-1 and
1942 (complex_vars_of_mule_charset): Use `MIN_CHAR_BIG5_CDP' and
1943 `MAX_CHAR_BIG5_CDP' for chinese-big5.
1945 * char-ucs.h (MIN_CHAR_BIG5_CDP): Revival.
1946 (MAX_CHAR_BIG5_CDP): Revival.
1948 2002-04-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1950 * mule-charset.c (complex_vars_of_mule_charset): Use "big5-0" as
1951 the XLFD registry-encoding name of `chinese-big5'.
1953 2002-04-08 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1955 * mule-charset.c (Vcharset_chinese_big5_cdp): Deleted.
1956 (Qchinese_big5_cdp): Deleted.
1957 (syms_of_mule_charset): Delete symbol `chinese-big5-cdp'.
1958 (complex_vars_of_mule_charset): Delete coded-charset
1961 * char-ucs.h (CHARSET_ID_OFFSET): Deleted.
1962 (LEADING_BYTE_*): Use `MIN_LEADING_BYTE + n' instead of
1963 `CHARSET_ID_OFFSET - n' for private CCS.
1964 (LEADING_BYTE_CHINESE_BIG5_CDP): Deleted.
1965 (MIN_LEADING_BYTE_PRIVATE): Use `(MIN_LEADING_BYTE + 97)' instead
1966 of `MIN_LEADING_BYTE'.
1967 (MAX_LEADING_BYTE_PRIVATE): Use `-1' instead of
1968 `(CHARSET_ID_OFFSET - 97)'.
1969 (MIN_CHAR_BIG5_CDP): Deleted.
1970 (MAX_CHAR_BIG5_CDP): Deleted.
1972 2002-03-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1974 * mule.c (vars_of_mule): Update `utf-2000-version' to 0.19.
1976 2002-03-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
1978 * mule.c (Vutf_2000_version): New variable [moved from chartab.c].
1979 (vars_of_mule): Add new variable `utf-2000-version' [moved from
1982 * chartab.c (Vutf_2000_version): Moved to mule.c.
1983 (vars_of_chartab): Move code about `utf-2000-version' into mule.c.
1985 2002-03-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1987 * mule-charset.c (load_char_decoding_entry_maybe): Don't define it
1988 when HAVE_CHISE_CLIENT is not defined.
1990 * mule.c (vars_of_mule): Provide feature `chise' when
1991 HAVE_CHISE_CLIENT is defined.
1993 2002-03-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
1995 * config.h.in (UTF2000): Add comment.
1996 (HAVE_CHISE_CLIENT): New macro.
1998 2002-02-25 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2000 * chartab.c (Fchar_variants): Check Vcharacter_variant_table is
2002 (Fput_char_attribute): Likewise.
2003 (char_attribute_system_db_file): Encode file-name of attribute.
2004 (vars_of_chartab): Set Qunbound into Vcharacter_variant_table as
2007 2002-02-13 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2009 * mule-charset.c (put_char_ccs_code_point): Delete unused codes.
2010 (Fsave_charset_mapping_table): Use
2011 `char_attribute_system_db_file'.
2012 (load_char_decoding_entry_maybe): Likewise.
2014 * chartab.h (Qsystem_char_id): New external variable.
2015 (char_attribute_system_db_file): New prototype.
2017 * chartab.c (Qsystem_char_id): New variable in UTF-2000.
2018 (char_attribute_system_db_file): New function.
2019 (Fsave_char_attribute_table): Use `char_attribute_system_db_file'.
2020 (Freset_char_attribute_table): Likewise.
2021 (load_char_attribute_maybe): Likewise.
2022 (Fload_char_attribute_table): Likewise.
2023 (syms_of_chartab): Add new symbol `system-char-id'.
2025 2002-02-12 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2027 * char-ucs.h (DECODE_DEFINED_CHAR): Don't check
2028 `XCHARSET_GRAPHIC(ccs)'.
2030 2002-02-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2032 * mule-charset.c (Fsave_charset_mapping_table): Fixed.
2034 2002-02-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2036 * chartab.c (Q_ucs_variants): New variable.
2037 (syms_of_chartab): Add new symbol `->ucs-variants'.
2038 (complex_vars_of_chartab): Set `Vcharacter_variant_table' on
2039 `Vchar_attribute_hash_table' as the value of `->ucs-variants'; set
2040 `->ucs-variants' on `XCHAR_TABLE_NAME (Vcharacter_variant_table)'.
2042 * mule-charset.c (load_char_decoding_entry_maybe): New function.
2044 * char-ucs.h (load_char_decoding_entry_maybe): New prototype when
2045 `HAVE_DATABASE' is defined.
2046 (DECODE_DEFINED_CHAR): Use `load_char_decoding_entry_maybe' when
2047 `HAVE_DATABASE' is defined.
2049 2002-02-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2051 * chartab.c (Fsave_char_attribute_table): Don't clear internal
2053 (Freset_char_attribute_table): New function.
2054 (syms_of_chartab): Add new builtin function
2055 `reset-char-attribute-table'.
2057 2002-02-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2059 * chartab.c (load_char_attribute_maybe): Don't make directories.
2061 2002-02-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2063 * char-ucs.h: Add EXFUN for `Fmake_directory_internal'.
2065 * mule-charset.c (put_char_ccs_code_point): Don't prepare a vector
2068 2002-02-11 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2070 * mule-charset.c (Fsave_charset_mapping_table): Use
2071 `XCHARSET_BYTE_SIZE' instead of `XCHARSET_CHARS'.
2073 * char-ucs.h (put_ccs_octet_table): Use `XCHARSET_BYTE_SIZE'
2074 instead of `XCHARSET_CHARS'.
2076 2002-02-10 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2078 * mule-charset.c (CHARSET_BYTE_SIZE): Moved to char-ucs.h.
2079 (XCHARSET_BYTE_SIZE): Likewise.
2081 * char-ucs.h (CHARSET_BYTE_SIZE): New inline function [moved from
2083 (XCHARSET_BYTE_SIZE): Likewise.
2085 2002-02-10 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2087 * chartab.c (Fput_char_attribute): Use exec-directory instead of
2088 data-directory to store database.
2089 (Fsave_char_attribute_table): Likewise.
2090 (load_char_attribute_maybe): Likewise.
2091 (Fload_char_attribute_table): Likewise.
2093 2002-02-08 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2095 * mule-charset.c (Fsave_charset_mapping_table): New function.
2096 (syms_of_mule_charset): Add new builtin function
2097 `save-charset-mapping-table'.
2099 2002-02-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2101 * char-ucs.h (decoding_table_check_elements): Delete prototype.
2102 (get_ccs_octet_table): New inline function.
2103 (put_ccs_octet_table): Likewise.
2104 (decoding_table_put_char): Use `get_ccs_octet_table' and
2105 `put_ccs_octet_table'.
2106 (decoding_table_remove_char): Use `decoding_table_put_char'.
2107 (DECODE_DEFINED_CHAR): Use `get_ccs_octet_table'.
2109 * mule-charset.c (remove_char_ccs): Store Qunbound instead of Qnil
2110 into encoding_table.
2111 (make_charset): Use Qunbound instead Qnil as initial value of
2114 2002-02-04 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2116 * chartab.c (map_over_uint8_byte_table): Set Qunbound if an
2117 element is Qunloaded.
2118 (map_over_uint16_byte_table): Likewise.
2119 (map_over_byte_table): Likewise.
2120 (map_char_table): Likewise for CHARTAB_RANGE_ALL in UTF-2000; when
2121 CHARTAB_RANGE_CHARSET is specified in UTF-2000 with external
2122 database support, load encoding-table of the specified
2123 coded-charset if it is not loaded yet.
2124 (save_uint8_byte_table): New function of UTF-2000 with external
2126 (save_uint16_byte_table): Likewise.
2127 (save_byte_table): Likewise.
2128 (Fput_char_attribute): Don't store value into external database
2129 even if the external database feature is supported in UTF-2000;
2130 set `attribute' as name of char-table if the external database
2131 feature is supported.
2132 (Fsave_char_attribute_table): New function in UTF-2000.
2133 (syms_of_chartab): Add new builtin function
2134 `save-char-attribute-table' in UTF-2000.
2136 2002-02-03 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2138 * chartab.c (char_attribute_table_to_put): New variable in
2140 (Qput_char_table_map_function): Likewise.
2141 (value_to_put): Likewise.
2142 (Fput_char_table_map_function): New function in UTF-2000.
2143 (put_char_table): Use `Fmap_char_attribute' for
2144 CHARTAB_RANGE_CHARSET in UTF-2000.
2145 (Fput_char_attribute): Store symbol instead of string in
2146 `XCHAR_TABLE_NAME (table)'.
2147 (load_char_attribute_maybe): Likewise.
2148 (syms_of_chartab): Add new symbol/function
2149 `put-char-table-map-function'.
2151 2002-01-30 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2153 * database.h: Add new EXFUN for `Fmap_database'.
2155 * database.c (Fmap_database): Renamed from `Fmapdatabase'.
2156 (syms_of_database): Likewise.
2158 * chartab.h (struct Lisp_Char_Table): Add new member `unloaded' in
2160 (CHAR_TABLE_UNLOADED): New macro of UTF-2000.
2161 (XCHAR_TABLE_UNLOADED): Likewise.
2163 * chartab.c (fill_char_table): Initialize `ct->unloaded'.
2164 (Fput_char_attribute): Set XCHAR_TABLE_UNLOADED(table) if
2165 HAVE_DATABASE is defined.
2166 (char_attribute_table_to_load): New variable of UTF-2000 with
2167 external database support.
2168 (Qload_char_attribute_table_map_function): Likewise.
2169 (Fload_char_attribute_table_map_function): New function of
2170 UTF-2000 with external database support.
2171 (Fload_char_attribute_table): New function of UTF-2000.
2172 (Fmap_char_attribute): Call Fload_char_attribute_table if
2173 CHAR_TABLE_UNLOADED(ct) is set when HAVE_DATABASE is defined.
2174 (syms_of_chartab): Add new symbol and function
2175 `load-char-attribute-table-map-function' in UTF-2000 with external
2176 database support; add new function `load-char-attribute-table' in
2179 2002-01-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2181 * chartab.h (load_char_attribute_maybe): New prototype for
2182 UTF-2000 with DATABASE support.
2183 (get_char_id_table): Use `load_char_attribute_maybe' if
2184 HAVE_DATABASE is defined.
2186 * chartab.c (load_char_attribute_maybe): New function in UTF-2000
2187 with DATABASE support.
2189 2002-01-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2191 * chartab.c (Fput_char_attribute): Use S-expression as key of
2194 * chartab.h (get_char_id_table): Use S-expression as key of
2197 2002-01-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2199 * chartab.c (map_over_uint8_byte_table): Add new argument `root';
2200 if an element is not loaded, load the corresponding attributes
2201 from an external database.
2202 (map_over_uint16_byte_table): Likewise.
2203 (map_over_byte_table): Likewise.
2204 (map_char_table): Modify for `map_over_uint8_byte_table',
2205 `map_over_uint16_byte_table' and `map_over_byte_table'; if an
2206 element is not loaded, load the corresponding attributes from an
2208 (Fput_char_attribute): Change initial values to Qunloaded.
2210 * chartab.h (get_char_id_table): If a character attribute is not
2211 loaded and the attribute value is not found in an external
2212 database, store Qunbound as the attribute value.
2214 2002-01-22 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2216 * chartab.c (BT_UINT8_unloaded): New macro.
2217 (UINT8_VALUE_P): Accept Qunloaded.
2218 (UINT8_ENCODE): Likewise.
2219 (UINT8_DECODE): Likewise.
2220 (BT_UINT16_unloaded): New macro.
2221 (UINT16_VALUE_P): Accept Qunloaded.
2222 (UINT16_ENCODE): Likewise.
2223 (UINT16_DECODE): Likewise.
2224 (UINT8_TO_UINT16): Convert BT_UINT8_unloaded into
2226 (mark_char_table): Mark `ct->name' in UTF-2000.
2227 (char_table_description): Add `name' in UTF-2000.
2228 (Fmake_char_table): Initialize `ct->name'.
2229 (Fcopy_char_table): Copy `ct->name'.
2230 (Fput_char_attribute): Store value into an external database if
2231 HAVE_DATABASE is defined.
2233 * chartab.h (struct Lisp_Char_Table): Add new member `name' in
2235 (CHAR_TABLE_NAME): New macro in UTF-2000.
2236 (XCHAR_TABLE_NAME): New macro in UTF-2000.
2237 (get_char_id_table): Try to read an external database if Qunloaded
2238 is stored in a table.
2240 * symbols.c (init_symbols_once_early): Assign '#<unloaded> into
2243 2002-01-21 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2245 * database.h: Add EXFUN definitions for Fopen_database,
2246 Fput_database, Fget_database and Fclose_database.
2248 * data.c (Qunloaded): New variable in UTF-2000.
2250 * lisp.h (Qunloaded): New variable in UTF-2000.
2252 2002-01-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2254 * mule-charset.c (put_char_ccs_code_point): Modify for
2255 `decoding_table_remove_char' and `decoding_table_put_char'.
2256 (remove_char_ccs): Modify for `decoding_table_remove_char'.
2258 * char-ucs.h (decoding_table_remove_char): Change arguments to
2259 hide decoding_table vector.
2260 (decoding_table_put_char): Likewise.
2262 2002-01-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2264 * mule-charset.c (decoding_table_remove_char): Moved to
2266 (decoding_table_put_char): Likewise.
2268 * char-ucs.h (decoding_table_check_elements): New prototype [moved
2269 from mule-charset.c].
2270 (decoding_table_remove_char): New inline function [moved from
2272 (decoding_table_put_char): Likewise.
2274 2002-01-03 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2276 * mule-charset.c (Fmake_charset): Modify DOC-string for UTF-2000
2279 2001-12-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2281 * mule-charset.c (decode_builtin_char): Support mother charsets.
2283 2001-12-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2285 * mule-charset.c (Q94x94x60): New variable.
2286 (charset_code_point): Support conversion `94x94x60'.
2287 (Fmake_charset): Likewise.
2288 (syms_of_mule_charset): Add new symbol `94x94x60'.
2290 * char-ucs.h (CONVERSION_94x94x60): New macro.
2292 2001-12-31 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2294 * mule-charset.c (charset_code_point): Unify code about
2297 2001-12-30 MORIOKA Tomohiko <tomo@mousai.as.wakwak.ne.jp>
2299 * mule-charset.c (charset_code_point): Merge code about builtin
2300 characters into code about mother charsets; don't use
2301 `range_charset_code_point'.
2302 (range_charset_code_point): Deleted.
2304 2001-12-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2306 * mule-charset.c (Qcode_offset): New variable.
2307 (Fmake_charset): Use `XUINT' to get value of `min-code' and
2308 `max-code'; accept new property `code-offset'.
2309 (syms_of_mule_charset): Add new symbol `code-offset'.
2311 2001-12-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2313 * mule-charset.c (range_charset_code_point): Fixed.
2315 2001-12-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2317 * mule-charset.c (decode_builtin_char): Change semantics of
2318 code-offset of coded-charset.
2319 (charset_code_point): Likewise.
2320 (range_charset_code_point): Likewise.
2321 (complex_vars_of_mule_charset): Modify for the change.
2323 2001-12-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2325 * mule-charset.c (Fencode_char): Reverse arguments.
2327 * mule-charset.c (charset_code_point): Fixed.
2329 2001-12-25 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2331 * mule-charset.c (Vcharset_mojikyo): Deleted.
2332 (Vcharset_mojikyo_2022_1): Deleted.
2333 (Vcharset_mojikyo_pj_{1..21}): Deleted.
2334 (Qmin_code): New variable in UTF-2000.
2335 (Qmax_code): Likewise.
2336 (Qmother): Likewise.
2337 (Qconversion): Likewise.
2339 (Qmojikyo): Deleted.
2340 (Qmojikyo_2022_1): Deleted.
2341 (Qmojikyo_pj_{1..22}): Deleted.
2342 (mark_charset): Mark `cs->mother'.
2343 (charset_description): Add description for `mother'.
2344 (make_charset): Rename `ucs_{min|max}' to `{min|max}_code'; add
2345 new arguments `mother' and `conversion'; use
2346 `CHARSET_{MIN|MAX}_CODE' instead of `CHARSET_UCS_{MIN|MAX}'.
2347 (charset_code_point): Moved from char-ucs.h; support `mother'
2349 (range_charset_code_point): use `CHARSET_{MIN|MAX}_CODE' instead
2350 of `CHARSET_UCS_{MIN|MAX}'; delete hard code for `mojikyo-2022-1'.
2351 (Fmake_charset): Allow 3 and 4 as the value of `dimension' in
2352 UTF-2000; allow 128 and 256 as the value of `chars' in UTF-2000;
2353 allow 2 as the value of `graphic' in UTF-2000; add new properties
2354 `min-code', `max-code', `mother', `conversion' in UTF-2000; don't
2355 require `final' in UTF-2000; modify for `make_charset'.
2356 (Fmake_reverse_direction_charset): use `CHARSET_{MIN|MAX}_CODE'
2357 instead of `CHARSET_UCS_{MIN|MAX}'; modify for `make_charset'.
2358 (Fcharset_property): Support `mother', `min-code' and `max-code'.
2359 (Fencode_char): New function.
2360 (syms_of_mule_charset): Add new builtin function `encode-char' in
2361 UTF-2000; add new symbols `min-code', `max-code', `mother',
2362 `conversion' and `94x60'; delete symbols `mojikyo',
2363 `mojikyo-2022-1' and `mojikyo-pj-{1..21}'.
2364 (complex_vars_of_mule_charset): Modify for `make_charset' change;
2365 delete coded-charsets `mojikyo', `mojikyo-2022-1' and
2366 `mojikyo-pj-{1..21}'; delete `DEF_MOJIKYO_PJ'.
2368 * chartab.c (Fdefine_char): Use `XCHARSET_MAX_CODE' instead of
2369 `XCHARSET_UCS_MAX'; regard `chinese-big5' as a base CCS.
2371 * char-ucs.h (Vcharset_mojikyo): Deleted.
2372 (Vcharset_mojikyo_2022_1): Deleted.
2373 (LEADING_BYTE_MOJIKYO): Deleted.
2374 (LEADING_BYTE_MOJIKYO_2022_1): Deleted.
2375 (LEADING_BYTE_MOJIKYO_2022_2): Deleted.
2376 (LEADING_BYTE_MOJIKYO_PJ_{1 .. 21}): Deleted.
2377 (struct Lisp_Charset): Rename `ucs_{min|max}' to `{min|max}_code';
2378 add new member `mother'; add new member `conversion'.
2379 (CHARSET_MIN_CODE): Renamed from `CHARSET_UCS_MIN'.
2380 (CHARSET_MAX_CODE): Renamed from `CHARSET_UCS_MAX'.
2381 (CHARSET_MOTHER): New macro.
2382 (CHARSET_CONVERSION): New macro.
2383 (CONVERSION_IDENTICAL): New macro.
2384 (CONVERSION_94x60): New macro.
2385 (XCHARSET_MIN_CODE): Renamed from `CHARSET_MIN_CODE'.
2386 (XCHARSET_MAX_CODE): Renamed from `CHARSET_MAX_CODE'.
2387 (XCHARSET_MOTHER): New macro.
2388 (XCHARSET_CONVERSION): New macro.
2389 (MIN_CHAR_MOJIKYO): Deleted.
2390 (MAX_CHAR_MOJIKYO): Deleted.
2391 (DECODE_MOJIKYO_2022): Deleted.
2392 (DECODE_CHAR): Delete hard code for builtin Mojikyo characters.
2393 (charset_code_point): Changed to non-inline function.
2394 (encode_char_1): Use `charset_code_point'.
2395 (CHAR_TO_CHARC): Delete hard code for Mojikyo characters.
2397 2001-12-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2399 * lread.c (read_compiled_function): Fix prototype.
2400 (read_vector): Likewise.
2402 2001-12-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2404 * lrecord.h (struct lrecord_header): Delete `older'.
2405 (set_lheader_implementation): Delete code for `older'.
2406 (set_lheader_older_implementation): Deleted.
2407 (enum lrecord_type): Delete `lrecord_type_char_id_table'.
2408 (OLDER_RECORD_P): Deleted.
2409 (OLDER_RECORD_HEADER_P): Deleted.
2410 (alloc_older_lcrecord): Deleted.
2411 (alloc_older_lcrecord_type): Deleted.
2413 * alloc.c (all_older_lcrecords): Deleted.
2414 (alloc_older_lcrecord): Deleted.
2415 (disksave_object_finalization_1): Delete code for older objects.
2416 (mark_object): Don't use `OLDER_RECORD_HEADER_P'.
2417 (reinit_alloc_once_early): Don't initialize `all_older_lcrecords'.
2419 2001-12-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2421 * mule-charset.c (decoding_table_put_char): Use `make_vector'
2422 instead of `make_older_vector'.
2423 (put_char_ccs_code_point): Likewise.
2424 (mark_charset): Mark `cs->decoding_table'.
2425 (Fset_charset_mapping_table): Don't use `make_vector_newer'.
2427 * lisp.h (make_older_vector): Deleted.
2428 (make_vector_newer): Deleted.
2430 * config.h.in (HAVE_GGC): Deleted.
2432 * alloc.c (make_older_vector): Deleted.
2433 (make_vector_newer_1): Deleted.
2434 (make_vector_newer): Deleted.
2436 2001-12-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2438 * mule-charset.c (Vcharset_ideograph_daikanwa_2): New variable.
2439 (Qideograph_daikanwa_2): New variable.
2440 (syms_of_mule_charset): Add new symbol `ideograph-daikanwa-2'.
2441 (complex_vars_of_mule_charset): Add new coded-charset
2442 `ideograph-daikanwa-2'; use `LEADING_BYTE_DAIKANWA_3' instead of
2443 `LEADING_BYTE_DAIKANWA'.
2445 * char-ucs.h (LEADING_BYTE_DAIKANWA_0): New macro.
2446 (LEADING_BYTE_DAIKANWA_1): New macro.
2447 (LEADING_BYTE_DAIKANWA_2): New macro.
2448 (LEADING_BYTE_DAIKANWA_3): Renamed from `LEADING_BYTE_DAIKANWA'.
2450 2001-12-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2452 * mule-charset.c (complex_vars_of_mule_charset): Change
2453 DOC-strings and registry of `ideograph-daikanwa'; now it indicates
2454 the second revised version.
2456 2001-12-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2458 * mule-charset.c (Vcharset_ucs_smp): New variable.
2459 (Vcharset_ucs_sip): New variable.
2460 (Qucs_smp): New variable.
2461 (Qucs_sip): New variable.
2462 (encode_builtin_char_1): Treat MIN_CHAR_{SMP|SIP} to
2463 MAX_CHAR_{SMP|SIP} as `ucs-{smp|sip}'.
2464 (syms_of_mule_charset): Add new symbols `ucs-smp' and `ucs-sip'.
2465 (complex_vars_of_mule_charset): Modify middle-DOC and registry of
2466 `ucs-bmp'; add new coded-charset `ucs-smp' and `ucs-sip'; change
2467 charset width of `ucs-cns', `ucs-jis', `ucs-ks' and `ucs-big5'.
2469 * char-ucs.h (LEADING_BYTE_UCS_SMP): New macro.
2470 (LEADING_BYTE_UCS_SIP): New macro.
2471 (MIN_CHAR_SMP): New macro.
2472 (MAX_CHAR_SMP): New macro.
2473 (MIN_CHAR_SIP): New macro.
2474 (MAX_CHAR_SIP): New macro.
2476 2001-11-30 Yoshiki Hayashi <yoshiki@xemacs.org>
2478 * dumper.c (PDUMP_HASH_SIZE): Increase the size of hash table when
2481 2001-11-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2483 * mule-charset.c (put_char_ccs_code_point): Return canonicalized
2484 value; don't store value into `encoding_table' of `Lisp_Charset'.
2485 (mark_charset): `encoding_table' was deleted.
2486 (charset_description): Likewise.
2487 (make_charset): Likewise.
2488 (Fset_charset_mapping_table): Use `Fput_char_attribute' instead of
2489 `put_char_ccs_code_point'.
2491 * chartab.h (Fput_char_attribute): New EXFUN.
2493 * chartab.c (Fchar_attribute_alist): Name space of CCS-attributes
2494 is unified with normal symbol space.
2495 (Fget_char_attribute): Likewise.
2496 (Fput_char_attribute): Likewise; behavior of
2497 `put_char_ccs_code_point' is changed.
2499 * char-ucs.h: Include "elhash.h".
2500 (Vchar_attribute_hash_table): New external variable.
2501 (struct Lisp_Charset): Delete `encoding_table'.
2502 (CHARSET_ENCODING_TABLE): New implementation; refer
2503 `Vchar_attribute_hash_table' instead of `encoding_table' of struct
2506 2001-11-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2508 * mule-charset.c (Fcharset_property): Return Qnil if CHARSET_FINAL
2511 2001-11-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2513 * text-coding.c (char_encode_big5): Prefer charset-g1 than
2516 2001-11-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2518 * chartab.c (uint8_byte_table_description): New constant.
2519 (uint8-byte-table): Use `uint8_byte_table_description'.
2520 (uint16_byte_table_description): New constant.
2521 (uint16-byte-table): Use `uint16_byte_table_description'.
2523 2001-10-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2525 * mule-charset.c (complex_vars_of_mule_charset): Don't use builtin
2526 range MIN_CHAR_BIG5_CDP .. MAX_CHAR_BIG5_CDP.
2528 2001-10-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2530 * mule-charset.c (Vcharset_ucs_ks): New variable.
2531 (Qucs_ks): New variable.
2532 (syms_of_mule_charset): Add new symbol `ucs-ks'.
2533 (complex_vars_of_mule_charset): Add new coded-charset `ucs-ks'.
2535 * char-ucs.h (LEADING_BYTE_UCS_KS): New macro.
2537 2001-10-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2539 * chartab.h (Fmake_char): New EXFUN; moved from chartab.c.
2540 (Fdecode_char): Likewise.
2542 * chartab.c: Move EXFUN for Fmake_char and Fdecode_char into
2544 (Fdefine_char): Modify for Fdecode_char.
2545 (Ffind_char): Likewise.
2547 * mule-charset.c (Fdecode_char): Add new optional argument
2549 (Fdecode_builtin_char): Modify for `Fdecode_char'.
2551 2001-10-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2553 * text-coding.c (mark_coding_system): Mark initial-charset-g0 and
2554 -g1 of CODESYS_BIG5 in XEmacs UTF-2000.
2555 (allocate_coding_system): Initialize initial-charsets of
2556 CODESYS_BIG5 in XEmacs UTF-2000.
2557 (Fmake_coding_system): Accept `charset-g0' and `charset-g1' for
2558 CODESYS_BIG5 in XEmacs UTF-2000.
2559 (decode_coding_big5): Use initial-charset-g0 and -g1 of
2560 CODESYS_BIG5 in XEmacs UTF-2000; use `DECODE_DEFINED_CHAR'.
2562 * mule-charset.c (Vcharset_ideograph_hanziku_{1 .. 12}): New
2564 (Qideograph_hanziku_{1 .. 12}): Likewise.
2565 (syms_of_mule_charset): Add new symbols `ideograph-hanziku-{1
2567 (complex_vars_of_mule_charset): Use `MIN_CHAR_BIG5_CDP' to
2568 `MAX_CHAR_BIG5_CDP' for `chinese-big5'; add news coded-charsets
2569 `ideograph-hanziku-{1 .. 12}'.
2571 * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x200.
2572 (LEADING_BYTE_HANZIKU_{1 .. 12}): New macros.
2573 ({MIN|MAX}_CHAR_BIG5_CDP): New macros.
2574 ({MIN|MAX}_CHAR_HANZIKU_{1 .. 12}): New macros.
2575 (DECODE_DEFINED_CHAR): New inline function.
2576 (DECODE_CHAR): Use `DECODE_DEFINED_CHAR'.
2578 2001-10-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2580 * mule-charset.c (Vcharset_china3_jef): Renamed from
2581 `Vcharset_japanese_jef_china3'.
2582 (Qchina3_jef): Renamed from `Qjapanese_jef_china3'.
2583 (encode_builtin_char_1): Rename `{MIN|MAX}_CHAR_CHINA3_JEF' from
2584 `{MIN|MAX}_CHAR_JEF_CHINA3'..
2585 (syms_of_mule_charset): Rename `china3-jef' from
2586 `japanese-jef-china3'.
2587 (complex_vars_of_mule_charset): Likewise; rename
2588 `LEADING_BYTE_CHINA3_JEF' from `LEADING_BYTE_JEF_CHINA3'.
2590 * char-ucs.h (LEADING_BYTE_CHINA3_JEF): Renamed from
2591 `LEADING_BYTE_JEF_CHINA3'.
2592 (MIN_CHAR_CHINA3_JEF): Renamed from `MIN_CHAR_JEF_CHINA3'.
2593 (MAX_CHAR_CHINA3_JEF): Renamed from `MAX_CHAR_JEF_CHINA3'.
2595 2001-10-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2597 * mule-charset.c (encode_builtin_char_1): Comment out special code
2598 for MIN_CHAR_MOJIKYO_0 ... MAX_CHAR_MOJIKYO_0.
2600 * char-ucs.h (MIN_CHAR_MOJIKYO_0): Comment out.
2601 (MAX_CHAR_MOJIKYO_0): Comment out.
2602 (MIN_CHAR_CBETA): Changed to 0x00E20000.
2603 (MAX_CHAR_CBETA): Changed to 0x00E2FFFF.
2604 (MIN_CHAR_JEF_CHINA3): Changed to 0x00E80000.
2605 (MAX_CHAR_JEF_CHINA3): Changed to 0x00E8FFFF.
2607 2001-10-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2609 * mule-charset.c (Vcharset_ideograph_cbeta): New variable.
2610 (Qideograph_cbeta): New variable.
2611 (encode_builtin_char_1): Comment out special code for
2612 coded-charset `mojikyo' and `japanese-jef-china3'.
2613 (syms_of_mule_charset): Add new symbol `ideograph-cbeta'.
2614 (complex_vars_of_mule_charset): Add new coded-charset
2617 * char-ucs.h (LEADING_BYTE_CBETA): New macro.
2618 (MIN_CHAR_CBETA): New macro.
2619 (MAX_CHAR_CBETA): New macro.
2621 2001-10-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2623 * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x100.
2624 (LEADING_BYTE_JEF_CHINA3): New macro.
2625 (MIN_CHAR_JEF_CHINA3): New macro.
2626 (MAX_CHAR_JEF_CHINA3): Likewise.
2627 (DECODE_CHAR): Fixed.
2629 2001-10-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2631 * mule-charset.c (Vcharset_japanese_jef_china3): New variable.
2632 (Qjapanese_jef_china3): New variable.
2633 (encode_builtin_char_1): Support `japanese-jef-china3'.
2634 (syms_of_mule_charset): Add new symbol `japanese-jef-china3'.
2635 (complex_vars_of_mule_charset): Add new coded-charset
2636 `japanese-jef-china3'.
2638 2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2640 * chartab.c (XCHARSET_CELL_RANGE): New inline function.
2641 (decode_char_table_range): Use `XCHARSET_CELL_RANGE'; accept 94^3,
2642 94^4, 96^3, 96^4, 128^n and 256^n set.
2643 (put_char_table): Use `XCHARSET_CELL_RANGE'.
2644 (map_char_table): Likewise.
2646 2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2648 * chartab.c (get_char_table): Use `get_char_id_table' in XEmacs
2651 2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2653 * chartab.h (get_char_id_table): New inline function.
2655 * chartab.c (get_char_id_table): Moved to chartab.h as an inline
2658 2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2660 * chartab.h (decode_char_table_range): New prototype in XEmacs
2662 (put_char_id_table): New inline function in XEmacs UTF-2000.
2664 * chartab.c (put_char_id_table): Moved to chartab.h as an inline
2666 (decode_char_table_range): Delete static declaration in XEmacs
2669 2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2671 * chartab.c (put_char_id_table): Use `put_char_table'.
2673 2001-09-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2675 * chartab.c (map_over_uint8_byte_table): Delete argument `ccs'.
2676 (map_over_uint16_byte_table): Likewise.
2677 (map_over_byte_table): Likewise.
2678 (map_char_table): Modify for `map_over_uint8_byte_table',
2679 `map_over_uint16_byte_table' and `map_over_byte_table' in XEmacs
2682 2001-09-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2684 * chartab.c (struct map_char_table_for_charset_arg): New
2686 (map_char_table_for_charset_fun): New function.
2687 (map_char_table): Use `map_char_table' for encoding_table of
2690 2001-09-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2692 * chartab.c (map_char_table): Check a character is found in
2693 range->charset instead of non default value is defined in
2694 char-table when range is CHARTAB_RANGE_ROW.
2696 2001-09-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2698 * chartab.c (map_char_id_table): Deleted.
2699 (Fmap_char_attribute): Use `map_char_table' instead of
2700 `map_char_id_table'.
2702 2001-09-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2704 * syntax.h (SYNTAX_CODE_UNSAFE): New implementation in XEmacs
2706 (update_syntax_table): Deleted in XEmacs UTF-2000.
2708 * syntax.c (find_defun_start): Use `syntax_table' instead of
2709 `mirror_syntax_table' in XEmacs UTF-2000.
2710 (Fset_syntax_table): Don't use `mirror_syntax_table' in XEmacs
2712 (Fchar_syntax): Use `syntax_table' instead of `mirror_table' in
2714 (Fmatching_paren): Likewise.
2715 (scan_words): Use `syntax_table' instead of `mirror_syntax_table'
2717 (find_start_of_comment): Likewise.
2718 (find_end_of_comment): Likewise.
2719 (Fforward_comment): Likewise.
2720 (scan_lists): Likewise.
2721 (char_quoted): Likewise.
2722 (Fbackward_prefix_chars): Likewise.
2723 (scan_sexps_forward): Likewise.
2724 (update_just_this_syntax_table): Deleted in XEmacs UTF-2000.
2725 (update_syntax_table): Likewise.
2727 * search.c (skip_chars): Use `syntax_table' instead of
2728 `mirror_syntax_table' in XEmacs UTF-2000.
2729 (wordify): Likewise.
2730 (Freplace_match): Likewise.
2732 * regex.c (re_compile_fastmap): Use `syntax_table' instead of
2733 `mirror_syntax_table' in XEmacs UTF-2000.
2734 (WORDCHAR_P_UNSAFE): Likewise.
2735 (re_match_2_internal): Likewise.
2737 * font-lock.c (find_context): Use `buf->syntax_table' instead of
2738 `buf->mirror_syntax_table' in XEmacs UTF-2000.
2740 * cmds.c (internal_self_insert): Use `buf->syntax_table' instead
2741 of `buf->mirror_syntax_table' in XEmacs UTF-2000.
2743 * chartab.h (struct Lisp_Char_Table): Delete `mirror_table' in
2746 * chartab.c (mark_char_table): Don't mark `mirror_table' in XEmacs
2748 (print_char_table): Print `default_value' in XEmacs UTF-2000.
2749 (char_table_description): Delete `mirror_table' in XEmacs
2751 (fill_char_table): Don't call `update_syntax_table' in XEmacs
2753 (Fmake_char_table): Don't use `mirror_table' in XEmacs UTF-2000.
2754 (Fcopy_char_table): Likewise.
2755 (put_char_table): Don't call `update_syntax_table' in XEmacs
2758 * casefiddle.c (casify_object): Use `buf->syntax_table' instead of
2759 `buf->mirror_syntax_table' in XEmacs UTF-2000.
2760 (casify_region_internal): Likewise.
2762 * bufslots.h: Delete `mirror_syntax_table' in XEmacs UTF-2000.
2764 * buffer.c (common_init_complex_vars_of_buffer): Don't use
2765 `mirror_syntax_table' in XEmacs UTF-2000.
2767 * abbrev.c (abbrev_match): Use `buf->syntax_table' instead of
2768 `buf->mirror_syntax_table' in XEmacs UTF-2000.
2769 (Fexpand_abbrev): Likewise.
2771 2001-09-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2773 * chartab.c (vars_of_chartab): Update `utf-2000-version' to 0.18.
2775 2001-09-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2777 * chartab.c (map_over_uint8_byte_table): Cancel temporary hack.
2778 (map_over_uint16_byte_table): Likewise.
2779 (map_over_byte_table): Likewise.
2780 (get_char_id_table): Refer `cit->default_value'.
2781 (put_char_id_table): Support `CHARTAB_RANGE_DEFAULT'.
2782 (map_char_id_table): Use `1 << 30' instead of `1 << 24' as number
2783 of character-id ranges.
2784 (mark_char_table): Mark `ct->default_value'.
2785 (char_table_description): Add `default_value'.
2786 (fill_char_table): Use `default_value'.
2787 (decode_char_table_range): Decode `nil' as
2788 `CHARTAB_RANGE_DEFAULT'.
2789 (get_char_id_table): Refer `cit->default_value'.
2790 (put_char_id_table): Support `CHARTAB_RANGE_DEFAULT'.
2791 (map_char_table): Support `CHARTAB_RANGE_DEFAULT'; cancel
2792 temporary hack; check value of char-table is bound or not.
2793 (slow_map_char_table_fun): Support `CHARTAB_RANGE_DEFAULT'.
2795 * chartab.h (struct Lisp_Char_Table): Add new member
2796 `default_value' in XEmacs UTF-2000.
2797 (CHAR_TABLE_VALUE_UNSAFE): Use `default_value'.
2798 (enum chartab_range_type): Add `CHARTAB_RANGE_DEFAULT' in XEmacs
2801 2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2803 * chartab.h (Lisp_Char_ID_Table): Deleted.
2805 * chartab.c (char_table_description): Fix typo.
2806 (Fmap_char_attribute): Use `Lisp_Char_Table' instead of
2807 `Lisp_Char_ID_Table'.
2809 2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2811 * text-coding.c (COMPOSE_ADD_CHAR): Use `CHAR_TABLEP' instead of
2814 * mule-charset.c (remove_char_ccs): Use `CHAR_TABLEP' instead of
2817 * chartab.h (XCHAR_ID_TABLE): Deleted.
2818 (XSETCHAR_ID_TABLE): Deleted.
2819 (CHAR_ID_TABLE_P): Deleted.
2821 * chartab.c (put_char_id_table): Use `CHAR_TABLEP' instead of
2823 (Fget_composite_char): Likewise.
2824 (put_char_table): Likewise.
2825 (add_char_attribute_alist_mapper): Fixed.
2826 (Fchar_attribute_alist): Use `CHAR_TABLEP' instead of
2828 (Fget_char_attribute): Likewise.
2829 (Fget_char_attribute): Likewise.
2830 (Fmap_char_attribute): Likewise.
2832 * char-ucs.h (charset_code_point): Use `CHAR_TABLEP' instead of
2834 (encode_char_1): Likewise.
2836 2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2838 * text-coding.c (COMPOSE_ADD_CHAR): Use `XCHAR_TABLE' instead of
2841 * mule-charset.c (put_char_ccs_code_point): Use `XCHAR_TABLE'
2842 instead of `XCHAR_ID_TABLE'.
2843 (remove_char_ccs): Likewise.
2845 * chartab.c (put_char_id_table): Use `XCHAR_TABLE' instead of
2847 (Fget_composite_char): Likewise.
2848 (Fchar_variants): Likewise.
2849 (put_char_table): Likewise.
2850 (add_char_attribute_alist_mapper): Likewise.
2851 (Fchar_attribute_alist): Likewise.
2852 (Fget_char_attribute): Likewise.
2853 (Fput_char_attribute): Likewise.
2854 (Fmap_char_attribute): Likewise.
2855 (Fmap_char_attribute): Likewise.
2857 * char-ucs.h (charset_code_point): Use `XCHAR_TABLE' instead of
2859 (encode_char_1): Likewise.
2861 2001-09-03 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2863 * chartab.c (map_char_id_table): Use `Lisp_Char_Table' instead of
2864 `Lisp_Char_ID_Table'.
2865 (mark_char_id_table): Deleted.
2866 (print_char_id_table): Likewise.
2867 (char_id_table_equal): Likewise.
2868 (char_id_table_hash): Likewise.
2869 (char_id_table_description): Likewise.
2870 (char_id_table): Likewise.
2871 (make_char_id_table): Use `Fmake_char_table' and
2873 (get_char_id_table): Use `Lisp_Char_Table' instead of
2874 `Lisp_Char_ID_Table'.
2875 (put_char_id_table): Likewise.
2876 (Fput_char_attribute): Use `XCHAR_TABLE' instead of
2878 (Fremove_char_attribute): Likewise.
2879 (syms_of_chartab): Don't define type `char-id-table'.
2881 * chartab.h (struct Lisp_Char_ID_Table): Deleted.
2882 (char_id_table): Likewise.
2883 (GC_CHAR_ID_TABLE_P): Likewise.
2884 (Lisp_Char_ID_Table): Use structure `Lisp_Char_Table'.
2885 (XCHAR_ID_TABLE): Use `XCHAR_TABLE'.
2886 (XSETCHAR_ID_TABLE): Use `XSETCHAR_TABLE'.
2887 (CHAR_ID_TABLE_P): Use `CHAR_TABLEP'.
2888 (get_char_id_table): Use `Lisp_Char_Table' instead of
2889 `Lisp_Char_ID_Table'.
2890 (put_char_id_table_0): Likewise.
2891 (put_char_id_table): Likewise.
2893 2001-09-02 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
2895 * chartab.h: Lisp_Byte_Table related codes are moved from
2898 * char-ucs.h: Move Lisp_Byte_Table related codes to chartab.h.
2900 2001-09-02 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
2902 * chartab.h: Don't include "chartab.h".
2903 (struct Lisp_Char_ID_Table): Moved from char-ucs.h.
2904 (Lisp_Char_ID_Table): Likewise.
2905 (char_id_table): Likewise.
2906 (XCHAR_ID_TABLE): Likewise.
2907 (XSETCHAR_ID_TABLE): Likewise.
2908 (CHAR_ID_TABLE_P): Likewise.
2909 (GC_CHAR_ID_TABLE_P): Likewise.
2910 (get_char_id_table): Likewise.
2912 * char-ucs.h: Include "chartab.h".
2913 (struct Lisp_Char_ID_Table): Moved to chartab.h.
2914 (Lisp_Char_ID_Table): Likewise.
2915 (char_id_table): Likewise.
2916 (XCHAR_ID_TABLE): Likewise.
2917 (XSETCHAR_ID_TABLE): Likewise.
2918 (CHAR_ID_TABLE_P): Likewise.
2919 (GC_CHAR_ID_TABLE_P): Likewise.
2920 (get_char_id_table): Likewise.
2922 2001-09-01 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
2924 * chartab.c (copy_uint8_byte_table): New function.
2925 (copy_uint16_byte_table): New function.
2926 (copy_byte_table): New function.
2927 (map_over_uint8_byte_table): Modify to avoid huge numbers of
2929 (map_over_uint16_byte_table): Likewise.
2930 (map_over_byte_table): Likewise.
2931 (get_byte_table): Move prototype to chartab.h.
2932 (put_byte_table): Likewise.
2933 (put_char_id_table_0): Moved to chartab.h.
2934 (mark_char_table_entry): Don't define in XEmacs UTF-2000.
2935 (char_table_entry_equal): Likewise.
2936 (char_table_entry_hash): Likewise.
2937 (char_table_entry_description): Likewise.
2938 (char_table_entry): Likewise.
2939 (make_char_table_entry): Likewise.
2940 (copy_char_table_entry): Likewise.
2941 (get_non_ascii_char_table_value): Likewise.
2942 (map_over_charset_ascii): Likewise.
2943 (map_over_charset_control_1): Likewise.
2944 (map_over_charset_row): Likewise.
2945 (map_over_other_charset): Likewise.
2946 (mark_char_table): Modify for new structure in XEmacs UTF-2000.
2947 (print_char_table): Likewise.
2948 (char_table_equal): Likewise.
2949 (char_table_hash): Likewise.
2950 (char_table_description): Likewise.
2951 (fill_char_table): Likewise.
2952 (Fcopy_char_table): Likewise.
2953 (get_char_table): Likewise.
2954 (Fget_range_char_table): Likewise.
2955 (put_char_table): Likewise.
2956 (map_char_table): Likewise.
2957 (syms_of_chartab): Don't define `char_table_entry' in XEmacs
2960 2001-08-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2962 * cmds.c (vars_of_cmds): Use `put_char_id_table_0' for
2963 `Vauto_fill_chars' in XEmacs UTF-2000.
2965 * chartab.h (get_byte_table): New prototype [moved from
2967 (put_byte_table): Likewise [moved from chartab.c].
2968 (put_char_id_table_0): New inline function [moved from chartab.c].
2969 (struct Lisp_Char_Table_Entry): Don't define in XEmacs UTF-2000.
2970 (Lisp_Char_Table_Entry): Likewise.
2971 (char_table_entry): Likewise.
2972 (XCHAR_TABLE_ENTRY): Likewise.
2973 (XSETCHAR_TABLE_ENTRY): Likewise.
2974 (CHAR_TABLE_ENTRYP): Likewise.
2975 (CHECK_CHAR_TABLE_ENTRY): Likewise.
2976 (NUM_ASCII_CHARS): Likewise.
2977 (struct Lisp_Char_Table): New implementation in XEmacs UTF-2000.
2978 (CHAR_TABLE_VALUE_UNSAFE): Likewise.
2980 2001-08-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2982 * chartab.c (get_char_id_table): Change interface.
2983 (put_char_id_table_0): New function.
2984 (put_char_id_table): Change interface; new implementation.
2985 (Fget_composite_char): Modify for interface change of
2986 `get_char_id_table'.
2987 (Fchar_variants): Likewise.
2988 (add_char_attribute_alist_mapper): Likewise.
2989 (Fchar_attribute_alist): Likewise.
2990 (Fget_char_attribute): Likewise.
2991 (Fput_char_attribute): Allow coded-charset or [CODED-CHARSET ROW]
2992 as same as character as the first argument like `put-char-table';
2993 modify for interface change of `put_char_id_table'.
2994 (Fremove_char_attribute): Modify for interface change of
2995 `put_char_id_table'.
2997 2001-08-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
2999 * text-coding.c: Sync up with XEmacs 21.2.41.
3000 (COMPOSE_ADD_CHAR): Modify for interface change of
3001 `get_char_id_table'.
3003 * mule-charset.c (put_char_ccs_code_point): Modify for interface
3004 change of `put_char_id_table'.
3005 (remove_char_ccs): Likewise.
3007 * chartab.h (put_char_id_table): Change interface.
3009 * char-ucs.h (get_char_id_table): Change interface.
3010 (charset_code_point): Modify for interface change of
3011 `get_char_id_table'.
3012 (encode_char_1): Likewise.
3014 2001-08-19 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3016 * chartab.c (map_over_uint8_byte_table): Change arguments; add new
3018 (map_over_uint16_byte_table): Likewise.
3019 (map_over_byte_table): Likewise.
3020 (map_char_id_table): Add new argument `range' like
3022 (Fmap_char_attribute): Add new argument `range' like
3025 2001-08-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3027 * chartab.c (map_over_uint8_byte_table): Change interface of
3028 mapping function to use struct chartab_range instead of Emchar.
3029 (map_over_uint16_byte_table): Likewise.
3030 (map_over_byte_table): Likewise.
3031 (map_char_id_table): Likewise.
3032 (struct slow_map_char_id_table_arg): Deleted.
3033 (slow_map_char_id_table_fun): Deleted.
3034 (Fmap_char_attribute): Use struct `slow_map_char_table_arg' and
3035 function `slow_map_char_table_fun' instead of struct
3036 `slow_map_char_id_table_arg' and function
3037 `slow_map_char_id_table_fun'.
3039 2001-08-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3041 * mule-charset.c: Move char-it-table related codes to chartab.c.
3042 (Vutf_2000_version): Moved to chartab.c.
3043 (Fdefine_char): Likewise.
3044 (Ffind_char): Likewise.
3045 (syms_of_mule_charset): Move types `uint8-byte-table',
3046 `uint16-byte-table', `byte-table' and `char-id-table' to
3047 chartab.c; move functions `char_attribute_list,
3048 `find_char_attribute_table, `char_attribute_alist,
3049 `get_char_attribute, `put_char_attribute, `remove_char_attribute,
3050 `map_char_attribute, `define_char, `find_char, `char_variants and
3051 `get_composite_char to chartab.c; move symbols `=>ucs',
3052 `->decomposition', `compat', `isolated', `initial', `medial',
3053 `final', `vertical', `noBreak', `fraction', `super', `sub',
3054 `circle', `square', `wide', `narrow', `small' and `font' to
3056 (vars_of_mule_charset): Move `utf-2000-version' to chartab.c; move
3057 setting codes for `Vcharacter_composition_table' and
3058 `Vcharacter_variant_table' to chartab.c.
3059 (complex_vars_of_mule_charset): Move setting code for
3060 `Vchar_attribute_hash_table' to chartab.c.
3062 * chartab.h: Include "char-ucs.h" if --with-utf-2000 is specified.
3063 (make_char_id_table): New prototype.
3064 (put_char_id_table): Likewise.
3065 (Fget_char_attribute): Likewise.
3067 * chartab.c: Move char-id-table related code from mule-charset.c.
3068 (Vutf_2000_version): Moved from mule-charset.c.
3070 * char-ucs.h (Qucs): New external variable.
3071 (put_char_ccs_code_point): New prototype.
3072 (remove_char_ccs): Likewise.
3074 2001-08-14 MORIOKA Tomohiko <tomo@mousai.mahoroba.ne.jp>
3076 * mule-charset.c (Vcharset_ucs_jis): New variable.
3077 (Qucs_jis): Likewise.
3078 (syms_of_mule_charset): Add new symbol `ucs-jis'.
3079 (complex_vars_of_mule_charset): Add new coded-charset `ucs-jis'.
3081 * char-ucs.h (LEADING_BYTE_UCS_JIS): New macro.
3083 2001-08-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3085 * mule-charset.c (map_over_uint8_byte_table): New function.
3086 (map_over_uint16_byte_table): Likewise.
3087 (map_over_byte_table): Likewise.
3088 (map_char_id_table): Likewise.
3089 (slow_map_char_id_table_fun): Likewise.
3090 (Fmap_char_attribute): Likewise.
3091 (syms_of_mule_charset): Add new function `map-char-attribute'.
3093 2001-08-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3095 * mule-charset.c (Ffind_char): New function in XEmacs UTF-2000.
3096 (syms_of_mule_charset): Add new function `find-char'.
3098 2001-08-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3100 * mule-charset.c (Vcharset_chinese_big5_cdp): New variable in
3102 (Qchinese_big5_cdp): New variable in XEmacs UTF-2000.
3103 (syms_of_mule_charset): Add new symbol `chinese-big5-cdp' in
3105 (complex_vars_of_mule_charset): Add new coded-charset
3106 `chinese-big5-cdp' in XEmacs UTF-2000; change registry of
3107 `ideograph-gt-pj-*'.
3109 * char-ucs.h (LEADING_BYTE_CHINESE_BIG5_CDP): New macro.
3111 2001-07-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3113 * mule-charset.c (encode_builtin_char_1): Purge codes about
3114 {MIN|MAX}_CHAR_{GREEK|CYRILLIC}; comment out code about
3115 {MIN|MAX}_CHAR_HEBREW.
3116 (complex_vars_of_mule_charset): Comment out {MIN|MAX}_CHAR_HEBREW;
3117 don't use {MIN|MAX}_CHAR_HEBREW to define `hebrew-iso8859-8'.
3119 * char-ucs.h (MIN_CHAR_GREEK): Purged.
3120 (MAX_CHAR_GREEK): Purged.
3121 (MIN_CHAR_CYRILLIC): Purged.
3122 (MAX_CHAR_CYRILLIC): Purged.
3123 (MIN_CHAR_HEBREW): Commented out.
3124 (MAX_CHAR_HEBREW): Likewise.
3126 2001-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3128 * mule-charset.c (Qto_ucs): New variable.
3129 (Fput_char_attribute): Treat `=>ucs' as same as `->ucs'.
3130 (Fdefine_char): Likewise.
3131 (syms_of_mule_charset): Add new symbol `=>ucs'.
3133 2001-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3135 * mule-charset.c (Fdecode_char): Fixed.
3137 2001-07-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3139 * mule-charset.c (complex_vars_of_mule_charset): Modify registry
3140 of latin-tcvn5712 to accept "tcvn5712.1993-1" as same as
3143 2001-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3145 * mule-charset.c (Vcharset_ucs_big5): New variable.
3146 (Qucs_big5): Likewise.
3147 (syms_of_mule_charset): Add new symbol `ucs-big5'.
3148 (complex_vars_of_mule_charset): Add new coded-charset `ucs-big5'.
3150 * char-ucs.h (LEADING_BYTE_UCS_BIG5): New macro.
3152 2001-07-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3154 * mule-charset.c (decode_builtin_char): Check Big5 code range
3155 which can be mapped to `chinese-big5-1' and `chinese-big5-2'.
3157 2001-07-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3159 * mule-charset.c (Vcharset_chinese_gb12345): New variable.
3160 (Qchinese_gb12345): Likewise.
3161 (Fdecode_builtin_char): Fixed.
3162 (syms_of_mule_charset): Add `chinese-gb12345'.
3163 (complex_vars_of_mule_charset): Add coded-charset
3166 * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x70.
3167 (LEADING_BYTE_CHINESE_GB12345): New macro.
3169 2001-07-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3171 * mule-charset.c (Fdecode_builtin_char): Use `latin-viscii-lower'
3172 and `latin-viscii-upper' for `latin-viscii'.
3174 2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3176 * mule-charset.c (Fdecode_builtin_char): Comment out
3177 regularization code for ISO-IR GR representation.
3179 2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3181 * mule-charset.c (decode_builtin_char): New function; renamed from
3182 `make_builtin_char'; return -1 instead of signal.
3183 (Fdecode_builtin_char): Use `decode_builtin_char'.
3185 * char-ucs.h (decode_builtin_char): New prototype; renamed from
3186 `make_builtin_char'.
3187 (DECODE_CHAR): Use `decode_builtin_char' instead of
3188 `make_builtin_char'; use mapping table of `chinese-big5' for
3189 `chinese-big5-{1,2}'.
3191 2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3193 * text-coding.c (char_encode_big5): New function.
3194 (char_finish_big5): Likewise.
3195 (reset_encoding_stream): Use `char_encode_big5' and
3196 `char_finish_big5' for CODESYS_BIG5.
3197 (mule_encode): Don't use `encode_coding_big5'.
3198 (encode_coding_big5): Deleted.
3200 2001-07-11 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3202 * text-coding.c (BYTE_BIG5_TWO_BYTE_1_P): Support private area
3203 0x81- in XEmacs UTF-2000.
3204 (detect_coding_big5): Likewise.
3206 2001-07-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3208 * mule-charset.c (Fdefine_char): Don't use a CCS property to
3209 generate character-id if the CCS property does not have
3210 corresponding predefined character.
3211 (make_builtin_char): Return -1 if corresponding predefined
3212 character is not found.
3213 (Fdecode_char): Return nil if corresponding character is not
3215 (complex_vars_of_mule_charset): Change `ucs-cns' to 256^3-set and
3216 don't map to builtin ucs space.
3218 2001-07-06 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3220 * char-ucs.h (MAX_LEADING_BYTE_PRIVATE): Fixed.
3221 (MAX_CHAR_GT): Changed to `(MIN_CHAR_GT + 66773)'.
3223 2001-07-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3225 * mule-charset.c (Vcharset_ideograph_gt): New variable.
3226 (Vcharset_ideograph_gt_pj_{1..11}): Likewise.
3227 (Qideograph_gt): Likewise.
3228 (Qideograph_gt_pj_{1..11}): Likewise.
3229 (syms_of_mule_charset): Add `ideograph-gt', `ideograph-gt-pj-1',
3230 `ideograph-gt-pj-2', ..., `ideograph-gt-pj-10' and
3231 `ideograph-gt-pj-11'.
3232 (complex_vars_of_mule_charset): Add coded-charset `ideograph-gt',
3233 `ideograph-gt-pj-1', `ideograph-gt-pj-2', ...,
3234 `ideograph-gt-pj-10' and `ideograph-gt-pj-11'.
3236 * char-ucs.h (LEADING_BYTE_GT): New macro.
3237 (LEADING_BYTE_GT_PJ_{1..11}): Likewise.
3238 (MIN_CHAR_GT): Likewise.
3239 (MAX_CHAR_GT): Likewise.
3241 2001-06-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3243 * lisp-disunion.h (XCHARVAL): New implementation for UTF-2000 to
3244 support U-60000000 .. U-7FFFFFFF with 32 bits architecture.
3246 * doprnt.c (unsigned_int_converters): Add `c'.
3247 (emacs_doprnt_1): Use `XUINT' for unsigned integers.
3249 * char-ucs.h (MIN_CHAR_DAIKANWA): Don't refer `MIN_CHAR_MOJIKYO'.
3250 (MAX_CHAR_DAIKANWA): Refer `MIN_CHAR_DAIKANWA' instead of
3252 (MIN_CHAR_MOJIKYO_0): New macro; refer `MIN_CHAR_DAIKANWA'.
3253 (MAX_CHAR_MOJIKYO_0): New macro.
3254 (MIN_CHAR_MOJIKYO): Changed to 0x60000000.
3256 2001-06-13 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3258 * mule-charset.c (Fdefine_char): Delete cemented out code.
3259 (encode_builtin_char_1): Modify for new allocation of builtin
3262 * lisp-disunion.h (XCHARVAL): Cast the argument into EMACS_UINT.
3264 2001-06-04 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3266 * mule-charset.c (Vcharset_ucs_cns): New variable.
3267 (Qucs_cns): New variable.
3268 (syms_of_mule_charset): Add new symbol `ucs-cns'.
3269 (complex_vars_of_mule_charset): Add new coded-charset `ucs-cns'.
3271 2001-05-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3273 * char-ucs.h (LEADING_BYTE_UCS_CNS): New macro.
3275 2000-12-09 MORIOKA Tomohiko <tomo@m17n.org>
3277 * search.c (search_buffer): Make `charset_base_code' as
3278 character-id >> 6 to eliminate the corresponding last byte in
3279 UTF-8 representation [I'm not sure it is right thing].
3280 (boyer_moore): Likewise.
3282 2000-12-09 MORIOKA Tomohiko <tomo@m17n.org>
3284 * emacs.c (vars_of_emacs): Convert XEMACS_CODENAME to internal
3285 representation in MULE.
3287 2000-11-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3289 * text-coding.c (Fmake_coding_system): Use
3290 `EXTERNAL_PROPERTY_LIST_LOOP_3' instead of
3291 `EXTERNAL_PROPERTY_LIST_LOOP'.
3293 2000-11-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3295 * text-coding.c (decode_output_utf8_partial_char): New function.
3296 (decode_coding_utf8): Use `decode_output_utf8_partial_char'.
3298 2000-11-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3300 * text-coding.c (decode_coding_utf8): Output original byte
3301 sequence if it is broken; change order of conditions.
3303 * mb-utf-8.h (REP_BYTES_BY_FIRST_BYTE): Use Bufbyte; reverse order
3306 * mb-multibyte.h (BYTE_ASCII_P):
3307 Use bit ops for char-signedness safety.
3308 (BYTE_C0_P): Use bit ops for char-signedness safety.
3309 (BYTE_C1_P): Use bit ops for char-signedness safety.
3311 * character.h: (XCHAR_OR_CHAR_INT):
3312 Always use inline function.
3313 Remove redundant type checking assert() - XINT will abort quite
3316 2000-11-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3318 * text-coding.c: (Fencode_shift_jis_char):
3319 (Fencode_big5_char):
3320 Docstring arglist/Texinfo fixes. See man/ChangeLog for details.
3321 Replace 0 with '\0' when working with bytes.
3322 Replace initial "(" with "\(" in docstrings.
3324 (Fmake_coding_system):
3325 When type is ccl and value is vector, register it with a proper
3326 symbol. And checks whether the given ccl program is valid.
3327 (mule_decode): When calling ccl_driver, if src indicates
3328 NULL pointer, set an empty string instead.
3329 (mule_encode): Likewise.
3332 (detect_coding_sjis):
3333 (decode_coding_sjis):
3334 (detect_coding_big5):
3335 (decode_coding_big5):
3336 (detect_coding_ucs4):
3337 (decode_coding_ucs4):
3338 (detect_coding_utf8):
3339 (decode_coding_utf8):
3340 (detect_coding_iso2022):
3341 (decode_coding_iso2022):
3342 (decode_coding_no_conversion):
3344 Make all detecting and decoding functions take an Extbyte * arg.
3345 (text_encode_generic):
3346 (encode_coding_big5):
3347 (encode_coding_no_conversion):
3349 Make all encoding functions take a Bufbyte * arg.
3350 Use size_t instead of unsigned int for memory sizes.
3351 Only cast to unsigned char whenever dereferencing Extbyte *.
3353 (struct lrecord_description fcd_description_1): Use countof.
3354 (complex_vars_of_file_coding):
3355 Use countof instead of sizeof.
3356 Use CHECK_NATNUM instead of CHECK_INT.
3358 2000-11-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3360 * mule-charset.c (Fget_char_attribute): Add new optional argument
3362 (put_char_ccs_code_point): Modify for `Fget_char_attribute'.
3363 (remove_char_ccs): Likewise.
3365 2000-10-05 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3367 * text-coding.c (char_encode_shift_jis): New implementation in
3369 (decode_coding_big5): Use `DECODE_CHAR (Vcharset_chinese_big5,
3372 * mule-charset.c (Vcharset_chinese_big5): New variable in
3374 (Qchinese_big5): New variable in UTF-2000.
3375 (BIG5_SAME_ROW): New macro in UTF-2000.
3376 (make_builtin_char): Use builtin characters of
3377 `Vcharset_chinese_big5_1' and `Vcharset_chinese_big5_2' as builtin
3378 characters of `Vcharset_chinese_big5'.
3379 (syms_of_mule_charset): Add new symbol `chinese-big5' in UTF-2000.
3380 (complex_vars_of_mule_charset): Add new coded-charset
3381 `chinese-big5' in UTF-2000.
3383 * char-ucs.h (LEADING_BYTE_CHINESE_BIG5): New macro.
3384 (Vcharset_chinese_big5): New external variable declaration.
3385 (Vcharset_japanese_jisx0208_1990): Likewise.
3387 2000-07-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3389 * mule-charset.c (expand_uint8_byte_table_to_uint16): New
3391 (put_byte_table): Use `expand_uint8_byte_table_to_uint16'.
3393 2000-07-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3395 * mule-charset.c (complex_vars_of_mule_charset): Define new macro
3396 `DEF_MOJIKYO_PJ' in UTF-2000; use `DEF_MOJIKYO_PJ' to define
3397 `mojikyo-pj-*'; add "MojikyoPJ-*" to charset-registry of
3400 2000-07-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3402 * text-coding.c (decode_coding_big5): Modify for UTF-2000.
3404 2000-07-24 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3406 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
3409 2000-07-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3411 * file-coding.c (ucs_to_char): Don't use `CHARSET_TYPE_*'; modify
3412 for `CHARSET_BY_ATTRIBUTES'.
3413 (parse_iso2022_esc): Don't use `CHARSET_TYPE_*'; modify for
3414 `CHARSET_BY_ATTRIBUTES'.
3416 * text-coding.c (struct decoding_stream): Rename member `CH' to
3418 (reset_decoding_stream): Use `str->cpos' instead of `str->ch'.
3419 (decode_coding_sjis): Likewise.
3420 (decode_coding_big5): Likewise.
3421 (decode_coding_ucs4): Likewise.
3422 (decode_coding_utf8): Likewise.
3423 (parse_iso2022_esc): Don't use `CHARSET_TYPE_*'; modify for
3424 `CHARSET_BY_ATTRIBUTES'.
3425 (decode_coding_iso2022): Use `str->cpos' instead of `str->ch'; use
3426 `str->counter'; decode 3, 4 bytes sets.
3427 (char_encode_iso2022): Don't use `BREAKUP_CHAR'; encode 3, 4 bytes
3429 (decode_coding_no_conversion): Use `str->cpos' instead of
3432 * mule-charset.c (Vcharset_mojikyo_2022_1): New variable.
3433 (Qmojikyo_2022_1): New variable.
3434 (make_charset): Don't use `CHARSET_TYPE_*'.
3435 (range_charset_code_point): Support coded-charset
3437 (encode_builtin_char_1): Modify for `CHARSET_BY_ATTRIBUTES'.
3438 (Fmake_charset): Don't use `CHARSET_TYPE_*'; modify for
3439 `CHARSET_BY_ATTRIBUTES'.
3440 (Fcharset_from_attributes): Don't use `CHARSET_TYPE_*'; modify for
3441 `CHARSET_BY_ATTRIBUTES'.
3442 (syms_of_mule_charset): Add new symbol `mojikyo-2022-1'.
3443 (complex_vars_of_mule_charset): Add new coded-charset
3446 * mule-charset.h (CHARSET_BY_ATTRIBUTES): New implementation and
3447 interface; changed to inline function.
3449 * char-ucs.h (Vcharset_mojikyo_2022_1): New variable.
3450 (LEADING_BYTE_MOJIKYO_2022_1): New macro.
3451 (LEADING_BYTE_MOJIKYO_2022_2): New macro.
3452 (CHARSET_TYPE_94): Deleted.
3453 (CHARSET_TYPE_94X94): Deleted.
3454 (CHARSET_TYPE_96): Deleted.
3455 (CHARSET_TYPE_96X96): Deleted.
3456 (CHARSET_TYPE_128): Deleted.
3457 (CHARSET_TYPE_128X128): Deleted.
3458 (CHARSET_TYPE_256): Deleted.
3459 (CHARSET_TYPE_256X256): Deleted.
3460 (CHARSET_BY_ATTRIBUTES): New implementation and interface; changed
3462 (DECODE_MOJIKYO_2022): New inline function.
3463 (DECODE_CHAR): Use `DECODE_MOJIKYO_2022'; decode
3464 `Vcharset_mojikyo_2022_1'.
3466 2000-07-18 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3468 * mule-charset.c (byte_table_same_value_p): Use `internal_equal'
3470 (put_byte_table): Likewise.
3471 (char_id_table_equal): Use `get_byte_table' [new implementation].
3473 2000-07-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3475 * mule-charset.c: Include <limits.h> in UTF-2000.
3476 (BT_UINT8_MIN): New macro in UTF-2000.
3477 (BT_UINT8_MAX): New macro in UTF-2000.
3478 (BT_UINT8_t): New macro in UTF-2000.
3479 (BT_UINT8_nil): New macro in UTF-2000.
3480 (BT_UINT8_unbound): New macro in UTF-2000.
3481 (INT_UINT8_P): New inline function in UTF-2000.
3482 (UINT8_VALUE_P): New inline function in UTF-2000.
3483 (UINT8_ENCODE): New inline function in UTF-2000.
3484 (UINT8_DECODE): New inline function in UTF-2000.
3485 (mark_uint8_byte_table): New function in UTF-2000.
3486 (print_uint8_byte_table): New function in UTF-2000.
3487 (uint8_byte_table_equal): New function in UTF-2000.
3488 (uint8_byte_table_hash): New function in UTF-2000.
3489 (make_uint8_byte_table): New function in UTF-2000.
3490 (uint8_byte_table_same_value_p): New function in UTF-2000.
3491 (BT_UINT16_MIN): New macro in UTF-2000.
3492 (BT_UINT16_MAX): New macro in UTF-2000.
3493 (BT_UINT16_t): New macro in UTF-2000.
3494 (BT_UINT16_nil): New macro in UTF-2000.
3495 (BT_UINT16_unbound): New macro in UTF-2000.
3496 (INT_UINT16_P): New inline function in UTF-2000.
3497 (UINT16_VALUE_P): New inline function in UTF-2000.
3498 (UINT16_ENCODE): New inline function in UTF-2000.
3499 (UINT16_DECODE): New inline function in UTF-2000.
3500 (UINT8_TO_UINT16): New inline function in UTF-2000.
3501 (mark_uint16_byte_table): New function in UTF-2000.
3502 (print_uint16_byte_table): New function in UTF-2000.
3503 (uint16_byte_table_equal): New function in UTF-2000.
3504 (uint16_byte_table_hash): New function in UTF-2000.
3505 (make_uint16_byte_table): New function in UTF-2000.
3506 (uint16_byte_table_same_value_p): New function in UTF-2000.
3507 (print_byte_table): New function in UTF-2000.
3508 (byte-table): Use `print_byte_table' as printer.
3509 (make_byte_table): Delete second argument `older'.
3510 (byte_table_same_value_p): New function in UTF-2000.
3511 (copy_byte_table): Deleted.
3512 (get_byte_table): New function in UTF-2000.
3513 (put_byte_table): New function in UTF-2000.
3514 (print_char_id_table): New function in UTF-2000.
3515 (char-id-table): Use `print_char_id_table' as printer.
3516 (make_char_id_table): Delete second argument `older'.
3517 (get_char_id_table): Use `get_byte_table [new implementation].
3518 (put_char_id_table): Use `get_byte_table and `put_byte_table' [new
3520 (Ffind_char_attribute_table): New function in UTF-2000.
3521 (mark_charset): Mark `cs->encoding_table' in UTF-2000.
3522 (syms_of_mule_charset): Add LRECORD_IMPLEMENTATION
3523 `uint8_byte_table' and `uint16_byte_table' in UTF-2000.
3524 (syms_of_mule_charset): Add new function
3525 `find-char-attribute-table' in UTF-2000.
3527 * lrecord.h (enum lrecord_type): Add
3528 `lrecord_type_uint16_byte_table' and
3529 `lrecord_type_uint8_byte_table'.
3531 * char-ucs.h (struct Lisp_Uint8_Byte_Table): New structure.
3532 (Lisp_Uint8_Byte_Table): New type.
3533 (XUINT8_BYTE_TABLE): New macro.
3534 (XSETUINT8_BYTE_TABLE): New macro.
3535 (UINT8_BYTE_TABLE_P): New macro.
3536 (GC_UINT8_BYTE_TABLE_P): New macro.
3537 (struct Lisp_Uint16_Byte_Table): New structure.
3538 (Lisp_Uint16_Byte_Table): New type.
3539 (XUINT16_BYTE_TABLE): New macro.
3540 (XSETUINT16_BYTE_TABLE): New macro.
3541 (UINT16_BYTE_TABLE_P): New macro.
3542 (GC_UINT16_BYTE_TABLE_P): New macro.
3544 2000-07-13 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3546 * mule-charset.c (Vcharacter_ideographic_radical_table): Deleted.
3547 (Vcharacter_ideographic_strokes_table): Deleted.
3548 (Vcharacter_total_strokes_table): Deleted.
3549 (Vcharacter_morohashi_daikanwa_table): Deleted.
3550 (Vcharacter_decomposition_table): Deleted.
3551 (Qname): Deleted because it is duplicated.
3552 (Qideographic_radical): Deleted.
3553 (Qideographic_strokes): Deleted.
3554 (Qtotal_strokes): Deleted.
3555 (Qmorohashi_daikanwa): Deleted.
3556 (Fchar_attribute_alist): Use `Vchar_attribute_hash_table' for
3557 `ideographic-radical', `ideographic-strokes', `total-strokes',
3558 `morohashi-daikanwa' and `->decomposition'.
3559 (Fget_char_attribute): Likewise.
3560 (Fput_char_attribute): Likewise; use `make-vector' instead of
3561 `make_older_vector' for `->decomposition' value.
3562 (Fdefine_char): Comment out code to check `morohashi-daikanwa' and
3563 `ideograph-daikanwa'.
3564 (syms_of_mule_charset): Delete builtin symbols `name',
3565 `ideographic-radical', `ideographic-strokes', `total-strokes' and
3566 `morohashi-daikanwa'.
3567 (vars_of_mule_charset): Don't setup
3568 `Vcharacter_ideographic_radical_table',
3569 `Vcharacter_ideographic_strokes_table',
3570 `Vcharacter_total_strokes_table',
3571 `Vcharacter_morohashi_daikanwa_table' and
3572 `Vcharacter_decomposition_table'.
3574 2000-06-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3576 * alloc.c: Use `HAVE_GGC' instead of `UTF2000' for
3577 `make_older_vector', `make_vector_newer_1' and
3578 `make_vector_newer'.
3580 * lisp.h: Use `HAVE_GGC' instead of `UTF2000' for
3581 `make_older_vector' and `make_vector_newer'.
3583 * config.h.in (HAVE_GGC): New macro.
3585 2000-06-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3587 * mule-charset.c (struct char_attribute_list_closure): New
3588 structure in UTF-2000.
3589 (add_char_attribute_to_list_mapper): New function in UTF-2000.
3590 (Fchar_attribute_list): Likewise.
3591 (Fset_charset_mapping_table): Use `make_vector_newer'.
3592 (Fdecode_builtin_char): New function in UTF-2000.
3593 (syms_of_mule_charset): Add new function `char-attribute-list' and
3594 `decode-builtin-char' in UTF-2000.
3596 * lisp.h (make_vector_newer): New prototype.
3598 * alloc.c (make_vector_newer_1): New function.
3599 (make_vector_newer): New function.
3601 2000-06-14 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3603 * char-ucs.h (MAX_CHAR_DAIKANWA): Changed to `(MIN_CHAR_MOJIKYO +
3606 2000-06-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3608 * mule-charset.c (Vchar_attribute_hash_table): New variable.
3609 (Vcharacter_attribute_table): Deleted.
3610 (Vcharacter_name_table): Deleted.
3611 (put_char_attribute): Deleted.
3612 (remove_char_attribute): Deleted.
3613 (struct char_attribute_alist_closure): New structure.
3614 (add_char_attribute_alist_mapper): New function.
3615 (Fchar_attribute_alist): Use `Vchar_attribute_hash_table' instead
3616 of `Vcharacter_attribute_table' and `Vcharacter_name_table'.
3617 (Fget_char_attribute): Likewise.
3618 (Fput_char_attribute): Likewise.
3619 (Fremove_char_attribute): Use `Vchar_attribute_hash_table' instead
3620 of `remove_char_attribute'.
3621 (Fdefine_char): Return character.
3622 (vars_of_mule_charset): Don't setup `Vcharacter_attribute_table'
3623 and `Vcharacter_name_table'.
3624 (complex_vars_of_mule_charset): Likewise
3625 `Vchar_attribute_hash_table'.
3627 2000-06-10 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3629 * character.h (CHARC_CHARSET): New macro.
3630 (CHARC_CHARSET_ID): New macro.
3631 (CHARC_CODE_POINT): New macro.
3632 (CHARC_COLUMNS): New macro.
3633 (CHARC_TO_CHAR): New inline function.
3634 (CHARC_EQ): New inline function.
3635 (CHARC_ASCII_EQ): New inline function.
3636 (CHARC_IS_SPACE): New inline function.
3637 (ASCII_TO_CHARC): New inline function.
3639 * char-ucs.h (encode_char_2): Deleted.
3640 (ENCODE_CHAR): Use `encode_char_1' again.
3641 (breakup_char_1): Likewise.
3642 (CHAR_TO_CHARC): New inline function.
3644 * char-lb.h, char-1byte.h (CHAR_TO_CHARC): New inline function.
3646 2000-06-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3648 * redisplay.c (add_emchar_rune): Use `ASCII_TO_CHARC',
3649 `CHAR_TO_CHARC' and `CHARC_CHARSET'.
3650 (create_text_block): Use `CHARC_ASCII_EQ' and `CHARC_IS_SPACE'.
3651 (generate_formatted_string_db): Use `CHARC_TO_CHAR'.
3652 (create_string_text_block): Use `CHARC_ASCII_EQ' and
3654 (pixel_to_glyph_translation): Use `CHARC_ASCII_EQ'.
3656 * redisplay-x.c (separate_textual_runs): Use `CHARC_CHARSET' and
3658 (x_output_display_block): Use `CHARC_CHARSET' and
3661 * redisplay-tty.c (tty_output_display_block): Use
3663 (tty_output_display_block): Likewise; use `ASCII_TO_CHARC'.
3665 * redisplay-output.c (compare_runes): Use `CHARC_EQ'.
3667 * insdel.c (find_charsets_in_charc_string): Use
3669 (charc_string_displayed_columns): Use `CHARC_COLUMNS'.
3670 (convert_bufbyte_string_into_charc_dynarr): Use `CHAR_TO_CHARC'.
3671 (convert_charc_string_into_bufbyte_dynarr): Use `CHARC_TO_CHAR'.
3672 (convert_charc_string_into_malloced_string): Likewise.
3674 2000-06-09 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3676 * toolbar-x.c (x_output_toolbar_button): Use <Charc_dynarr *>
3677 instead of <Emchar_dynarr *> for buf; use
3678 `convert_bufbyte_string_into_charc_dynarr' instead of
3679 `convert_bufbyte_string_into_emchar_dynarr'; use
3680 `find_charsets_in_charc_string' instead of
3681 `find_charsets_in_emchar_string'.
3684 - Include "character.h".
3685 (struct rune): New member `cglyph'; delete member `chr'.
3687 * redisplay.c (redisplay_text_width_charc_string): New function;
3688 delete `redisplay_text_width_emchar_string'.
3689 (rtw_charc_dynarr): New variable; renamed from
3690 `rtw_emchar_dynarr'.
3691 (redisplay_text_width_string): Use `rtw_charc_dynarr' instead of
3692 `rtw_emchar_dynarr'; use
3693 `convert_bufbyte_string_into_charc_dynarr' instead of
3694 `convert_bufbyte_string_into_emchar_dynarr'; use
3695 `redisplay_text_width_charc_string' instead of
3696 `redisplay_text_width_emchar_string'.
3697 (redisplay_frame_text_width_string): Use `rtw_charc_dynarr'
3698 instead of `rtw_emchar_dynarr'; use
3699 `convert_bufbyte_string_into_charc_dynarr' instead of
3700 `convert_bufbyte_string_into_emchar_dynarr'.
3701 (add_emchar_rune): Add <Charc> instead of <Emchar>; use
3702 `redisplay_text_width_charc_string' instead of
3703 `redisplay_text_width_emchar_string'.
3704 (create_text_block): Modify for <struct rune> change.
3705 (generate_formatted_string_db): Likewise.
3706 (create_string_text_block): Likewise.
3707 (pixel_to_glyph_translation): Likewise.
3709 * redisplay-x.c (separate_textual_runs): Use <const Charc *>
3710 instead of <const Emchar *>.
3711 (x_text_width): Likewise.
3712 (x_output_display_block): Use <Charc_dynarr *> instead
3713 <Emchar_dynarr *>; modify for <structure rune> change.
3714 (x_output_string): Use <Charc_dynarr *> instead of <Emchar_dynarr
3717 * redisplay-tty.c (tty_text_width): Use <const Charc *> instead of
3718 <const Emchar *>; use `charc_string_displayed_columns' instead of
3719 `emchar_string_displayed_columns'.
3720 (tty_output_display_block): Use <Charc_dynarr *> instead of
3721 <Emchar_dynarr *> for buf; modify for <structure rune> change; use
3722 `tty_output_charc_dynarr' instead of `tty_output_emchar_dynarr'.
3723 (tty_output_charc_dynarr_dynarr): New variable; renamed from
3724 `tty_output_emchar_dynarr_dynarr'.
3725 (tty_output_charc_dynarr): New function; delete
3726 `tty_output_charc_dynarr'.
3728 * redisplay-output.c (compare_runes): Modify for `struct rune'.
3729 (redisplay_output_layout): Use <Charc_dynarr *> instead of
3730 <Emchar_dynarr *> for buf; use
3731 `convert_bufbyte_string_into_charc_dynarr' instead of
3732 `convert_bufbyte_string_into_emchar_dynarr'.
3734 * frame.c (title_string_charc_dynarr): New variable; renamed from
3735 `title_string_emchar_dynarr'.
3736 (generate_title_string): Use `title_string_charc_dynarr' instead
3737 of `title_string_emchar_dynarr'; use
3738 `convert_charc_string_into_malloced_string' instead of
3739 `convert_emchar_string_into_malloced_string'.
3740 (init_frame): Use `title_string_charc_dynarr' instead of
3741 `title_string_emchar_dynarr'.
3744 - Include "character.h".
3745 (struct console_methods): Use <const Charc *> instead of <const
3746 Emchar *> in `text_width_method'; use <Charc_dynarr *> instead of
3747 <Emchar_dynarr *> in output_string_method.
3749 * console-x.h (x_output_string): Use <Charc_dynarr *> instead of
3752 * console-stream.c (stream_text_width): Use <const Charc *>
3753 instead of <const Emchar *>.
3755 * character.h (Charc_dynarr): New type.
3757 * char-ucs.h (structure Charc): New structure; define new type
3760 * char-lb.h (DECODE_CHAR): New inline function.
3761 (encode_char_1): New inline function.
3762 (ENCODE_CHAR): New macro.
3763 (structure Charc): New structure; define new type `Charc'.
3765 * char-1byte.h (Vcharset_control_1): New macro.
3766 (Vcharset_latin_iso8859_1): New macro.
3767 (DECODE_CHAR): New inline function.
3768 (encode_char_1): New inline function.
3769 (ENCODE_CHAR): New macro.
3770 (structure Charc): New structure; define new type `Charc'.
3772 * insdel.c (find_charsets_in_charc_string): New function; delete
3773 `find_charsets_in_emchar_string'.
3774 (charc_string_displayed_columns): New function; delete
3775 `emchar_string_displayed_columns'.
3776 (convert_bufbyte_string_into_charc_dynarr): New function; delete
3777 `convert_bufbyte_string_into_emchar_dynarr'.
3778 (convert_charc_string_into_bufbyte_dynarr): New function; delete
3779 `convert_charc_string_into_bufbyte_dynarr'.
3780 (convert_charc_string_into_malloced_string): New function; delete
3781 `convert_charc_string_into_malloced_string'.
3783 * buffer.h (find_charsets_in_charc_string): New prototype; delete
3784 `find_charsets_in_emchar_string'.
3785 (charc_string_displayed_columns): New prototype; delete
3786 `emchar_string_displayed_columns'.
3787 (convert_charc_string_into_bufbyte_dynarr): New prototype; delete
3788 `convert_charc_string_into_bufbyte_dynarr'.
3789 (convert_charc_string_into_malloced_string): New prototype; delete
3790 `convert_charc_string_into_malloced_string'.
3792 2000-06-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3794 * select-x.c (Fx_store_cutbuffer_internal): Modify for UTF-2000.
3796 2000-06-07 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3798 * chartab.h (get_non_ascii_char_table_value): Use <Charset_ID>.
3800 * char-ucs.h: Use <short> for <Charset_ID>.
3802 * mule-charset.h, char-1byte.h: Use <unsigned char> for
3805 2000-06-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3807 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
3810 2000-06-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3812 * mule-charset.c (Vcharacter_morohashi_daikanwa_table): New
3814 (Qmorohashi_daikanwa): New variable.
3815 (Fchar_attribute_alist): Use `Vcharacter_morohashi_daikanwa_table'
3816 for `morohashi-daikanwa' attribute.
3817 (Fget_char_attribute): Likewise.
3818 (Fput_char_attribute): Likewise.
3819 (Fdefine_char): Don't setup `morohashi-daikanwa' attribute if it
3820 has the same value of `ideograph-daikanwa'.
3821 (syms_of_mule_charset): Add new symbol `morohashi-daikanwa'.
3822 (vars_of_mule_charset): Setup
3823 `Vcharacter_morohashi_daikanwa_table'.
3825 2000-06-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3827 * mule-charset.c (Fchar_attribute_alist): Add coded-charset
3829 (add_charset_to_list_mapper): Add `key' instead of
3830 `XCHARSET_NAME (value)' to return aliases.
3832 2000-06-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3834 * mule-charset.c (Vcharacter_ideographic_radical_table): New
3836 (Vcharacter_ideographic_strokes_table): New variable.
3837 (Qideographic_radical): New variable.
3838 (Qideographic_strokes): New variable.
3839 (Fchar_attribute_alist): Use
3840 `Vcharacter_ideographic_radical_table' for `ideographic-radical'
3841 attribute; use `Vcharacter_ideographic_strokes_table' for
3842 `ideographic-strokes' attribute.
3843 (Fget_char_attribute): Likewise.
3844 (Fput_char_attribute): Likewise.
3845 (syms_of_mule_charset): Add new symbol `ideographic-radical' and
3846 `ideographic-strokes'.
3847 (vars_of_mule_charset): Setup
3848 `Vcharacter_ideographic_radical_table' and
3849 `Vcharacter_ideographic_strokes_table'.
3851 2000-06-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3853 * mule-charset.c (Vcharacter_total_strokes_table): New variable.
3854 (Qtotal_strokes): New variable.
3855 (Fchar_attribute_alist): Use `Vcharacter_total_strokes_table' for
3856 `total-strokes' attribute.
3857 (Fget_char_attribute): Likewise.
3858 (Fput_char_attribute): Likewise.
3859 (syms_of_mule_charset): Add new symbol `total-strokes'.
3860 (vars_of_mule_charset): Setup `Vcharacter_total_strokes_table'.
3862 2000-06-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3864 * mule-charset.c (Vcharacter_decomposition_table): New variable.
3865 (Fchar_attribute_alist): Add `name' and `->decomposition' if they
3867 (Fget_char_attribute): Use `Vcharacter_decomposition_table' for
3868 `->decomposition' attribute.
3869 (Fput_char_attribute): Likewise.
3870 (vars_of_mule_charset): Setup `Vcharacter_decomposition_table'.
3872 2000-06-01 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3874 * mule-charset.c (decoding_table_check_elements): New function.
3875 (Fset_charset_mapping_table): Use `decoding_table_check_elements'.
3877 2000-05-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3879 * mule-charset.c (Fset_charset_mapping_table): Use
3880 `put_char_ccs_code_point'.
3882 2000-05-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3884 * mule-charset.c (decoding_table_put_char): New inline function.
3885 (put_char_ccs_code_point): Use `decoding_table_put_char'.
3887 2000-05-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3889 * mule-charset.c (CHARSET_BYTE_SIZE): New inline function.
3890 (XCHARSET_BYTE_SIZE): New macro.
3891 (decoding_table_remove_char): New inline function.
3892 (put_char_ccs_code_point): Use `XCHARSET_BYTE_SIZE'; use
3893 `decoding_table_remove_char'.
3894 (remove_char_ccs): Use `decoding_table_remove_char'.
3895 (Fset_charset_mapping_table): Use `CHARSET_BYTE_SIZE'.
3897 2000-05-31 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3899 * mule-charset.c (Vcharacter_name_table): New variable.
3900 (Qname): New variable.
3901 (Fget_char_attribute): Use `Vcharacter_name_table' for `name'
3903 (Fput_char_attribute): Use function `put_char_ccs_code_point'; use
3904 `Vcharacter_name_table' for `name' attribute.
3905 (Fremove_char_attribute): Use function `remove_char_ccs'.
3906 (put_char_ccs_code_point): New function.
3907 (remove_char_ccs): New function.
3908 (syms_of_mule_charset): Add new symbol `name'.
3909 (vars_of_mule_charset): Setup `Vcharacter_name_table'.
3911 2000-05-30 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3913 * mule-charset.c (make_byte_table): Add new argument `older'.
3914 (make_char_id_table): Likewise.
3915 (copy_char_id_table): Comment out because it is not used.
3916 (put_char_id_table): Modify for `make_byte_table'.
3917 (Fput_char_attribute): Make encoding_table as older object;
3918 inherit older bit of `Vcharacter_composition_table'.
3919 (mark_charset): Don't mark `cs->encoding_table'.
3920 (vars_of_mule_charset): Make `Vcharacter_attribute_table' as a
3921 normal object; make `Vcharacter_composition_table' as an older
3922 object; delete staticpro for `Vcharacter_composition_table'; make
3923 `Vcharacter_variant_table' as a normal object.
3925 * alloc.c (alloc_older_lcrecord): New function in UTF-2000.
3926 (mark_object): Don't check older object in UTF-2000.
3928 * lrecord.h (struct lrecord_header): Add new member `older' in
3930 (set_lheader_implementation): Setup `SLI_header->older' in
3932 (set_lheader_older_implementation): New macro in UTF-2000.
3933 (OLDER_RECORD_P): New macro in UTF-2000.
3934 (OLDER_RECORD_HEADER_P): New macro in UTF-2000.
3935 (alloc_older_lcrecord): New prototype in UTF-2000.
3936 (alloc_older_lcrecord_type): New macro in UTF-2000.
3938 2000-05-29 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3940 * mule-charset.c (byte_table_description): Use
3941 `XD_LISP_OBJECT_ARRAY' instead of `XD_LISP_OBJECT'.
3942 (char_id_table_description): Delete bogus `, 1'.
3943 (Fget_char_attribute): Refer encoding_table of each coded-charset
3944 to get value of coded-charset attribute of a character.
3945 (Fput_char_attribute): Use `make_older_vector' instead of
3946 `make_vector'; use encoding_table of each coded-charset to store
3947 value of coded-charset attribute of a character.
3948 (Fremove_char_attribute): Use encoding_table of each coded-charset
3949 to store value of coded-charset attribute of a character.
3950 (mark_charset): Mark `cs->encoding_table'; don't mark
3951 `cs->decoding_table'.
3952 (charset_description): Add description of new member
3954 (make_charset): Initialize `encoding_table'.
3956 * char-ucs.h (struct Lisp_Charset): Add new member
3958 (CHARSET_ENCODING_TABLE): New macro.
3959 (XCHARSET_ENCODING_TABLE): New macro.
3960 (charset_code_point): New implementation.
3961 (encode_char_1): Likewise.
3963 * alloc.c (all_older_lcrecords): New variable in UTF-2000.
3964 (disksave_object_finalization_1): Call finalizers of
3965 `all_older_lcrecords' in UTF-2000.
3966 (make_older_vector): New function in UTF-2000.
3967 (reinit_alloc_once_early): Initialize `all_older_lcrecords' in
3970 * lisp.h (make_older_vector): New prototype in UTF-2000.
3972 2000-05-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
3974 * lrecord.h (enum lrecord_type): Rename
3975 `lrecord_type_char_code_table' to `lrecord_type_char_id_table'.
3977 * text-coding.c (COMPOSE_ADD_CHAR): Use `CHAR_ID_TABLE_P' and
3978 `get_char_id_table' instead of `CHAR_CODE_TABLE_P' and
3979 `get_char_code_table'.
3981 * mule-charset.c (mark_char_id_table): Renamed from
3982 `mark_char_code_table'.
3983 (char_id_table_equal): Renamed from `char_code_table_equal'.
3984 (char_id_table_hash): Renamed from `char_code_table_hash'.
3985 (make_char_id_table): Renamed from `make_char_code_table'.
3986 (copy_char_id_table): Renamed from `copy_char_code_table'.
3987 (get_char_id_table): Renamed from `get_char_code_table'.
3988 (put_char_id_table): Renamed from `put_char_code_table'.
3989 (to_char_id): Renamed from `to_char_code'.
3991 * char-ucs.h (struct Lisp_Char_ID_Table): Renamed from
3992 `Lisp_Char_Code_Table'.
3993 (char_id_table): Renamed from `char_code_table'.
3994 (XCHAR_ID_TABLE): Renamed from `XCHAR_CODE_TABLE'.
3995 (XSETCHAR_ID_TABLE): Renamed from `XSETCHAR_CODE_TABLE'.
3996 (CHAR_ID_TABLE_P): Renamed from `CHAR_CODE_TABLE_P'.
3997 (GC_CHAR_ID_TABLE_P): Renamed from `GC_CHAR_CODE_TABLE_P'.
3998 (get_char_id_table): Renamed from `get_char_code_table'.
4000 2000-05-22 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4002 * lrecord.h (enum lrecord_type): Rename
4003 `lrecord_type_char_byte_table' to `lrecord_type_byte_table'.
4005 * mule-charset.c (mark_byte_table): Renamed from
4006 `mark_char_byte_table'.
4007 (byte_table_equal): Renamed from `char_byte_table_equal'.
4008 (byte_table_hash): Renamed from `byte_table_hash'.
4009 (make_byte_table): Renamed from `make_byte_table'.
4010 (copy_byte_table): Renamed from `copy_char_byte_table'.
4012 * char-ucs.h (struct Lisp_Byte_Table): Renamed from
4013 `Lisp_Char_Byte_Table'.
4014 (byte_table): Renamed from `char_byte_table'.
4015 (XBYTE_TABLE): Renamed from `XCHAR_BYTE_TABLE'.
4016 (XSETBYTE_TABLE): Renamed from `XSET_CHAR_BYTE_TABLE'.
4017 (BYTE_TABLE_P): Renamed from `XBYTE_TABLE_P'.
4018 (GC_BYTE_TABLE_P): Renamed from `GC_CHAR_BYTE_TABLE_P'.
4020 2000-05-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4022 * buffer.c (dfc_convert_to_external_format): Modify for UTF-2000.
4023 (dfc_convert_to_internal_format): Likewise.
4025 * text-coding.c (Fcoding_system_canonical_name_p): New function.
4026 * text-coding.c (Fcoding_system_alias_p): New function.
4027 * text-coding.c (Fcoding_system_aliasee): New function.
4028 * text-coding.c (append_suffix_to_symbol): New function.
4029 * text-coding.c (dangling_coding_system_alias_p): New function.
4030 * text-coding.c (Ffind_coding_system):
4031 * text-coding.c (Fcopy_coding_system):
4032 * text-coding.c (encode_coding_no_conversion):
4033 * text-coding.c (syms_of_file_coding):
4034 * text-coding.c (vars_of_file_coding):
4035 Rewrite coding system alias code.
4036 Allow nested aliases, like symbolic links.
4037 Allow redefinition of coding system aliases.
4038 Prevent existence of dangling coding system aliases.
4039 Eliminate convert_to_external_format.
4040 Eliminate convert_to_internal_format.
4042 * text-coding.c: Change enum eol_type to eol_type_t.
4044 2000-05-02 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4046 * mule-charset.c (encode_builtin_char_1): Limit builtin-code-range
4047 of `mojikyo' to MIN_CHAR_MOJIKYO + 94 * 60 * 22.
4049 * char-ucs.h (MAX_CHAR_MOJIKYO): Limit builtin-code-range to
4050 MIN_CHAR_MOJIKYO + 94 * 60 * 22.
4052 2000-04-28 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4054 * mule-charset.c (encode_builtin_char_1): Use `mojikyo' instead of
4055 `ideograph-daikanwa'.
4057 * char-ucs.h (Vcharset_ucs): Deleted because it is not used.
4058 (Vcharset_ucs_bmp): Likewise.
4059 (Vcharset_mojikyo): Add new extern variable definition.
4060 (Vcharset_latin_iso8859_2): Deleted because it is not used.
4061 (Vcharset_latin_iso8859_3): Likewise.
4062 (Vcharset_latin_iso8859_4): Likewise.
4063 (Vcharset_latin_iso8859_9): Likewise.
4064 (Vcharset_latin_viscii_lower): Likewise.
4065 (Vcharset_latin_viscii_upper): Likewise.
4066 (DECODE_CHAR): If charset is `mojikyo-pj-N', corresponding
4067 `mojikyo' code-point is used to decode.
4068 (encode_char_2): New function [to convert `mojikyo' code-point to
4069 Mojikyo font encoding].
4070 (ENCODE_CHAR): Use `encode_char_2' instead of `encode_code_1'.
4071 (breakup_char_1): Likewise.
4072 (CHAR_CHARSET): Use `ENCODE_CHAR' instead of `BREAKUP_CHAR'.
4074 2000-04-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4076 * text-coding.c (Fmake_coding_system): Add document about
4077 `disable-composition' property.
4079 2000-04-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4081 * text-coding.c (Qdisable_composition): New variable; delete
4083 (Fmake_coding_system): Add new property `disable-composite';
4084 delete property `composite'.
4085 (COMPOSE_ADD_CHAR): Use `CODING_SYSTEM_DISABLE_COMPOSITION'
4086 instead of `!CODING_SYSTEM_COMPOSITE'.
4087 (syms_of_file_coding): Add new symbol `disable-composition';
4088 delete symbol `composite'.
4090 * file-coding.h (struct Lisp_Coding_System): Add
4091 `disable_composition'; delete `enable_composition'.
4092 (CODING_SYSTEM_DISABLE_COMPOSITION): New macro; delete
4093 `CODING_SYSTEM_COMPOSITE'.
4094 (XCODING_SYSTEM_DISABLE_COMPOSITION): New macro; delete
4095 `XCODING_SYSTEM_COMPOSITE'.
4097 2000-04-27 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4099 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
4102 2000-04-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4104 * text-coding.c (Qcomposite): New variable.
4105 (Fmake_coding_system): Add new property `composite'.
4106 (struct decoding_stream): Add `combined_char_count',
4107 `combined_chars' and `combining_table' in UTF-2000.
4108 (COMPOSE_FLUSH_CHARS): New macro.
4109 (COMPOSE_ADD_CHAR): New macro.
4110 (reset_decoding_stream): Reset `str->combined_char_count' and
4111 `str->combining_table' in UTF-2000.
4112 (decode_coding_iso2022): Modify for character-decomposition.
4113 (syms_of_file_coding): Add new symbol `composite'.
4115 2000-04-25 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4117 * mule-charset.c (Vcharset_latin_tcvn5712): New variable.
4118 (Fput_char_attribute): Set up `Vcharacter_variant_table' instead
4119 of `Vcharacter_composition_table' if `->decomposition' property
4121 (Qlatin_tcvn5712): New variable.
4122 (syms_of_mule_charset): Add new symbol `latin-tcvn5712'.
4123 (complex_vars_of_mule_charset): Add new coded-charset
4126 * char-ucs.h (LEADING_BYTE_LATIN_TCVN5712): New macro.
4128 2000-04-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
4130 * file-coding.h (struct Lisp_Coding_System): Add
4131 `enable_composition'.
4132 (CODING_SYSTEM_COMPOSITE): New macro.
4133 (XCODING_SYSTEM_COMPOSITE): New macro.
4135 2000-03-17 MORIOKA Tomohiko <tomo@m17n.org>
4137 * mule-canna.c (c2mu): Fix problem with UTF-2000.
4139 2000-03-16 MORIOKA Tomohiko <tomo@m17n.org>
4141 * mule-charset.c (Fput_char_attribute): Don't make mapping-table
4142 if ATTRIBUTE is `ucs' and character-id of CHARACTER = VALUE.
4144 2000-02-24 MORIOKA Tomohiko <tomo@m17n.org>
4146 * mule-charset.c (Vcharset_mojikyo): New variable.
4147 (Fdefine_char): Don't use coded-charset which does not have
4148 non-builtin character range to allocate character-id.
4149 (Qmojikyo): New variable.
4150 (syms_of_mule_charset): Add new symbol `mojikyo'.
4151 (complex_vars_of_mule_charset): Add new coded-charset `mojikyo'.
4153 * char-ucs.h (LEADING_BYTE_DAIKANWA_EKANJI): New macro.
4154 (LEADING_BYTE_MOJIKYO): New macro.
4155 (MIN_CHAR_MOJIKYO): New macro.
4156 (MIN_CHAR_DAIKANWA): Use `MIN_CHAR_MOJIKYO'.
4157 (MAX_CHAR_MOJIKYO): New macro.
4159 2000-02-12 MORIOKA Tomohiko <tomo@m17n.org>
4161 * mule-charset.c (remove_char_attribute): Fixed.
4163 2000-02-08 MORIOKA Tomohiko <tomo@m17n.org>
4165 * mule-charset.c (remove_char_attribute): New function.
4166 (Fremove_char_attribute): New function.
4167 (encode_builtin_char_1): Comment out builtin-support for
4168 greek-iso8859-7 and cyrillic-iso8859-5.
4169 (Fdecode_char): Check `code' is an integer.
4170 (syms_of_mule_charset): Add `remove-char-attribute'.
4171 (MIN_CHAR_GREEK): Deleted.
4172 (MAX_CHAR_GREEK): Likewise.
4173 (MIN_CHAR_CYRILLIC): Likewise.
4174 (MAX_CHAR_CYRILLIC): Likewise.
4175 (complex_vars_of_mule_charset): Don't use MIN_CHAR_GREEK and
4176 MAX_CHAR_GREEK for `greek-iso8859-7'.
4178 * char-ucs.h (MIN_CHAR_GREEK): Comment out.
4179 (MAX_CHAR_GREEK): Likewise.
4180 (MIN_CHAR_CYRILLIC): Likewise.
4181 (MAX_CHAR_CYRILLIC): Likewise.
4183 2000-02-02 MORIOKA Tomohiko <tomo@m17n.org>
4185 * mule-charset.c (Fdefine_char): Fix problem when new code-point
4186 format is used without `ucs' property.
4187 (Fdecode_char): Fix problem with GR representation.
4188 (complex_vars_of_mule_charset): Don't use `MIN_CHAR_CYRILLIC' and
4189 `MAX_CHAR_CYRILLIC' as range of builtin `cyrillic-iso8859-5'.
4191 2000-01-28 MORIOKA Tomohiko <tomo@etl.go.jp>
4193 * mule-charset.c (make_builtin_char): New function.
4194 (encode_builtin_char_1): Check ISO-2022-charset is defined or not.
4195 (Fset_charset_mapping_table): Modify for new representation of
4197 (Fdecode_char): New function.
4198 (syms_of_mule_charset): Add new builtin function `decode-char' in
4201 * char-ucs.h (make_builtin_char): New prototype.
4202 (DECODE_CHAR): New inline function.
4203 (MAKE_CHAR): Use `DECODE_CHAR'.
4205 2000-01-28 MORIOKA Tomohiko <tomo@m17n.org>
4207 * text-coding.c (parse_charset_conversion_specs): Use
4208 `XCHARSET_CHARS' and `XCHARSET_DIMENSION' instead of
4210 (iso2022_designate): Likewise.
4212 * chartab.c (decode_char_table_range): Use `XCHARSET_CHARS' and
4213 `XCHARSET_DIMENSION' instead of `XCHARSET_TYPE'.
4215 * mule-charset.c (Vcharset_ucs): New variable.
4216 (print_charset): Change design; use `CHARSET_CHARS' and
4217 `CHARSET_DIMENSION' instead of `CHARSET_TYPE'.
4218 (make_charset): Change signature to specify `chars' and
4219 `dimension' instead of `type'.
4220 (range_charset_code_point): Modify for 256^n-set.
4221 (encode_builtin_char_1): Encode as `ucs' in default.
4222 (Fmake_charset): Modify for `make_charset'.
4223 (Fmake_reverse_direction_charset): Likewise.
4224 (Fsplit_char): Use `ENCODE_CHAR' instead of `BREAKUP_CHAR' in
4226 (complex_vars_of_mule_charset): Add coded-charset `ucs'; modify
4229 * char-ucs.h (Vcharset_ucs): New variable.
4230 (LEADING_BYTE_UCS): New macro.
4231 (struct Lisp_Charset): Delete `type'; change type of `dimension'
4232 and `chars' to `unsigned short' from `unsigned int'.
4233 (CHARSET_TYPE): Deleted.
4234 (XCHARSET_TYPE): Deleted.
4236 2000-01-27 MORIOKA Tomohiko <tomo@m17n.org>
4238 * mule-charset.c (charset_code_point): Moved to char-ucs.h.
4240 * char-ucs.h (charset_code_point): Moved from mule-charset.c.
4241 (ENCODE_CHAR): New macro.
4243 2000-01-26 MORIOKA Tomohiko <tomo@etl.go.jp>
4245 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
4246 to 0.14 (Kawachi-Katakami).
4248 2000-01-26 MORIOKA Tomohiko <tomo@etl.go.jp>
4250 * text-coding.c (char_encode_shift_jis): Modify for
4251 `charset_code_point'.
4252 (char_encode_iso2022): Likewise.
4254 * mule-charset.c (Fput_char_attribute): Use <Lisp_Object>
4255 (integer) instead of list of <Lisp_Object>s (integers) as the
4256 format of code-point of a coded-charset.
4257 (range_charset_code_point): Return <int> instead of <Lisp_Object>.
4258 (encode_builtin_char_1): New function; delete
4259 `split_builtin_char'.
4260 (charset_code_point): Return <int> instead of <Lisp_Object>.
4261 (Fsplit_char): Don't use `SPLIT_CHAR'.
4263 * char-ucs.h (encode_builtin_char_1): New prototype; delete
4264 prototype for `split_builtin_char'.
4265 (range_charset_code_point): Return <int> instead of <Lisp_Object>.
4266 (charset_code_point): Likewise.
4267 (encode_char_1): New inline function; delete `SPLIT_CHAR'.
4268 (breakup_char_1): Use `encode_char_1' instead of `SPLIT_CHAR'.
4270 2000-01-20 MORIOKA Tomohiko <tomo@m17n.org>
4272 * mule-charset.c (complex_vars_of_mule_charset): Don't define
4273 `japanese-jisx0208-1990' in non-UTF-2000 Mule.
4275 2000-01-11 MORIOKA Tomohiko <tomo@etl.go.jp>
4277 * mule-charset.c (split_builtin_char): Don't support OBS_94x94.
4279 * char-ucs.h (MIN_CHAR_OBS_94x94): Deleted.
4280 (MAX_CHAR_OBS_94x94): Deleted.
4282 2000-01-11 MORIOKA Tomohiko <tomo@etl.go.jp>
4284 * mule-charset.c (split_builtin_char): Use `MAX_CHAR_BMP'.
4286 * char-ucs.h (MAX_CHAR_BMP): New macro.
4288 2000-01-10 MORIOKA Tomohiko <tomo@etl.go.jp>
4290 * text-coding.c: Sync with r21-2-24.
4292 2000-01-08 MORIOKA Tomohiko <tomo@etl.go.jp>
4294 * file-coding.c: Modify for UTF-2000.
4296 2000-01-18 MORIOKA Tomohiko <tomo@etl.go.jp>
4298 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
4301 2000-01-15 MORIOKA Tomohiko <tomo@etl.go.jp>
4303 * mule-charset.c (split_builtin_char): Delete builtin support for
4304 `katakana-jisx0201'.
4305 (complex_vars_of_mule_charset): Don't map `katakana-jisx0201' to
4306 BMP area in builtin representation.
4308 * char-ucs.h (MAKE_CHAR): Delete builtin support for
4309 `Vcharset_katakana_jisx0201'.
4311 1999-12-24 MORIOKA Tomohiko <tomo@etl.go.jp>
4313 * mule-charset.c (Vcharset_mojikyo_pj_[1 .. 21]): New variable.
4314 (Qisolated): New variable.
4315 (Qinitial): New variable.
4316 (Qmedial): New variable.
4317 (Qfinal): New variable.
4318 (Qvertical): New variable.
4319 (Qsmall): New variable.
4320 (to_char_code): Use `Qisolated', `Qinitial', `Qmedial', `Qfinal',
4321 `Qvertical' and `Qsmall'.
4322 (Qmojikyo_pj_[1 .. 21]): New variable.
4323 (syms_of_mule_charset): Add new symbols `isolated', `initial',
4324 `medial', `final', `vertical', `small' and `mojikyo-pj-[1 .. 21]'.
4325 (complex_vars_of_mule_charset): Add new charset `mojikyo-pj-[1
4328 1999-11-23 MORIOKA Tomohiko <tomo@etl.go.jp>
4330 * char-ucs.h (MIN_LEADING_BYTE): Changed to -0x60.
4331 (LEADING_BYTE_MOJIKYO_PJ_[1 .. 21]): New macros.
4332 (MAX_LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 32)'.
4334 1999-11-18 MORIOKA Tomohiko <tomo@etl.go.jp>
4336 * mule-charset.c (Vcharset_japanese_jisx0208_1990): New variable.
4337 (Fdefine_char): Use Group 00 Plane 10 for non-coded variants of
4339 (Qjapanese_jisx0208_1990): New variable.
4340 (syms_of_mule_charset): Add new symbol `Qjapanese_jisx0208_1990'.
4341 (complex_vars_of_mule_charset): Add new coded-charset
4342 `japanese-jisx0208-1990'.
4344 * char-ucs.h (LEADING_BYTE_JAPANESE_JISX0208_1990): New macro.
4345 (MIN_CHAR_JIS_X0208_1990): New macro.
4346 (MAX_CHAR_JIS_X0208_1990): New macro.
4348 1999-11-16 MORIOKA Tomohiko <tomo@urania.m17n.org>
4350 * text-coding.c (char_encode_iso2022): Output `~' if ISO 2022
4351 coded-charset is not found.
4353 1999-11-16 MORIOKA Tomohiko <tomo@urania.m17n.org>
4355 * mule-charset.c (Fget_char_attribute): Forgot to `CHECK_CHAR'.
4356 (Fdefine_char): Use `Fmake_char'.
4358 1999-11-15 MORIOKA Tomohiko <tomo@urania.m17n.org>
4360 * mule-charset.c (Vcharset_ideograph_daikanwa): New variable.
4361 (Vcharset_hiragana_jisx0208): Deleted.
4362 (Vcharset_katakana_jisx0208): Deleted.
4363 (Qideograph_daikanwa): New variable.
4364 (Qhiragana_jisx0208): Deleted.
4365 (Qkatakana_jisx0208): Deleted.
4366 (split_builtin_char): Split `ideograph-daikanwa'.
4367 (Fsplit_char): New implementation for UTF-2000.
4368 (syms_of_mule_charset): Add new symbol `ideograph-daikanwa';
4369 delete symbol `hiragana-jisx0208' and `katakana-jisx0208'.
4370 (complex_vars_of_mule_charset): Add new coded-charset
4371 `ideograph-daikanwa'; delete coded-charset `hiragana-jisx0208' and
4372 `katakana-jisx0208'.
4374 * char-ucs.h (LEADING_BYTE_DAIKANWA): New macro.
4375 (LEADING_BYTE_HIRAGANA_JISX0208): Deleted.
4376 (LEADING_BYTE_KATAKANA_JISX0208): Deleted.
4377 (MIN_CHAR_DAIKANWA): New macro.
4378 (MAX_CHAR_DAIKANWA): New macro.
4380 1999-11-15 MORIOKA Tomohiko <tomo@urania.m17n.org>
4382 * data.c (Fstring_to_number): Don't recognize floating point if
4385 1999-11-15 MORIOKA Tomohiko <tomo@urania.m17n.org>
4387 * mule-charset.c (Fput_char_attribute): Forgot to `CHECK_CHAR'.
4389 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
4391 * mule-charset.c (Qsquare): New variable.
4392 (to_char_code): Add `Qsquare'.
4393 (syms_of_mule_charset): Add new symbol `square'.
4395 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
4397 * mule-charset.c (Qcircle): New variable.
4398 (to_char_code): Add `Qcircle'.
4399 (syms_of_mule_charset): Add new symbol `circle'.
4401 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
4403 * mule-charset.c (Qfont): New variable.
4404 (to_char_code): Add `Qfont'.
4405 (syms_of_mule_charset): Add new symbol `font'.
4407 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
4409 * mule-charset.c (Qsub): New variable.
4410 (to_char_code): Add `Qsub'.
4411 (syms_of_mule_charset): Add new symbol `sub'.
4413 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
4415 * mule-charset.c (Fput_char_attribute): Convert each element of
4416 VALUE to GL position if ATTRIBUTE is a GR-set,
4418 1999-11-14 MORIOKA Tomohiko <tomo@urania.m17n.org>
4420 * mule-charset.c (Fput_char_attribute): Allow GR code-point if a
4421 coded-charset is a GR-set.
4423 1999-11-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
4425 * mule-charset.c (Fput_char_attribute): Check each element of
4426 VALUE is a byte if ATTRIBUTE is a coded-charset or its name.
4428 1999-11-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
4430 * mule-charset.c (Vcharset_ethiopic_ucs): New variable in
4432 (Qethiopic_ucs): New variable in UTF-2000.
4433 (syms_of_mule_charset): Add new symbol `ethiopic-ucs' in UTF-2000.
4434 (complex_vars_of_mule_charset): Add new coded-charset
4435 `ethiopic-ucs' in UTF-2000.
4437 * char-ucs.h (LEADING_BYTE_ETHIOPIC_UCS): New macro.
4438 (LEADING_BYTE_HIRAGANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
4440 (LEADING_BYTE_KATAKANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
4442 (LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 11)'.
4444 1999-11-13 MORIOKA Tomohiko <tomo@etl.go.jp>
4446 * mule-charset.c (Fset_charset_mapping_table): Fix problem with
4449 1999-11-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
4451 * mule-charset.c (Vcharacter_variant_table): New variable.
4452 (Q_ucs): New variable.
4453 (Fchar_variants): New function.
4454 (Fput_char_attribute): Register `->ucs' value to
4455 `Vcharacter_variant_table'.
4456 (syms_of_mule_charset): Add new function `char-variants' and new
4458 (vars_of_mule_charset): Setup `Vcharacter_variant_table'.
4460 1999-11-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
4462 * mule-charset.c (get_char_code_table): Allow negative character
4464 (put_char_code_table): Likewise.
4465 (Vcharacter_composition_table): New variable.
4466 (Q_decomposition): New variable.
4467 (Qwide): New variable.
4468 (Qnarrow): New variable.
4469 (Qcompat): New variable.
4470 (QnoBreak): New variable.
4471 (Qsuper): New variable.
4472 (Qfraction): New variable.
4473 (to_char_code): New function.
4474 (Fget_composite_char): New function.
4475 (Fput_char_attribute): Register `->decomposition' value to
4476 `Vcharacter_composition_table'.
4477 (syms_of_mule_charset): Add new function `get-composite-char', new
4478 symbol `->decomposition', `wide', `narrow', `compat', `noBreak',
4479 `super' and `fraction'.
4480 (vars_of_mule_charset): Setup `Vcharacter_composition_table'.
4482 1999-11-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
4484 * mule-charset.c (Fchar_attribute_alist): Check the argument is a
4485 character; copy the return value.
4487 1999-11-12 MORIOKA Tomohiko <tomo@etl.go.jp>
4489 * char-ucs.h (SPLIT_CHAR): Use `split_builtin_char'.
4491 * mule-charset.c (range_charset_code_point): Must use make_int.
4492 (split_builtin_char): New function.
4494 1999-11-12 MORIOKA Tomohiko <tomo@etl.go.jp>
4496 * mule-charset.c (char_byte_table): Change name from
4497 "char-code-table" to "char-byte-table".
4498 (mark_char_code_table): New function.
4499 (char_code_table_equal): New function.
4500 (char_code_table_hash): New function.
4501 (char_code_table_description): New constant.
4502 (char_code_table): New type.
4503 (make_char_code_table): New function.
4504 (copy_char_code_table): New function.
4505 (get_char_code_table): Modify for `char_code_table' type.
4506 (put_char_code_table): Likewise.
4507 (vars_of_mule_charset): Update `utf-2000-version' to 0.12
4510 * char-ucs.h (char_code_table): New type.
4511 (XCHAR_CODE_TABLE): New macro.
4512 (XSETCHAR_CODE_TABLE): New macro.
4513 (CHAR_CODE_TABLE_P): New macro.
4514 (GC_CHAR_CODE_TABLE_P): New macro.
4515 (struct Lisp_Char_Code_Table): New structure.
4517 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
4519 * mule-charset.c (Fmake_charset): Setup byte_offset for
4522 1999-11-09 MORIOKA Tomohiko <tomo@urania.m17n.org>
4524 * mule-charset.c (Fdefine_char): Fix problem with non-UCS
4527 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
4529 * char-ucs.h (SPLIT_CHAR): Don't make new cell if a charset slot
4532 1999-11-09 MORIOKA Tomohiko <tomo@etl.go.jp>
4534 * mule-charset.c (Fget_char_attribute): If ATTRIBUTE is a name of
4535 charset, it is regarded as a charset.
4536 (put_char_attribute): New function in UTF-2000.
4537 (Fput_char_attribute): If ATTRIBUTE is a charset or a name of
4538 charset, mapping-table of the charset is modified.
4539 (Fdefine_char): New function in UTF-2000.
4540 (Fset_charset_mapping_table): Use `put_char_attribute' instead of
4541 `Fput_char_attribute'.
4542 (syms_of_mule_charset): Add new function `define-char' and new
4543 symbol `ucs' in UTF-2000.
4544 (vars_of_mule_charset): Update `utf-2000-version' to 0.11 (Shiki).
4546 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
4548 * mule-charset.c (Fcharset_name): Define `byte_offset' in
4549 non-UTF-2000 configuration.
4551 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
4553 * text-coding.c (char_encode_shift_jis): Use `charset_code_point'
4554 not to use `XCHARSET_ENCODING_TABLE (Vcharset_latin_jisx0201)'.
4556 * mule-charset.c (mark_charset): `cs->encoding_table' has been
4558 (make_charset): Don't use `CHARSET_ENCODING_TABLE(cs)'.
4559 (Fset_charset_mapping_table): Likewise.
4561 * char-ucs.h (struct Lisp_Charset): Delete `encoding_table'.
4562 (CHARSET_ENCODING_TABLE): Delete.
4563 (XCHARSET_ENCODING_TABLE): Delete.
4564 (charset_code_point): New interface.
4566 1999-10-29 MORIOKA Tomohiko <tomo@etl.go.jp>
4568 * text-coding.c (char_encode_iso2022): Use `charset_code_point'
4569 instead of `charset_get_byte1' and `charset_get_byte2'.
4571 * mule-charset.c, char-ucs.h (charset_get_byte1): Deleted.
4572 (charset_get_byte2): Deleted.
4574 1999-10-28 MORIOKA Tomohiko <tomo@etl.go.jp>
4576 * char-ucs.h (SPLIT_CHAR): New inline function.
4577 (breakup_char_1): Use `SPLIT_CHAR'.
4579 * mule-charset.c (range_charset_code_point): New function.
4580 (charset_code_point): New function.
4582 * char-ucs.h (range_charset_code_point): New interface.
4583 (breakup_char_1): Use `range_charset_code_point'.
4585 1999-10-27 MORIOKA Tomohiko <tomo@etl.go.jp>
4587 * mule-charset.c (Fmake_charset): Delete unused local variable
4590 * char-ucs.h (Vcharacter_attribute_table): New extern variable.
4591 (breakup_char_1): Find a charset and code-point in
4592 `Vcharacter_attribute_table'.
4594 1999-10-27 MORIOKA Tomohiko <tomo@etl.go.jp>
4596 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
4599 1999-10-25 MORIOKA Tomohiko <tomo@etl.go.jp>
4601 * mule-charset.c (Vcharacter_attribute_table): New variable.
4602 (Fchar_attribute_alist): New function.
4603 (Fget_char_attribute): New function.
4604 (Fput_char_attribute): New function.
4605 (Fset_charset_mapping_table): Setup `Vcharacter_attribute_table'
4607 (syms_of_mule_charset): Add new function `char-attribute-alist',
4608 `get-char-attribute' and `put-char-attribute'.
4609 (vars_of_mule_charset): Setup `Vcharacter_attribute_table'.
4611 1999-10-19 MORIOKA Tomohiko <tomo@etl.go.jp>
4613 * mule-charset.c (Fmake_charset): Just use
4614 `get_unallocated_leading_byte'.
4616 * char-ucs.h (LEADING_BYTE_*): Use ISO-IR numbers for official
4617 sets; don't use final-byte based number for private sets.
4619 1999-10-12 MORIOKA Tomohiko <tomo@etl.go.jp>
4621 * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
4624 1999-10-12 MORIOKA Tomohiko <tomo@etl.go.jp>
4626 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
4629 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
4631 * regex.c (compile_extended_range): Use `CHAR_CHARSET_ID' instead
4632 of `CHAR_LEADING_BYTE' in UTF-2000.
4634 * insdel.c (find_charsets_in_bufbyte_string): Use
4635 `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
4636 (find_charsets_in_emchar_string): Likewise.
4638 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use
4639 `CHAR_CHARSET_ID' instead of `CHAR_LEADING_BYTE' in UTF-2000.
4641 * char-ucs.h (CHAR_LEADING_BYTE): Deleted.
4642 (CHAR_CHARSET_ID): New macro.
4644 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
4646 * chartab.c (get_char_table): Don't use type `Charset_ID' for
4647 charset-id - MIN_LEADING_BYTE.
4648 (put_char_table): Likewise.
4650 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
4652 * char-ucs.h (MIN_LEADING_BYTE): Changed to `-0x40'.
4653 (NUM_LEADING_BYTES): Changed to (80 * 3 - MIN_LEADING_BYTE).
4654 (CHARSET_LEADING_BYTE): Don't cast by `Bufbyte'.
4655 (CHARSET_ID_OFFSET): New macro.
4656 (LEADING_BYTE_CONTROL_1): Changed to (CHARSET_ID_OFFSET - 1).
4657 (LEADING_BYTE_UCS_BMP): Changed to (CHARSET_ID_OFFSET - 2).
4658 (LEADING_BYTE_LATIN_VISCII): Changed to (CHARSET_ID_OFFSET - 3).
4659 (LEADING_BYTE_HIRAGANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
4661 (LEADING_BYTE_KATAKANA_JISX0208): Changed to (CHARSET_ID_OFFSET -
4663 (MIN_LEADING_BYTE_PRIVATE): Changed to `MIN_LEADING_BYTE'.
4664 (MAX_LEADING_BYTE_PRIVATE): Changed to (CHARSET_ID_OFFSET - 6).
4665 (CHARSET_ID_OFFSET_94): Changed to (CHARSET_ID_OFFSET - '0').
4666 (CHARSET_ID_OFFSET_96): Changed to (CHARSET_ID_OFFSET_94 + 80).
4667 (CHARSET_ID_OFFSET_94x94): Changed to (CHARSET_ID_OFFSET_96 + 80).
4669 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
4671 * mule-charset.c (next_allocated_leading_byte): New variable in
4673 (next_allocated_1_byte_leading_byte): Don't define in UTF-2000.
4674 (next_allocated_2_byte_leading_byte): Don't define in UTF-2000.
4675 (get_unallocated_leading_byte): Simply use
4676 `next_allocated_leading_byte' [ignore dimension] in UTF-2000.
4677 (vars_of_mule_charset): Setup `next_allocated_leading_byte' in
4680 * char-ucs.h (MIN_LEADING_BYTE_PRIVATE): New macro.
4681 (MAX_LEADING_BYTE_PRIVATE): New macro.
4682 (MIN_LEADING_BYTE_OFFICIAL_2): Deleted.
4683 (MAX_LEADING_BYTE_OFFICIAL_2): Deleted.
4685 1999-10-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
4687 * mule-charset.c (Fmake_charset): Allocate final-byte based
4688 charset-id for 94-set, 96-set and 94x94-set.
4690 1999-10-11 MORIOKA Tomohiko <tomo@etl.go.jp>
4692 * mule-charset.c (char_byte_table_equal): Fill braces to avoid
4694 (Fmake_charset): Likewise.
4695 (complex_vars_of_mule_charset): Modify the font registry of
4696 `ucs-bmp' not to match `Ethiopic-Unicode'.
4698 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
4700 * mule-charset.c (complex_vars_of_mule_charset): Add font
4701 registory of `ucs-bmp'.
4703 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
4705 * text-coding.c (char_encode_iso2022): Ignore non-ISO-2022
4706 coded-charsets in `default-coded-charset-priority-list' when
4707 breaking up a character.
4709 * mule-charset.c (Vcharset_latin_viscii): New variable.
4710 (Qlatin_viscii): New variable.
4711 (make_charset): Don't use `decoding_table'.
4712 (Fmake_charset): Regard graphic = 2 as 256^n-set; setup
4714 (Fset_charset_mapping_table): New implementation.
4715 (syms_of_mule_charset): Add new symbol `latin-viscii'.
4716 (complex_vars_of_mule_charset): Set `graphic' attribute of charset
4717 `ucs-bmp' and `latin_viscii' to 2; change font registry of charset
4718 `latin-viscii-lower' to "MULEVISCII-LOWER"; change font registry
4719 of charset `latin-viscii-upper' to "MULEVISCII-UPPER"; add new
4720 charset `latin_viscii'.
4722 * char-ucs.h (LEADING_BYTE_LATIN_VISCII): New macro.
4723 (CHARSET_TYPE_94X94): Change to 1 from 2.
4724 (CHARSET_TYPE_96): Change to 2 from 1.
4725 (CHARSET_TYPE_128): New macro.
4726 (CHARSET_TYPE_128X128): Change to 5 from 4.
4727 (CHARSET_TYPE_256): New macro.
4728 (CHARSET_TYPE_256X256): Change to 7 from 5.
4729 (MAKE_CHAR): Use `XCHARSET_BYTE_OFFSET(charset)'.
4731 1999-10-10 MORIOKA Tomohiko <tomo@urania.m17n.org>
4733 * text-coding.c (char_encode_shift_jis): Refer
4734 `XCHARSET_ENCODING_TABLE(Vcharset_latin_jisx0201)' instead of
4735 `XCHARSET_TO_BYTE1_TABLE(Vcharset_latin_jisx0201)'.
4737 * mule-charset.c (mark_char_byte_table): New function in UTF-2000.
4738 (char_byte_table_equal): New function in UTF-2000.
4739 (char_byte_table_hash): New function in UTF-2000.
4740 (char_byte_table_description): New constant in UTF-2000.
4741 (char_byte_table): New type in UTF-2000.
4742 (make_char_byte_table): New function in UTF-2000.
4743 (copy_char_byte_table): New function in UTF-2000.
4744 (make_char_code_table): New macro in UTF-2000.
4745 (get_char_code_table): New function in UTF-2000.
4746 (put_char_code_table): New function in UTF-2000.
4747 (mark_charset): Mark `cs->encoding_table' in UTF-2000.
4748 (charset_description): Add setting in UTF-2000.
4749 (make_charset): Setup `CHARSET_ENCODING_TABLE(cs)' instead of
4750 `CHARSET_TO_BYTE1_TABLE(cs)'.
4751 (charset_get_byte1): Refer `XCHARSET_ENCODING_TABLE(charset)'
4752 instead of `XCHARSET_TO_BYTE1_TABLE(charset)'.
4753 (charset_get_byte2): Refer `XCHARSET_ENCODING_TABLE(charset)'
4754 instead of `XCHARSET_TO_BYTE2_TABLE(charset)'.
4755 (Fset_charset_mapping_table): Setup `CHARSET_ENCODING_TABLE(cs)'
4756 instead of `CHARSET_TO_BYTE1_TABLE(cs)' and
4757 `CHARSET_TO_BYTE2_TABLE(cs)'.
4759 * char-ucs.h (char_byte_table): New type.
4760 (XCHAR_BYTE_TABLE): New macro.
4761 (XSETCHAR_BYTE_TABLE): New macro.
4762 (CHAR_BYTE_TABLE_P): New macro.
4763 (GC_CHAR_BYTE_TABLE_P): New macro.
4764 (struct Lisp_Char_Byte_Table): New structure.
4765 (get_char_code_table): New interface.
4766 (Emchar_to_byte_table): Deleted.
4767 (get_byte_from_character_table): Deleted.
4768 (struct Lisp_Charset): Add `encoding_table'; delete
4769 `to_byte1_table' and `to_byte2_table'.
4770 (CHARSET_ENCODING_TABLE): New macro.
4771 (CHARSET_TO_BYTE1_TABLE): Deleted.
4772 (CHARSET_TO_BYTE2_TABLE): Deleted.
4773 (XCHARSET_ENCODING_TABLE): New macro.
4774 (XCHARSET_TO_BYTE1_TABLE): Deleted.
4775 (XCHARSET_TO_BYTE2_TABLE): Deleted.
4777 1999-10-07 MORIOKA Tomohiko <tomo@etl.go.jp>
4779 * mule-charset.c (syms_of_mule_charset): Delete charset alias
4780 `vietnamese-viscii-*'.
4782 1999-10-07 MORIOKA Tomohiko <tomo@etl.go.jp>
4784 * mule-charset.c (Qvietnamese_viscii_lower): New variable.
4785 (Qvietnamese_viscii_upper): New variable.
4786 (Fdefine_charset_alias): New function.
4787 (syms_of_mule_charset): Add new function `define-charset-alias'.
4788 (syms_of_mule_charset): Rename charset `vietnamese-viscii-*' to
4789 `latin-viscii-*'; define `vietnamese-viscii-*' as aliases for
4792 1999-10-04 MORIOKA Tomohiko <tomo@etl.go.jp>
4794 * char-ucs.h (MIN_CHAR_OBS_94x94): New macro.
4795 (MAX_CHAR_OBS_94x94): New macro.
4796 (breakup_char_1): Support obsolete XEmacs-UCS private code space
4799 * mule-charset.c (put_byte_from_character_table): Change unit size
4801 (mark_charset): Don't mark `cs->decoding_table' if `UTF2000' is
4803 (Fmake_reverse_direction_charset): Modify dummy argument of
4804 `make_charset' for non-UTF-2000 environment.
4806 1999-10-03 MORIOKA Tomohiko <tomo@urania.m17n.org>
4808 * char-ucs.h (MAKE_CHAR): Allow nested decoding-table.
4810 * mule-charset.c (destroy_byte_from_character_table): New macro.
4811 (latin_jisx0201_to_ucs): Deleted.
4812 (latin_iso8859_2_to_ucs): Deleted.
4813 (latin_iso8859_3_to_ucs): Deleted.
4814 (latin_iso8859_4_to_ucs): Deleted.
4815 (latin_iso8859_9_to_ucs): Deleted.
4816 (latin_viscii_lower_to_ucs): Deleted.
4817 (latin_viscii_upper_to_ucs): Deleted.
4818 (mark_charset): Mark `cs->decoding_table'.
4819 (Fcharset_mapping_table): Fix DOC-string.
4820 (Fset_charset_mapping_table): New function.
4821 (syms_of_mule_charset): Add nwe function
4822 `set-charset-mapping-table'.
4823 (complex_vars_of_mule_charset): Don't setup and use
4826 1999-10-01 MORIOKA Tomohiko <tomo@urania.m17n.org>
4828 * char-ucs.h (MAKE_CHAR): Check the result for range-represented
4831 1999-09-30 MORIOKA Tomohiko <tomo@urania.m17n.org>
4833 * mule-charset.c (Vcharset_hiragana_jisx0208): New variable.
4834 (Vcharset_katakana_jisx0208): New variable.
4835 (Qhiragana_jisx0208): New variable.
4836 (Qkatakana_jisx0208): New variable.
4837 (make_charset): Add new argument `byte_offset'.
4838 (charset_get_byte1): Modify for new coded-charset definition; use
4839 `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
4840 `XCHARSET_BYTE_OFFSET'.
4841 (Fmake_charset): Modify for `make_charset'.
4842 (Fmake_reverse_direction_charset): Likewise.
4843 (syms_of_mule_charset): Add new symbols `hiragana-jisx0208' and
4844 `katakana-jisx0208'.
4845 (complex_vars_of_mule_charset): Modify for `make_charset'; quote
4846 `.' in font registry of charset `katakana-jisx0201',
4847 `latin-jisx0201', `vietnamese-viscii-lower' and
4848 `vietnamese-viscii-upper'; modify DOC-string of charset
4849 `japanese-jisx0208-1978' and `japanese-jisx0208'; modify font
4850 registry of charset `japanese-jisx0208' not to use font for JIS
4851 X0208:1990; add new charset `hiragana-jisx0208' and
4852 `katakana-jisx0208'.
4854 * char-ucs.h (LEADING_BYTE_HIRAGANA_JISX0208): New macro.
4855 (LEADING_BYTE_KATAKANA_JISX0208): New macro.
4856 (struct Lisp_Charset): Add `byte_offset'.
4857 (CHARSET_BYTE_OFFSET): New macro.
4858 (XCHARSET_UCS_MIN): New macro.
4859 (XCHARSET_UCS_MAX): New macro.
4860 (XCHARSET_CODE_OFFSET): New macro.
4861 (XCHARSET_BYTE_OFFSET): New macro.
4862 (MIN_CHAR_HIRAGANA): New macro.
4863 (MAX_CHAR_HIRAGANA): New macro.
4864 (MIN_CHAR_KATAKANA): New macro.
4865 (MAX_CHAR_KATAKANA): New macro.
4866 (MAKE_CHAR): Modify for new coded-charset definition; use
4867 `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
4868 `XCHARSET_BYTE_OFFSET'.
4870 1999-09-27 MORIOKA Tomohiko <tomo@etl.go.jp>
4872 * mule-charset.c (CHAR96): Deleted.
4873 (latin_jisx0201_to_ucs): Type is changed from array of <Emchar> to
4875 (latin_iso8859_2_to_ucs): Likewise.
4876 (latin_iso8859_3_to_ucs): Likewise.
4877 (latin_iso8859_4_to_ucs): Likewise.
4878 (latin_iso8859_9_to_ucs): Likewise.
4879 (latin_viscii_lower_to_ucs): Likewise.
4880 (latin_viscii_upper_to_ucs): Likewise.
4881 (latin_tcvn5712_to_ucs): Commented out.
4882 (make_charset): Change type of argument `decoding_table' from
4883 <Emchar*> to <Lisp_Object> [vector of characters].
4884 (Fmake_charset): Modify for `make_charset'.
4885 (Fmake_reverse_direction_charset): Likewise.
4886 (Fcharset_mapping_table): New function in UTF-2000.
4887 (syms_of_mule_charset): Setup `Fcharset_mapping_table' in
4889 (complex_vars_of_mule_charset): Modify for type change of
4890 `*_to_ucs'; modify for `make_charset'.
4892 * char-ucs.h (struct Lisp_Charset): Change type of
4893 `decoding_table' from <Emchar*> to <Lisp_Object>.
4894 (MAKE_CHAR): Modify for new specification of `decoding_table'.
4896 1999-09-23 MORIOKA Tomohiko <tomo@etl.go.jp>
4898 * mule-charset.c (Fmake_reverse_direction_charset): Fix compile
4899 error with non-UTF-2000-Mule.
4901 1999-09-21 MORIOKA Tomohiko <tomo@etl.go.jp>
4903 * mule-charset.c (Vcharset_chinese_cns11643_3): Deleted [defined
4905 (Vcharset_chinese_cns11643_4): Likewise.
4906 (Vcharset_chinese_cns11643_5): Likewise.
4907 (Vcharset_chinese_cns11643_6): Likewise.
4908 (Vcharset_chinese_cns11643_7): Likewise.
4909 (Qchinese_cns11643_3): Likewise.
4910 (Qchinese_cns11643_4): Likewise.
4911 (Qchinese_cns11643_5): Likewise.
4912 (Qchinese_cns11643_6): Likewise.
4913 (Qchinese_cns11643_7): Likewise.
4914 (syms_of_mule_charset): Move definitions for `chinese-cns11643-3',
4915 `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
4916 and `chinese-cns11643-7' to lisp/mule/chinese.el.
4917 (complex_vars_of_mule_charset): Likewise.
4919 1999-09-18 MORIOKA Tomohiko <tomo@etl.go.jp>
4921 * mule-charset.c (charset_get_byte1): Fix bug about 94- and
4923 (Fmake_reverse_direction_charset): Inherit CHARSET_DECODING_TABLE,
4924 CHARSET_UCS_MIN, CHARSET_UCS_MAX and CHARSET_CODE_OFFSET.
4926 1999-09-17 MORIOKA Tomohiko <tomo@etl.go.jp>
4928 * char-ucs.h (MIN_CHAR_HALFWIDTH_KATAKANA): Changed to 0xFF61 from
4930 (MAKE_CHAR): Change offset for katakana-jisx0201 to 33 from 0x20.
4931 (breakup_char_1): Likewise.
4933 * text-coding.c (char_encode_iso2022): Keep designated charsets if
4934 one of them includes the specified character.
4936 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
4938 * mule-charset.c: Update `utf-2000-version' to 0.8 (Kami).
4940 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
4942 * char-ucs.h (MAKE_CHAR): Fix problem in 2-dimension charset.
4944 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
4946 * mule-charset.c (latin_iso8859_2_to_ucs NULL): Add pseudo
4947 definition for non-UTF-2000 Mule.
4948 (latin_iso8859_3_to_ucs): Likewise.
4949 (latin_iso8859_4_to_ucs): Likewise.
4950 (latin_iso8859_9_to_ucs): Likewise.
4951 (latin_jisx0201_to_ucs): Likewise.
4952 (MIN_CHAR_THAI): Likewise.
4953 (MAX_CHAR_THAI): Likewise.
4954 (MIN_CHAR_GREEK): Likewise.
4955 (MAX_CHAR_GREEK): Likewise.
4956 (MIN_CHAR_HEBREW): Likewise.
4957 (MAX_CHAR_HEBREW): Likewise.
4958 (MIN_CHAR_HALFWIDTH_KATAKANA): Likewise.
4959 (MAX_CHAR_HALFWIDTH_KATAKANA): Likewise.
4960 (MIN_CHAR_CYRILLIC): Likewise.
4961 (MAX_CHAR_CYRILLIC): Likewise.
4963 1999-09-14 MORIOKA Tomohiko <tomo@etl.go.jp>
4965 * char-ucs.h (breakup_char_1): Use
4966 `Vdefault_coded_charset_priority_list' for hebrew-iso8859-8,
4967 thai-tis620 and katakana-jisx0201 area.
4969 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
4971 * char-ucs.h (breakup_char_1): Use
4972 `Vdefault_coded_charset_priority_list' for cyrillic-iso8859-5
4975 * text-coding.c (reset_encoding_stream): Fixed.
4976 (char_encode_ucs4): Delete `& 255'.
4978 * char-ucs.h (breakup_char_1): Use
4979 `Vdefault_coded_charset_priority_list' for greek-iso8859-7 area.
4981 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
4983 * file-coding.c (Fmake_coding_system): Don't set up
4984 `codesys->fixed.size'.
4985 (encode_coding_no_conversion): Don't refer
4986 `str->codesys->fixed.size'.
4988 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
4990 * mule-charset.c, char-ucs.h (latin_a_char_to_charset): Deleted.
4991 (latin_a_char_to_byte1): Deleted.
4992 (latin_a_char_to_byte2): Deleted.
4994 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
4996 * mule-charset.c (make_charset): Add new argument `ucs_min',
4997 `ucs_max' and `code_offset'.
4998 (charset_get_byte1): New implementation [delete specific charset
4999 depended implementations].
5000 (Fmake_charset): Modify for `make_charset'.
5001 (Fmake_reverse_direction_charset): Likewise.
5002 (complex_vars_of_mule_charset): Likewise.
5004 * char-ucs.h (struct Lisp_Charset): Add `ucs_min', `ucs_max' and
5006 (CHARSET_UCS_MIN): New macro.
5007 (CHARSET_UCS_MAX): New macro.
5008 (CHARSET_CODE_OFFSET): New macro.
5009 (MAKE_CHAR): Delete charset depended definitions [except
5012 1999-09-13 MORIOKA Tomohiko <tomo@etl.go.jp>
5014 * char-ucs.h (breakup_char_1): Use
5015 `Vdefault_coded_charset_priority_list' for C0-Controls,
5016 Basic-Latin, C1-Controls and Latin-1-Supplement area.
5018 1999-09-13 MORIOKA Tomohiko <tomo@urania.m17n.org>
5020 * char-ucs.h (charset_get_byte1): New function.
5021 (XCHARSET_GET_BYTE1): Deleted.
5022 (charset_get_byte2): New function.
5023 (XCHARSET_GET_BYTE2): Deleted.
5024 (Vdefault_coded_charset_priority_list): New external variable.
5025 (breakup_char_1): Use `charset_get_byte1', `charset_get_byte2' and
5026 `Vdefault_preferred_coded_charset_list'.
5028 * mule-charset.c (charset_get_byte1): New function.
5029 (charset_get_byte2): New function.
5030 (Vdefault_coded_charset_priority_list): New variable.
5031 (vars_of_mule_charset): Add new variable
5032 `default-coded-charset-priority-list'.
5034 1999-09-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
5036 * char-ucs.h (XCHARSET_GET_BYTE1): New inline function.
5037 (XCHARSET_GET_BYTE2): New inline function.
5038 (breakup_char_1): Use `XCHARSET_GET_BYTE1' and
5039 `XCHARSET_GET_BYTE2'.
5041 1999-09-12 MORIOKA Tomohiko <tomo@urania.m17n.org>
5043 * mule-charset.c (make_charset): Initialize
5044 `CHARSET_TO_BYTE1_TABLE(cs)' and `CHARSET_TO_BYTE2_TABLE(cs)' by
5045 NULL if table is not defined.
5047 1999-09-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
5049 * text-coding.c (char_encode_shift_jis): Use
5050 `XCHARSET_TO_BYTE1_TABLE' for `Vcharset_latin_jisx0201' instead of
5051 `ucs_to_latin_jisx0201'.
5053 * mule-charset.c (ucs_to_latin_jisx0201): Deleted.
5054 (ucs_to_latin_iso8859_2): Deleted.
5055 (ucs_to_latin_iso8859_3): Deleted.
5056 (ucs_to_latin_iso8859_4): Deleted.
5057 (ucs_to_latin_iso8859_9): Deleted.
5058 (ucs_to_latin_viscii_lower): Deleted.
5059 (ucs_to_latin_viscii_upper): Deleted.
5060 (ucs_to_latin_tcvn5712): Deleted.
5061 (make_charset): Add new argument `decoding_table'; set up
5062 `CHARSET_DECODING_TABLE(cs)' in UTF-2000; set up
5063 `CHARSET_TO_BYTE1_TABLE(cs)' for 94-set and 96-set if
5064 `decoding_table' is defined in UTF-2000.
5065 (Fmake_charset): Modify for `make_charset'.
5066 (Fmake_reverse_direction_charset): Likewise.
5067 (complex_vars_of_mule_charset): Likewise; delete `GENERATE_94_SET'
5068 and `GENERATE_96_SET'.
5070 * char-ucs.h (latin_jisx0201_to_ucs): Deleted.
5071 (ucs_to_latin_jisx0201): Deleted.
5072 (latin_iso8859_2_to_ucs): Deleted.
5073 (ucs_to_latin_iso8859_2): Deleted.
5074 (latin_iso8859_3_to_ucs): Deleted.
5075 (ucs_to_latin_iso8859_3): Deleted.
5076 (latin_iso8859_4_to_ucs): Deleted.
5077 (ucs_to_latin_iso8859_4): Deleted.
5078 (latin_iso8859_9_to_ucs): Deleted.
5079 (ucs_to_latin_iso8859_9): Deleted.
5080 (latin_viscii_lower_to_ucs): Deleted.
5081 (ucs_to_latin_viscii_lower): Deleted.
5082 (latin_viscii_upper_to_ucs): Deleted.
5083 (ucs_to_latin_viscii_upper): Deleted.
5084 (struct Lisp_Charset): Renamed `encoding_table' to
5085 `to_byte1_table'; add `to_byte2_table'.
5086 (CHARSET_DECODING_TABLE): New macro.
5087 (CHARSET_TO_BYTE1_TABLE): New macro.
5088 (CHARSET_TO_BYTE2_TABLE): New macro.
5089 (XCHARSET_DECODING_TABLE): New macro.
5090 (XCHARSET_TO_BYTE1_TABLE): New macro.
5091 (XCHARSET_TO_BYTE2_TABLE): New macro.
5092 (MAKE_CHAR): Use `XCHARSET_DECODING_TABLE'; don't use `*_to_ucs'
5094 (breakup_char_1): Use `XCHARSET_TO_BYTE1_TABLE' if it is defined;
5095 don't use `ucs_to_*' tables.
5097 1999-09-11 MORIOKA Tomohiko <tomo@urania.m17n.org>
5099 * text-coding.c (Fmake_coding_system): Don't set up
5100 `codesys->fixed.size'.
5101 (encode_coding_no_conversion): Use `if' instead of `switch'.
5103 * file-coding.h (struct Lisp_Coding_System): Delete `fixed.size'.
5105 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
5107 * mule-charset.c (make_charset): Delete argument `rep_bytes'.
5108 (Fmake_charset): Modify for `make_charset'.
5109 (Fmake_reverse_direction_charset): Likewise.
5110 (complex_vars_of_mule_charset): Likewise.
5112 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
5114 * text-coding.c (char_encode_shift_jis): Use table
5115 `ucs_to_latin_jisx0201' and BREAKUP_CHAR.
5117 1999-09-11 MORIOKA Tomohiko <tomo@etl.go.jp>
5119 * text-coding.c (text_encode_generic): Use `if' instead of
5121 (decode_coding_sjis): Use `MAKE_CHAR' and `DECODE_ADD_UCS_CHAR' to
5124 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
5126 * text-coding.c (encode_coding_sjis): Deleted.
5127 (char_encode_shift_jis): New function.
5128 (char_finish_shift_jis): New function.
5129 (reset_encoding_stream): Set up `encode_char' and `finish' for
5130 `CODESYS_UCS4' and `CODESYS_SHIFT_JIS'.
5131 (mule_encode): Use generic encoder for `CODESYS_SHIFT_JIS'.
5132 (char_encode_utf8): Treat `eol_type'.
5134 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
5136 * file-coding.c (decode_coding_iso2022): Use
5137 `DECODE_ADD_UCS_CHAR'; don't use `XCHARSET_REP_BYTES'.
5139 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
5141 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
5144 1999-09-10 MORIOKA Tomohiko <tomo@etl.go.jp>
5146 * char-lb.h (CHAR_COLUMNS): New macro.
5148 1999-09-09 MORIOKA Tomohiko <tomo@etl.go.jp>
5150 * text-coding.c (char_encode_ucs4): New function.
5151 (char_finish_ucs4): New function.
5152 (encode_coding_ucs4): Deleted.
5153 (mule_encode): Use generic encoder for `CODESYS_UCS4'.
5154 (text_encode_generic): Delete local variable `charset' and `half'.
5155 (ucs_to_mule_table): Deleted.
5156 (mule_to_ucs_table): Deleted.
5157 (Fset_ucs_char): Deleted.
5158 (ucs_to_char): Deleted.
5159 (Fucs_char): Deleted.
5160 (Fset_char_ucs): Deleted.
5161 (Fchar_ucs): Deleted.
5162 (decode_ucs4): Deleted.
5163 (mule_char_to_ucs4): Deleted.
5164 (encode_ucs4): Deleted.
5165 (decode_coding_ucs4): Use `DECODE_ADD_UCS_CHAR'.
5166 (decode_coding_utf8): Likewise.
5167 (decode_coding_iso2022): Likewise; don't use `XCHARSET_REP_BYTES'.
5168 (char_encode_iso2022): Fixed.
5169 (syms_of_file_coding): Delete `Fset_ucs_char', `Fucs_char',
5170 `Fset_char_ucs' and `Fchar_ucs'.
5171 (complex_vars_of_file_coding): Don't initialize
5172 `ucs_to_mule_table'.
5174 * objects-tty.c (tty_initialize_font_instance): Don't use
5177 * mule-charset.c (make_charset): Don't set up CHARSET_REP_BYTES in
5180 * redisplay-tty.c (tty_output_display_block): Use `CHAR_COLUMNS'
5181 instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
5183 * insdel.c (bufbyte_string_displayed_columns): Use `CHAR_COLUMNS'
5184 instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
5185 (emchar_string_displayed_columns): Likewise.
5187 * indent.c (column_at_point): Use `CHAR_COLUMNS' instead of
5188 `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
5189 (string_column_at_point): Likewise.
5190 (Fmove_to_column): Likewise.
5192 * char-ucs.h (struct Lisp_Charset): Delete `rep_bytes'; add
5193 `encoding_table' and `decoding_table'.
5194 (CHARSET_REP_BYTES): Deleted.
5195 (XCHARSET_REP_BYTES): Deleted.
5196 (XCHARSET_COLUMNS): Deleted.
5197 (CHAR_COLUMNS): New macro.
5198 (lookup_composite_char): Deleted unconditionally.
5199 (composite_char_string): Likewise.
5201 1999-09-09 MORIOKA Tomohiko <tomo@etl.go.jp>
5203 * char-ucs.h (Emchar_to_byte_table): New type.
5204 (get_byte_from_character_table): New function interface.
5205 (Vcharset_latin_jisx0201): New variable.
5206 (latin_jisx0201_to_ucs): New variable.
5207 (ucs_to_latin_jisx0201): New variable.
5208 (Vcharset_latin_iso8859_2): New variable.
5209 (latin_iso8859_2_to_ucs): New variable.
5210 (ucs_to_latin_iso8859_2): New variable.
5211 (Vcharset_latin_iso8859_3): New variable.
5212 (latin_iso8859_3_to_ucs): New variable.
5213 (ucs_to_latin_iso8859_3): New variable.
5214 (Vcharset_latin_iso8859_4): New variable.
5215 (latin_iso8859_4_to_ucs): New variable.
5216 (ucs_to_latin_iso8859_4): New variable.
5217 (Vcharset_latin_iso8859_9): New variable.
5218 (latin_iso8859_9_to_ucs): New variable.
5219 (ucs_to_latin_iso8859_9): New variable.
5220 (Vcharset_latin_viscii_lower): New variable.
5221 (latin_viscii_lower_to_ucs): New variable.
5222 (ucs_to_latin_viscii_lower): New variable.
5223 (Vcharset_latin_viscii_upper): New variable.
5224 (latin_viscii_upper_to_ucs): New variable.
5225 (ucs_to_latin_viscii_upper): New variable.
5226 (CHARSET_ID_OFFSET_94): Changed from 0x60 to 0x55.
5227 (LEADING_BYTE_LATIN_VISCII_LOWER): New macro.
5228 (LEADING_BYTE_LATIN_VISCII_UPPER): New macro.
5229 (MAKE_CHAR): Map `latin-iso8859-2', `latin-iso8859-3',
5230 `latin-iso8859-4', `latin-iso8859-9', `latin-jisx0201',
5231 `vietnamese-viscii-lower' and `vietnamese-viscii-upper' to BMP.
5232 (breakup_char_1): Use `ucs_to_latin_iso8859_2',
5233 `ucs_to_latin_iso8859_3', `ucs_to_latin_iso8859_4',
5234 `ucs_to_latin_iso8859_9', `ucs_to_latin_viscii_lower',
5235 `ucs_to_latin_viscii_upper' and `ucs_to_latin_jisx0201' tables.
5237 * mule-charset.c (Vcharset_latin_viscii_lower): New variable.
5238 (Vcharset_latin_viscii_upper): New variable.
5239 (make_byte_from_character_table): New function.
5240 (put_byte_from_character_table): New function.
5241 (get_byte_from_character_table): New function.
5242 (CHAR96): New macro.
5243 (ucs_to_latin_jisx0201): New variable.
5244 (latin_jisx0201_to_ucs): New variable.
5245 (ucs_to_latin_iso8859_2): New variable.
5246 (latin_iso8859_2_to_ucs): New variable.
5247 (ucs_to_latin_iso8859_3): New variable.
5248 (latin_iso8859_3_to_ucs): New variable.
5249 (ucs_to_latin_iso8859_4): New variable.
5250 (latin_iso8859_4_to_ucs): New variable.
5251 (ucs_to_latin_iso8859_9): New variable.
5252 (latin_iso8859_9_to_ucs): New variable.
5253 (ucs_to_latin_viscii_lower): New variable.
5254 (latin_viscii_lower_to_ucs): New variable.
5255 (ucs_to_latin_viscii_upper): New variable.
5256 (latin_viscii_upper_to_ucs): New variable.
5257 (ucs_to_latin_tcvn5712): New variable.
5258 (latin_tcvn5712_to_ucs): New variable.
5259 (Qlatin_viscii_lower): New variable.
5260 (Qlatin_viscii_upper): New variable.
5261 (syms_of_mule_charset): Set up new symbol
5262 `vietnamese-viscii-lower' and `vietnamese-viscii-upper'.
5263 (complex_vars_of_mule_charset): Set up new charset
5264 `vietnamese-viscii-lower' and `vietnamese-viscii-upper'; new macro
5265 `GENERATE_94_SET' and `GENERATE_96_SET'; use them to generate
5266 `ucs_to_<CHARSET>' tables.
5268 1999-09-08 MORIOKA Tomohiko <tomo@etl.go.jp>
5270 * text-coding.c: New file.
5272 1999-09-07 MORIOKA Tomohiko <tomo@etl.go.jp>
5274 * mule-charset.c (Fmake_char): Fix problem of 256-set.
5276 * char-ucs.h (Vcharset_ucs_bmp): New variable.
5277 (MAKE_CHAR): Modify for `ucs-bmp'.
5278 (breakup_char_1): Return `ucs-bmp' and code point of BMP for
5279 non-MULE characters of BMP.
5281 1999-09-06 MORIOKA Tomohiko <tomo@etl.go.jp>
5283 * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
5286 1999-09-05 MORIOKA Tomohiko <tomo@urania.m17n.org>
5289 - Include multibyte.h instead of character.h for `BYTE_ASCII_P'.
5290 - Include character.h for `CHAR_ASCII_P'.
5292 * mb-multibyte.h (CHAR_MULTIBYTE_P): Moved from mule-charset.h.
5294 * mule-charset.h (CHAR_MULTIBYTE_P): Moved to mb-multibyte.h.
5295 (CHAR_ASCII_P): Don't use `CHAR_MULTIBYTE_P'.
5297 * mb-multibyte.h (BYTE_ASCII_P): Moved from char-ucs.h.
5298 (BYTE_C0_P): Likewise.
5299 (BYTE_C1_P): Likewise.
5300 (Lstream_get_emchar_1): Likewise.
5301 (Lstream_fput_emchar): Likewise.
5302 (Lstream_funget_emchar): Likewise.
5303 (copy_internal_to_external): Likewise.
5304 (copy_external_to_internal): Likewise.
5306 * char-ucs.h (BYTE_ASCII_P): Moved to mb-multibyte.h.
5307 (BYTE_C0_P): Likewise.
5308 (BYTE_C1_P): Likewise.
5309 (Lstream_get_emchar_1): Likewise.
5310 (Lstream_fput_emchar): Likewise.
5311 (Lstream_funget_emchar): Likewise.
5312 (copy_internal_to_external): Likewise.
5313 (copy_external_to_internal): Likewise.
5315 * mb-1byte.h (BYTE_ASCII_P): Moved from buffer.h.
5316 (REP_BYTES_BY_FIRST_BYTE): Likewise.
5318 * buffer.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-1byte.h.
5319 (BYTE_ASCII_P): Moved to mb-1byte.h.
5321 1999-09-04 MORIOKA Tomohiko <tomo@urania.m17n.org>
5323 * mb-utf-8.h, mb-lb.h: Include mb-multibyte.h.
5325 * multibyte.h: Include mb-1byte.h in unibyte-XEmacs.
5326 (MAX_EMCHAR_LEN): Moved to mb-1byte.h.
5327 (VALID_CHARPTR_P): Moved to mb-*byte.h.
5328 (VALIDATE_CHARPTR_BACKWARD): Likewise.
5329 (VALIDATE_CHARPTR_FORWARD): Likewise.
5330 (simple_charptr_emchar): Moved to mb-multibyte.h.
5331 (simple_set_charptr_emchar): Likewise.
5332 (simple_charptr_copy_char): Likewise.
5333 (non_ascii_charptr_emchar): Likewise.
5334 (non_ascii_set_charptr_emchar): Likewise.
5335 (non_ascii_charptr_copy_char): Likewise.
5336 (charptr_emchar): Moved to mb-*byte.h.
5337 (set_charptr_emchar): Likewise.
5338 (charptr_copy_char): Likewise.
5340 * mb-1byte.h, mb-multibyte.h: New files.
5342 1999-09-03 MORIOKA Tomohiko <tomo@urania.m17n.org>
5344 * mb-utf-8.h (MULTIBYTE): New macro.
5345 (MAX_EMCHAR_LEN): Moved from buffer.h.
5346 (REP_BYTES_BY_FIRST_BYTE): Moved from char-ucs.h.
5348 * char-ucs.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-utf-8.h.
5350 * mb-lb.h, multibyte.h: New files.
5352 * char-1byte.h (Charset_ID): Moved from buffer.h.
5353 (MIN_LEADING_BYTE): Likewise.
5354 (LEADING_BYTE_ASCII): Likewise.
5355 (NUM_LEADING_BYTES): Likewise.
5356 (CHARSETP): Likewise.
5357 (CHARSET_BY_LEADING_BYTE): Likewise.
5358 (XCHARSET_LEADING_BYTE): Likewise.
5359 (XCHARSET_GRAPHIC): Likewise.
5360 (XCHARSET_COLUMNS): Likewise.
5361 (XCHARSET_DIMENSION): Likewise.
5362 (CHAR_CHARSET): Likewise.
5363 (CHAR_LEADING_BYTE): Likewise.
5364 (BREAKUP_CHAR): Likewise.
5365 (Vcharset_ascii): Likewise.
5367 * buffer.h: Include multibyte.h unconditionally.
5368 (VALID_CHARPTR_P): Moved to multibyte.h.
5369 (ASSERT_VALID_CHARPTR): Likewise.
5370 (REAL_INC_CHARPTR): Likewise.
5371 (REAL_INC_CHARBYTIND): Likewise.
5372 (REAL_DEC_CHARPTR): Likewise.
5373 (INC_CHARPTR): Likewise.
5374 (INC_CHARBYTIND): Likewise.
5375 (DEC_CHARPTR): Likewise.
5376 (VALIDATE_CHARPTR_BACKWARD): Likewise.
5377 (VALIDATE_CHARPTR_FORWARD): Likewise.
5378 (charptr_n_addr): Likewise.
5379 (MAX_EMCHAR_LEN): Moved to mb-*.h.
5380 (simple_charptr_emchar): Moved to multibyte.h.
5381 (simple_set_charptr_emchar): Likewise.
5382 (simple_charptr_copy_char): Likewise.
5383 (non_ascii_charptr_emchar): Likewise.
5384 (non_ascii_set_charptr_emchar): Likewise.
5385 (non_ascii_charptr_copy_char): Likewise.
5386 (charptr_emchar): Likewise.
5387 (set_charptr_emchar): Likewise.
5388 (charptr_copy_char): Likewise.
5389 (charptr_emchar_n): Likewise.
5390 (Charset_ID): Moved to char-1byte.h.
5391 (Vcharset_ascii): Likewise.
5392 (CHAR_CHARSET): Likewise.
5393 (CHAR_LEADING_BYTE): Likewise.
5394 (LEADING_BYTE_ASCII): Likewise.
5395 (NUM_LEADING_BYTES): Likewise.
5396 (MIN_LEADING_BYTE): Likewise.
5397 (CHARSETP): Likewise.
5398 (CHARSET_BY_LEADING_BYTE): Likewise.
5399 (XCHARSET_LEADING_BYTE): Likewise.
5400 (XCHARSET_GRAPHIC): Likewise.
5401 (XCHARSET_COLUMNS): Likewise.
5402 (XCHARSET_DIMENSION): Likewise.
5403 (BREAKUP_CHAR): Likewise.
5405 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
5407 * character.h: Add document about interface for characters.
5409 * char-ucs.h (CHAR_ASCII_P): Modify name of argument.
5410 (MAKE_CHAR): Delete comment about
5411 `FIELD2_TO_OFFICIAL_LEADING_BYTE' and
5412 `FIELD2_TO_PRIVATE_LEADING_BYTE'.
5413 (BREAKUP_CHAR): Modify name of arguments.
5414 (CHAR_CHARSET): Modify name of argument.
5416 * buffer.h: Delete document about Emchar accessors.
5418 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
5420 * character.h (CHAR_INTP): Moved from buffer.h
5421 (CHAR_OR_CHAR_INTP): Likewise.
5422 (XCHAR_OR_CHAR_INT): Likewise.
5423 (CHECK_CHAR_COERCE_INT): Likewise.
5425 * buffer.h (CHAR_INTP): Moved to character.h
5426 (CHAR_OR_CHAR_INTP): Likewise.
5427 (XCHAR_OR_CHAR_INT): Likewise.
5428 (CHECK_CHAR_COERCE_INT): Likewise.
5430 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
5433 - Move definitions about UCS-2000 (UCS-4) to char-ucs.h.
5434 - Include char-1byte.h, char-lb.h or char-ucs.h.
5436 * mb-utf-8.h (CHAR_ASCII_P): Moved to char-ucs.h.
5438 * buffer.h: Include character unconditionally.
5439 (valid_char_p): Moved to char-*.h.
5440 (non_ascii_valid_char_p): Moved to char-lb.h.
5442 * char-1byte.h, char-lb.h, char-ucs.h: New files.
5444 1999-09-02 MORIOKA Tomohiko <tomo@urania.m17n.org>
5446 * mule-ccl.c (ccl_driver): Don't define `CCL_WriteMultibyteChar2'
5447 in UTF-2000 because it is not ported yet and not to use
5448 `FIELD2_TO_OFFICIAL_LEADING_BYTE', `MIN_LEADING_BYTE_OFFICIAL_2',
5449 `FIELD1_TO_OFFICIAL_LEADING_BYTE' and
5450 `FIELD1_TO_PRIVATE_LEADING_BYTE'.
5452 * mb-utf-8.h (CHAR_MULTIBYTE_P): Moved from character.h.
5453 (CHAR_ASCII_P): Moved from character.h.
5455 * character.h (CHAR_MULTIBYTE_P): Moved to mb-utf-8.h.
5456 (CHAR_ASCII_P): Likewise.
5457 (CHAR_FIELD1_MASK): Deleted.
5458 (CHAR_FIELD2_MASK): Deleted.
5459 (CHAR_FIELD3_MASK): Deleted.
5460 (MAX_CHAR_BASIC_LATIN): New macro.
5461 (CHAR_FIELD1): Deleted.
5462 (CHAR_FIELD2_INTERNAL): Deleted.
5463 (CHAR_FIELD3_INTERNAL): Deleted.
5464 (FIELD1_TO_PRIVATE_LEADING_BYTE): Deleted.
5465 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Deleted.
5466 (FIELD2_TO_PRIVATE_LEADING_BYTE): Deleted.
5467 (FIELD2_TO_OFFICIAL_LEADING_BYTE): Deleted.
5468 (MIN_CHAR_FIELD1_OFFICIAL): Deleted.
5469 (MAX_CHAR_FIELD1_OFFICIAL): Deleted.
5470 (MIN_CHAR_FIELD2_PRIVATE): Deleted.
5471 (MAX_CHAR_FIELD2_PRIVATE): Deleted.
5472 (MIN_CHAR_FIELD1_PRIVATE): Deleted.
5473 (MAX_CHAR_FIELD1_PRIVATE): Deleted.
5474 (MULE_CHAR_PRIVATE_OFFSET): Deleted.
5475 (MIN_CHAR_PRIVATE_TYPE9N): Deleted.
5476 (MAX_CHAR_PRIVATE_TYPE9N): Deleted.
5477 (MIN_CHAR_PRIVATE_TYPE9NX9N): Deleted.
5478 (MIN_CHAR_OFFICIAL_TYPE9NX9N): Deleted.
5479 (MIN_CHAR_COMPOSITION): Deleted.
5480 (breakup_char_1): Use `MAX_CHAR_BASIC_LATIN' instead of
5481 `CHAR_ASCII_P'; use `0x7f' instead of `CHAR_FIELD3_INTERNAL'.
5483 1999-09-02 MORIOKA Tomohiko <tomo@m17n.org>
5485 * buffer.h: Include mb-utf-8.h in UTF-2000.
5487 * character.h (BUFBYTE_FIRST_BYTE_P): Moved to mb-utf-8.h.
5489 * mb-utf-8.h: New file.
5491 1999-09-02 MORIOKA Tomohiko <tomo@etl.go.jp>
5493 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use `Charset_ID'
5496 * mule-charset.h, buffer.h (Charset_ID): New type.
5498 1999-09-01 MORIOKA Tomohiko <tomo@etl.go.jp>
5500 * mule-canna.c (c2mu): Use `MAKE_CHAR',
5501 `Vcharset_japanese_jisx0212' and `Vcharset_japanese_jisx0208'
5502 instead of `MULE_CHAR_PRIVATE_OFFSET',
5503 `LEADING_BYTE_JAPANESE_JISX0212', `LEADING_BYTE_JAPANESE_JISX0208'
5504 and `FIELD1_TO_OFFICIAL_LEADING_BYTE'.
5505 (m2c): Use `BREAKUP_CHAR' and `XCHARSET_FINAL'.
5507 * character.h (Vcharset_japanese_jisx0212): New variable
5510 1999-09-01 MORIOKA Tomohiko <tomo@etl.go.jp>
5512 * mule-charset.c (Vcharset_ucs_bmp): New variable in UTF-2000.
5513 (charset_by_attributes): Delete array about direction.
5514 (latin_a_char_to_charset): New variable in UTF-2000.
5515 (latin_a_char_to_byte1): New variable in UTF-2000.
5516 (latin_a_char_to_byte2): New variable in UTF-2000.
5517 (Qucs_bmp): New variable.
5518 (next_allocated_1_byte_leading_byte): Use `Charset_ID' instead of
5520 (next_allocated_2_byte_leading_byte): Likewise.
5521 (non_ascii_set_charptr_emchar): Likewise.
5522 (make_charset): Likewise; add `CHARSET_TYPE_128X128' and
5523 `CHARSET_TYPE_256X256' in UTF-2000; modify for
5524 `charset_by_attributes'.
5525 (get_unallocated_leading_byte): Use `Charset_ID' instead of `int'.
5526 (char-charset): Use `CHAR_CHARSET' instead of `CHAR_LEADING_BYTE'
5527 and `CHARSET_BY_LEADING_BYTE'.
5528 (syms_of_mule_charset): Set up `ucs-bmp'; move setting of
5529 `utf-2000-version' to `vars_of_mule_charset'.
5530 (vars_of_mule_charset): Modify for `charset_by_attributes'; don't
5531 define `leading-code-private-11' in UTF-2000; move setting of
5532 `utf-2000-version' from `syms_of_mule_charset'.
5533 (complex_vars_of_mule_charset): Set up charset `ucs-bmp' in
5536 * character.h (Charset_ID): New type.
5537 (LEADING_BYTE_UCS_BMP): New macro.
5538 (LEADING_BYTE_CONTROL_1): Changed from 0x8F to 0x81.
5539 (CHARSET_ID_OFFSET_94): New macro.
5540 (MIN_CHARSET_ID_PRIVATE_94): New macro.
5541 (MAX_CHARSET_ID_PRIVATE_94): New macro.
5542 (LEADING_BYTE_ASCII): Changed to use CHARSET_ID_OFFSET_94 and
5544 (LEADING_BYTE_KATAKANA_JISX0201): Likewise.
5545 (LEADING_BYTE_LATIN_JISX0201): Likewise.
5546 (CHARSET_ID_OFFSET_96): New macro.
5547 (LEADING_BYTE_LATIN_ISO8859_1): Changed to use
5548 CHARSET_ID_OFFSET_96 and final-byte.
5549 (LEADING_BYTE_LATIN_ISO8859_2): Likewise.
5550 (LEADING_BYTE_LATIN_ISO8859_3): Likewise.
5551 (LEADING_BYTE_LATIN_ISO8859_4): Likewise.
5552 (LEADING_BYTE_GREEK_ISO8859_7): Likewise.
5553 (LEADING_BYTE_ARABIC_ISO8859_6): Likewise.
5554 (LEADING_BYTE_HEBREW_ISO8859_8): Likewise.
5555 (LEADING_BYTE_CYRILLIC_ISO8859_5): Likewise.
5556 (LEADING_BYTE_LATIN_ISO8859_9): Likewise.
5557 (LEADING_BYTE_THAI_TIS620): Likewise.
5558 (MIN_LEADING_BYTE_PRIVATE_1): Changed from 0x0D0 to 0xD0.
5559 (MAX_LEADING_BYTE_PRIVATE_1): Changed from 0x11f to 0xDF.
5560 (CHARSET_ID_OFFSET_94x94): New macro.
5561 (LEADING_BYTE_CHINESE_BIG5_1): Changed to use
5562 CHARSET_ID_OFFSET_94x94 and final-byte.
5563 (LEADING_BYTE_CHINESE_BIG5_2): Likewise.
5564 (MIN_LEADING_BYTE_PRIVATE_2): Likewise.
5565 (MAX_LEADING_BYTE_PRIVATE_2): Likewise.
5566 (LEADING_BYTE_JAPANESE_JISX0208_1978): Likewise.
5567 (LEADING_BYTE_CHINESE_GB2312): Likewise.
5568 (LEADING_BYTE_JAPANESE_JISX0208): Likewise.
5569 (LEADING_BYTE_KOREAN_KSC5601): Likewise.
5570 (LEADING_BYTE_JAPANESE_JISX0212): Likewise.
5571 (LEADING_BYTE_CHINESE_CCITT_GB): Likewise.
5572 (LEADING_BYTE_CHINESE_CNS11643_*): Likewise.
5573 (LEADING_BYTE_KOREAN_KPS9566): Likewise.
5574 (CHARSET_TYPE_128X128): New macro.
5575 (CHARSET_TYPE_256X256): New macro.
5576 (XCHARSET_PRIVATE_P): Delete unconditionally.
5577 (charset_by_attributes): Delete array about direction.
5578 (CHARSET_BY_LEADING_BYTE): Use `Charset_ID' instead of `int'.
5579 (CHARSET_BY_ATTRIBUTES): Modify for `charset_by_attributes'.
5580 (MIN_CHAR_94): New macro.
5581 (MAX_CHAR_94): New macro.
5582 (MIN_CHAR_96): New macro.
5583 (MAX_CHAR_96): New macro.
5584 (MIN_CHAR_94x94): New macro.
5585 (MAX_CHAR_94x94): New macro.
5586 (MIN_CHAR_96x96): New macro.
5587 (MAX_CHAR_96x96): New macro.
5588 (FIELD1_TO_PRIVATE_LEADING_BYTE): Use `CHARSET_ID_OFFSET_94x94'.
5589 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
5590 (FIELD2_TO_PRIVATE_LEADING_BYTE): Use `(MIN_LEADING_BYTE_PRIVATE_1
5592 (FIELD2_TO_OFFICIAL_LEADING_BYTE): Use `LEADING_BYTE_ASCII'.
5593 (MIN_CHAR_FIELD2_OFFICIAL): Deleted.
5594 (MAX_CHAR_FIELD2_OFFICIAL): Deleted.
5595 (MIN_CHAR_OFFICIAL_TYPE9N): Deleted.
5596 (MAX_CHAR_PRIVATE_TYPE9N): Changed.
5597 (MAKE_CHAR): Use `XCHARSET_FINAL' instead of
5598 `XCHARSET_LEADING_BYTE' to make code-point.
5599 (latin_a_char_to_charset): New variable.
5600 (latin_a_char_to_byte1): New variable.
5601 (latin_a_char_to_byte2): New variable.
5602 (breakup_char_1): Use `latin_a_char_to_{charset|byte1|byte2}' for
5603 Latin Extended-A; use `CHARSET_BY_ATTRIBUTES' instead of
5604 `CHARSET_BY_LEADING_BYTE' to get charset for ISO-2022 characters.
5606 * insdel.c (find_charsets_in_bufbyte_string): Use `Charset_ID'
5607 instead of `unsigned char'; use `MIN_LEADING_BYTE' instead of 128.
5608 (find_charsets_in_emchar_string): Likewise.
5609 (vars_of_insdel): Don't define local variable `i' in UTF-2000.
5611 * file-coding.c (Fdecode_big5_char): Use `Charset_ID' instead of
5613 (decode_coding_iso2022): Likewise.
5615 * toolbar-x.c (x_output_toolbar_button): Use `Charset_ID' instead
5618 * redisplay.c (redisplay_text_width_emchar_string): Use
5619 `Charset_ID' instead of `unsigned char'.
5620 (redisplay_frame_text_width_string): Likewise.
5622 * glyphs.c (glyph_height_internal): Use `Charset_ID' instead of
5625 * faces.h, faces.c (ensure_face_cachel_complete): Use `Charset_ID'
5626 instead of `unsigned char'.
5627 (face_cachel_charset_font_metric_info): Likewise.
5629 * chartab.c (print_char_table): Use `Charset_ID' instead of `int'.
5630 (get_non_ascii_char_table_value): Likewise.
5631 (get_char_table): Likewise.
5632 (put_char_table): Likewise.
5633 (map_over_other_charset): Likewise.
5634 (map_char_table): Likewise.
5636 * buffer.h (find_charsets_in_bufbyte_string): Use `Charset_ID'
5637 instead of `unsigned char'.
5639 1999-08-31 MORIOKA Tomohiko <tomo@etl.go.jp>
5641 * character.h (PRE_LEADING_BYTE_PRIVATE_1): Deleted.
5642 (PRE_LEADING_BYTE_PRIVATE_2): Deleted.
5644 * mule-charset.c (leading_code_private_11): Don't define in
5647 * mule-ccl.c (ccl_driver): Don't define `CCL_ReadMultibyteChar2'
5648 in UTF-2000 because it is not ported yet and not to use
5649 `PRE_LEADING_BYTE_PRIVATE_1' and `PRE_LEADING_BYTE_PRIVATE_2'.
5651 1999-08-30 MORIOKA Tomohiko <tomo@etl.go.jp>
5653 * character.h (LEADING_BYTE_COMPOSITE): Deleted.
5655 1999-08-29 MORIOKA Tomohiko <tomo@etl.go.jp>
5657 * regex.c (re_compile_fastmap): Don't use `LEADING_BYTE_PREFIX_P'
5660 * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use int instead
5661 of unsigned char to store leading-byte.
5663 * chartab.c (get_non_ascii_char_table_value): Don't use
5664 `BREAKUP_CHAR_1_UNSAFE' in UTF-2000.
5666 * file-coding.c (encode_coding_big5): Delete bogus implementation
5669 * character.h (LEADING_BYTE_*): Delete definition for
5671 (LEADING_BYTE_PRIVATE_P): Deleted unconditionally.
5672 (LEADING_BYTE_PREFIX_P): Deleted.
5673 (PRIVATE_LEADING_BYTE_PREFIX): Deleted.
5674 (BUFBYTE_FIRST_BYTE_P): Delete definition for non-UTF-2000.
5675 (BUFBYTE_LEADING_BYTE_P): Deleted.
5676 (CHARSET_PRIVATE_P): Deleted unconditionally.
5677 (rep_bytes_by_first_byte): Deleted unconditionally.
5678 (REP_BYTES_BY_FIRST_BYTE): Delete definition for non-UTF-2000.
5679 (FIELD1_TO_PRIVATE_LEADING_BYTE): Likewise.
5680 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
5681 (FIELD2_TO_PRIVATE_LEADING_BYTE): Likewise.
5682 (CHAR_FIELD2): Deleted.
5683 (CHAR_FIELD3): Deleted.
5684 (MAKE_CHAR): Delete definition for non-UTF-2000.
5685 (BREAKUP_CHAR_1_UNSAFE): Deleted.
5686 (breakup_char_1): New implementation.
5687 (CHAR_CHARSET): Use `BREAKUP_CHAR'.
5688 (CHAR_LEADING_BYTE): Use `CHAR_CHARSET'.
5690 1999-08-29 MORIOKA Tomohiko <tomo@etl.go.jp>
5692 * character.h (REP_BYTES_BY_FIRST_BYTE): Change order of
5695 1999-08-28 MORIOKA Tomohiko <tomo@etl.go.jp>
5697 * character.h (LEADING_BYTE_PRIVATE_P): Don't define in UTF2000.
5698 (CHARSET_PRIVATE_P): Likewise.
5699 (XCHARSET_PRIVATE_P): Likewise.
5700 (MAKE_CHAR): Don't use XCHARSET_PRIVATE_P in UTF2000.
5702 * file-coding.c (encode_coding_ucs4): Delete bogus implement in
5704 (decode_coding_iso2022): Don't use XCHARSET_PRIVATE_P in UTF2000.
5706 1999-08-28 MORIOKA Tomohiko <tomo@etl.go.jp>
5708 * character.h (LEADING_BYTE_*): Changed in UTF2000.
5709 (NUM_LEADING_BYTES): Changed from 128 to 256.
5710 (FIELD1_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
5711 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Change value to 0x80 in
5713 (FIELD2_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
5715 * mule-charset.c (Vcharset_chinese_cns11643_3): New variable in
5717 (Vcharset_chinese_cns11643_4): New variable in UTF2000.
5718 (Vcharset_chinese_cns11643_5): New variable in UTF2000.
5719 (Vcharset_chinese_cns11643_6): New variable in UTF2000.
5720 (Vcharset_chinese_cns11643_7): New variable in UTF2000.
5721 (Qchinese_cns11643_3): New variable in UTF2000.
5722 (Qchinese_cns11643_4): New variable in UTF2000.
5723 (Qchinese_cns11643_5): New variable in UTF2000.
5724 (Qchinese_cns11643_6): New variable in UTF2000.
5725 (Qchinese_cns11643_7): New variable in UTF2000.
5726 (syms_of_mule_charset): Define `chinese-cns11643-3',
5727 `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
5728 and `chinese-cns11643-7' in UTF2000.
5729 (vars_of_mule_charset): Initialize
5730 next_allocated_2_byte_leading_byte by LEADING_BYTE_CHINESE_BIG5_2
5732 (complex_vars_of_mule_charset): Setup charset
5733 `chinese-cns11643-3', `chinese-cns11643-4', `chinese-cns11643-5',
5734 `chinese-cns11643-6' and `chinese-cns11643-7' in UTF2000.
5736 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
5738 * mule-charset.c: Move setting for `leading-code-private-11' from
5739 `syms_of_mule_charset' to `vars_of_mule_charset'.
5741 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
5743 * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
5744 and `NUM_LEADING_BYTES' in assert.
5746 1999-08-27 MORIOKA Tomohiko <tomo@etl.go.jp>
5748 * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
5750 (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
5751 `NUM_LEADING_BYTES' instead of 128.
5753 1999-08-26 MORIOKA Tomohiko <tomo@etl.go.jp>
5755 * mule-charset.h (charset_by_leading_byte): Use
5756 `NUM_LEADING_BYTES' instead of 128.
5757 (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
5759 * mule-charset.c (charset_by_leading_byte): Use
5760 `NUM_LEADING_BYTES' instead of 128.
5761 (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
5763 * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
5766 1999-08-25 MORIOKA Tomohiko <tomo@etl.go.jp>
5768 * mule-charset.c (syms_of_mule_charset): Update to
5771 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
5773 * file-coding.c (encode_coding_sjis): New implementation for
5774 UTF2000. (decode_coding_sjis): Ditto.
5776 1999-06-17 MORIOKA Tomohiko <tomo@etl.go.jp>
5778 * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
5779 Don't define in UTF2000.
5781 * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
5784 * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
5785 mule-ccl.c, lstream.h, buffer.h: Include character.h in every
5788 1999-06-17 MORIOKA Tomohiko <tomo@etl.go.jp>
5790 * config.h.in (CHAR_IS_UCS4): New macro.
5792 * mule-charset.c (rep_bytes_by_first_byte): Modify for
5793 conventional MULE representation.
5794 (syms_of_mule_charset): Update to 0.3 (Imamiya).
5796 * mule-charset.h: Reverted to original.
5798 * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
5799 mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
5800 "mule-charset.h" if CHAR_IS_UCS4 is defined.
5802 * character.h: New file.
5804 * file-coding.c (Fmake_coding_system): Set 1 to
5805 `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
5807 (encode_coding_no_conversion): New implementation for UTF2000.
5809 * file-coding.h (struct Lisp_Coding_System): Add new member
5812 1999-06-16 MORIOKA Tomohiko <tomo@etl.go.jp>
5814 * file-coding.c (decode_coding_iso2022): Code-point arguments of
5815 `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
5816 (encode_coding_iso2022): New implementation for UTF2000.
5818 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
5820 * mule-canna.c (c2mu): New implementation for UTF2000.
5823 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
5825 * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
5827 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
5829 * file-coding.c (reset_encoding_stream): Set 0 to
5830 `str->iso2022.current_char_boundary' in UTF2000.
5831 (encode_utf8): Don't define in UTF2000.
5832 (encode_coding_utf8): New implementation for UTF-8 representation
5834 (complex_vars_of_file_coding): Define coding-system `utf-8'.
5836 1999-06-15 MORIOKA Tomohiko <tomo@etl.go.jp>
5838 * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
5840 * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
5842 (REP_BYTES_BY_FIRST_BYTE): Likewise.
5844 * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
5846 * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
5847 local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
5848 as UTF-8 in UTF2000.
5849 (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
5850 (non_ascii_valid_char_p): Don't define in UTF2000.
5851 (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
5852 (Lstream_get_emchar_1): Likewise.
5853 (utf-2000-version): New variable in UTF2000.
5855 * lread.c (read_escape): Add new reader `u'.
5857 * insdel.c (three_to_one_table): Don't define in UTF2000.
5858 (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
5859 `buf->text->mule_shifter' and `buf->text->mule_three_p' in
5861 (bytind_to_bufpos_func): Likewise.
5862 (buffer_mule_signal_inserted_region): Likewise.
5863 (vars_of_insdel): Don't initialize `three_to_one_table'.
5864 (init_buffer_text): Use `buf->text->mule_size' instead of
5865 `buf->text->mule_shifter' and `buf->text->mule_three_p' in
5868 * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
5869 UTF-8 representation in UTF2000.
5870 (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
5871 (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
5872 (decode_coding_iso2022): Don't define local variable `lb' in
5873 UTF2000; don't use LEADING_BYTE in UTF2000; use
5874 `DECODE_ADD_UCS_CHAR' in UTF2000.
5875 (convert_to_external_format): Decode as UTF-8 in UTF2000.
5877 * config.h.in (UTF2000): New macro.
5879 * buffer.h (struct buffer_text): Add new member `mule_size' and
5880 don't add `mule_shifter' and `mule_three_p' in UTF2000.
5881 (valid_char_p): Return always 1 in UTF2000.
5882 (MAX_EMCHAR_LEN): 6 in UTF2000.
5883 (three_to_one_table): Don't define in UTF2000.
5884 (real_bufpos_to_bytind): Modify for UTF-8 representation in
5886 (real_bytind_to_bufpos): Likewise.
5888 * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
5890 1999-06-10 MORIOKA Tomohiko <tomo@etl.go.jp>
5892 * mule-charset.c (rep_bytes_by_first_byte): Modified for character
5893 representation change.
5894 (Vutf_2000_version): New variable.
5895 (leading_code_private_11): New variable.
5896 (syms_of_mule_charset): Add new variables `utf-2000-version' and
5897 `leading-code-private-11'.
5899 * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
5900 (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
5901 (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
5902 (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
5903 (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
5904 (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
5905 (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
5906 (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
5907 (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
5908 (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
5909 (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
5910 (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
5911 (MIN_CHAR_GREEK): New macro.
5912 (MAX_CHAR_GREEK): New macro.
5913 (MIN_CHAR_CYRILLIC): New macro.
5914 (MAX_CHAR_CYRILLIC): New macro.
5915 (MIN_CHAR_HEBREW): New macro.
5916 (MAX_CHAR_HEBREW): New macro.
5917 (MIN_CHAR_THAI): New macro.
5918 (MAX_CHAR_THAI): New macro.
5919 (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
5920 (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
5921 (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
5922 (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
5923 (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
5924 (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
5925 (CHAR_FIELD2): New inline function.
5926 (CHAR_FIELD3): New inline function.
5927 (MULE_CHAR_PRIVATE_OFFSET): New macro.
5928 (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
5929 (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
5930 (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
5931 (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
5932 (MIN_CHAR_COMPOSITION): Likewise.
5933 (CHAR_LEADING_BYTE): Modified for character representation change.
5934 (MAKE_CHAR): Likewise.
5936 * lisp.h (Vcharset_latin_iso8859_1): New variable.
5937 (Vcharset_greek_iso8859_7): Likewise.
5938 (Vcharset_cyrillic_iso8859_5): Likewise.
5939 (Vcharset_hebrew_iso8859_8): Likewise.
5940 (Vcharset_thai_tis620): Likewise.
5941 (Vcharset_katakana_jisx0201): Likewise.
5943 2007-10-07 Vin Shelton <acs@xemacs.org>
5945 * XEmacs 21.4.21 is released
5947 2007-08-14 Marcus Crestani <crestani@xemacs.org>
5949 * s/sol2.h: Fix for GCC lossage not needed with SunOS 5.10.
5951 2007-02-17 Stephen J. Turnbull <stephen@xemacs.org>
5953 * glyphs-eimage.c (png_instantiate_unwind): Avoid recursion.
5954 (png_instantiate): Initialize setjmp_buffer early, and avoid
5955 recursive entry to error handler.
5957 2007-06-23 Stephen J. Turnbull <stephen@xemacs.org>
5959 * linuxplay.c (linux_play_data_or_file): More 64-bit tweaking, and
5962 2007-05-12 Aidan Kehoe <kehoea@parhasard.net>
5964 * event-Xt.c (x_reset_modifier_mapping):
5965 * event-gtk.c (gtk_reset_modifier_mapping):
5966 Zero out the device's modifier map once we've freed it, to prevent
5967 a double free on a re-entrant call.
5969 2007-05-17 Vin Shelton <acs@xemacs.org>
5971 * linuxplay.c (linux_play_data_or_file): Fix playing sound on
5972 64-bit linux. Patch from Hans de Graaff.
5974 2007-05-02 Vin Shelton <acs@xemacs.org>
5976 * dumper.c (pdump): Don't close pdump_fd (already closed by
5977 fclose() call. Patch from Steve Higham.
5978 * callproc.c (Fold_call_process_internal): Don't close fd1 if it's
5979 already closed. Patch inspired by Steve Higham.
5981 2007-05-01 Vin Shelton <acs@xemacs.org>
5983 * nt.c (mswindows_stat): Tie _S_IEXEC permission to read access.
5984 (mswindows_fstat): Ditto.
5985 * sysfile.h: Under Windows, define X_OK to be the same as R_OK.
5987 2007-02-08 Adrian Aichner <adrian@xemacs.org>
5989 * postgresql.c: Update Steve Baur's email address by his request.
5990 * postgresql.h: Ditto.
5992 2007-01-04 Vin Shelton <acs@xemacs.org>
5994 * fileio.c (check_writable): Check old-style readonly bit only for
5997 2006-12-25 Benson I. Margulies <benson@dchbk.us>
5999 * src/fileio.c (check_writable):
6000 Cope with the fact that the read-only attribute trumps Windows NTFS
6004 2006-12-09 Vin Shelton <acs@xemacs.org>
6006 * XEmacs 21.4.20 is released
6008 2006-12-08 Nelson Ferreira <njsf@sxemacs.org>
6010 * src/fns.c (XMALLOC_OR_ALLOCA,free_malloced_ptr,XMALLOC_UNBIND):
6011 relocated the definitions to be used sooner in file.
6012 (concat,plists_differ,mapcar1,Fmapconcat,Fmapcar): Use
6013 XMALLOC_OR_ALLOCA macro instead of alloca to prevent stack
6016 2006-11-29 Aidan Kehoe <kehoea@parhasard.net>
6018 * sound.c (init_native_sound):
6019 Only X11 and GTK devices can possibly not be on the console of the
6020 associated machine. Fixes a crash when init_native_sound is called
6021 on a msprinter device.
6023 2006-11-14 Stephen J. Turnbull <stephen@xemacs.org>
6025 * buffer.c (buffer-file-name): Document invariant.
6026 (buffer-file-truename): Sync wording to buffer-file-name.
6027 Thanks to Nelson Ferreira <nelson.ferreira@ieee.org> for report
6030 2006-11-19 Benson Margulies <benson@dchbk.us>
6032 * fileio.c: Add code to use full Win32 API to check for write
6033 access. Win32 has the general design policy that you aren't
6034 supposed to ask this question, since security checks change
6035 depending on asynchronous processes. Nonetheless, there is a way,
6036 by acting as if we are a server doing interpretive access
6039 2006-07-31 Aidan Kehoe <kehoea@parhasard.net>
6041 * bytecode.c: Use xnew_array instead of alloca.
6043 2006-07-04 Vin Shelton <acs@xemacs.org>
6045 * redisplay-msw.c: Fix tiny, but crucial typo.
6047 2006-06-22 Jerry James <james@xemacs.org>
6049 * EmacsShell-sub.c (ChangeManaged):
6050 * device-x.c (x_IO_error_handler): Do not dereference d if it is
6052 * dgif_lib.c (DGifCloseFile): Do not dereference GifFile before
6053 checking if it is NULL. Also fix a memory leak.
6054 * dialog-x.c (dbox_selection_callback): Ensure f is non-NULL, then
6055 dereference it, not the other way around.
6056 * dumper.c (pdump_register_object): Fix off-by-one array bounds
6058 * dumper.c (pdump_register_struct): Ditto.
6059 * editfns.c (Ftemp_directory): Don't let a copy from (long) path
6060 to (short) warnpath overflow warnpath.
6061 * extents.c (detach_all_extents): Call extent_list_delete_all with
6062 a non-NULL parameter only.
6063 * glyphs-widget.c (widget_query_geometry): Guard against possibly
6064 NULL width and height.
6065 * input-method-xlib.c (XIM_SetGeometry): Do not dereference f or
6066 xic before checking if they are NULL.
6067 * keymap.c (where_is_recursive_mapper): Don't throw away the newly
6069 * md5.c (Fmd5): Check whether Lstream_read encountered an error.
6070 * nas.c (Err): Fix a memory leak.
6071 * redisplay-gtk.c (gtk_output_display_block): Fix a Dynarr leak.
6072 Don't create the buffer if there is nothing to do.
6073 * redisplay-msw.c (mswindows_output_display_block): Ditto.
6074 * redisplay-output.c (redisplay_output_layout): Ditto.
6075 * redisplay-tty.c (tty_output_display_block): Ditto.
6076 * redisplay-x.c (x_output_display_block): Ditto.
6077 * scrollbar-gtk.c (gtk_free_scrollbar_instance): Do not
6078 dereference instance->scrollbar_data if it is NULL.
6079 * scrollbar-x.c (x_free_scrollbar_instance): Ditto.
6080 * scrollbar-msw.c (mswindows_free_scrollbar_instance): Ditto, but
6081 for sb->scrollbar_data.
6082 * sound.c (init_native_sound): Avoid a buffer overflow by
6083 allocating a buffer with the appropriate size.
6085 2006-05-08 Stephen J. Turnbull <stephen@xemacs.org>
6087 * EmacsShell-sub.c (RootGeometryManager):
6088 Change garbage to useful messages under DEBUG_GEOMETRY_MANAGEMENT.
6089 Based on a suggestion by Francois L'Archeveque.
6091 2006-03-21 Malcolm Purvis <malcolmp@xemacs.org>
6093 * regex.c: Bump INIT_FAILURE_ALLOC and re_max_failures to the
6094 current values found in GNU Emacs.
6096 2006-03-17 Vin Shelton <acs@xemacs.org>
6098 * dialog-msw.c (handle_directory_dialog_box): Don't declare
6099 Q_title here. LOCAL_FILE_FORMAT_TO_TSTR requires an lvalue.
6101 * glyphs-msw.c (read_bitmap_data): change 'initialized' to
6102 'hex_initialized' because it conflicts with 'initialized' in
6105 2006-01-28 Vin Shelton <acs@xemacs.org>
6107 * XEmacs 21.4.19 is released
6109 2006-01-20 Rick Rankin <rrankin1424-xemacs@yahoo.com>
6111 * sysdir.h: Workaround missing d_ino field from 'struct dirent'.
6113 2005-12-24 Aidan Kehoe <kehoea@parhasard.net>
6115 * objects-gtk.c (MAX_FONT_COUNT): Increase MAX_FONT_COUNT from
6118 2005-12-05 Dr. Volker Zell <Dr.Volker.Zell@oracle.com>
6120 * database.c: Suppress compiler warning under Cygwin.
6121 * database.c: Removed __FreeBSD__ check, should be handled by
6122 HAVE_U_xxx_T defines.
6124 2005-12-18 Malcolm Purvis <malcolmp@xemacs.org>
6126 * console.c (stuff_buffered_input): Compile body only if
6129 2005-05-10 Aidan Kehoe <kehoea@parhasard.net>
6131 * callproc.c: #include sysdir.h, so that any appropriate Mule
6132 magic happens with the chdir() call when calling a subprocess.
6134 2005-12-06 Aidan Kehoe <kehoea@parhasard.net>
6136 * mule-ccl.c (POSSIBLE_LEADING_BYTE_P): Add.
6137 * mule-ccl.c: Check that a character set exists before using it
6138 to create a character.
6140 2005-12-06 Vin Shelton <acs@xemacs.org>
6142 * objects-x.c (MAX_FONT_COUNT): Increase MAX_FONT_COUNT from 5000
6145 2005-12-03 Vin Shelton <acs@xemacs.org>
6147 * XEmacs 21.4.18 is released
6149 2005-11-27 Kean Johnston <kean@armory.com>
6151 * redisplay-tty.c (set_tty_modes):
6152 (reset_tty_modes): disable auto-margins if the terminal supports
6154 (init_tty_for_redisplay): fix cursor shape.
6156 2005-04-05 Aidan Kehoe <kehoea@parhasard.net>
6158 * mule-ccl.c (ccl_driver): Calculate the charset and position code
6159 for control-1 characters properly, both when reading multibyte
6160 characters and writing them.
6162 2005-03-12 Aidan Kehoe <kehoea@parhasard.net>
6164 * config.h.in: Make HAVE_XTREGISTERDRAWABLE available.
6165 * select-x.c (x_reply_selection_request): Use it; fix the bug we
6166 were seeing with incremental selection transfer failing.
6168 2005-11-26 Vin Shelton <acs@xemacs.org>
6170 * callproc.c (Fold_call_process_internal): Create the buffer if it
6171 does not already exist. The original patch came from Ben Wing in
6172 http://list-archive.xemacs.org/xemacs-patches/200205/msg00117.html
6174 2002-05-13 Adrian Aichner <adrian@xemacs.org>
6176 * callproc.c: Process-related docstring improvements spurred by
6179 2005-11-25 Vin Shelton <acs@xemacs.org>
6181 * depend: Regenerated.
6183 2005-07-11 Malcolm Purvis <malcolmp@xemacs.org>
6185 * glyphs-gtk.c: Rename a local static variable because gcc 4.0
6186 says it clashes with a global with the same name.
6188 2005-07-11 Atanu Ghosh <atanu@icsi.berkeley.edu>
6190 * sysdll.c (dll_open): Under MacOS X return NULL under the
6191 filename is NULL. Fixes problems finding local symbols under 10.4
6194 2005-11-15 Dr. Volker Zell <Dr.Volker.Zell@oracle.com>
6196 * config.h.in: New HAVE_U_INT*_T defines.
6198 * database.c: Only use u_int*_t typedefs if not already
6201 2005-04-07 15:08 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
6203 * src/process-unix.c (unix_open_network_stream): moved
6204 'portbuf' buffer out of an inner block as it is used in the
6205 entire function. With gcc4, the stack may get corrupted
6206 after leaving this block. This patches adjusts the size of
6207 the used buffer also; static '128' bytes are far too much
6208 currently and might not suffice for future architectures
6209 (e.g. for 512 bit ones ;)). Instead of, use only the really
6210 required space (max octets * ln(256)/ln(10) chars + space
6211 for '\0' and the sign)
6213 2005-04-08 Aidan Kehoe <kehoea@parhasard.net>
6215 * callproc.c: Include sysdir.h, so any necessary Mule processing
6216 is done on the current directory name before starting a new
6219 2005-04-06 Stephen J. Turnbull <stephen@xemacs.org>
6221 * chartab.c (Fchar_table_p):
6222 (Fget_range_char_table):
6225 Describe range representation and fix typo.
6227 2005-02-12 Vin Shelton <acs@xemacs.org>
6229 * emacs.c (shut_down_emacs): Advise users to send email to the
6230 xemacs-beta list instead of crashes@xemacs.org.
6232 2005-02-03 David Evers <extsw@appliedgenerics.com>
6234 * process-unix.c (unix_send_process): Flush the last chunk, even
6235 when the pipe is blocked.
6237 2005-02-06 Vin Shelton <acs@xemacs.org>
6239 * XEmacs 21.4.17 is released
6241 2005-01-31 Ben Wing <ben@xemacs.org>
6244 Define assert_failed() always.
6246 Always define ABORT().
6248 2005-01-25 Ben Wing <ben@xemacs.org>
6251 * Makefile.in.in (%.o):
6252 Don't compile executable as Windows (-mwindows) under Cygwin.
6253 Semi-recent changes to Cygwin's executable-startup handling make
6254 it impossible to access the TTY this way.
6256 Don't use special linker file under Cygwin (cygwin.sc) except
6257 when non-PDUMP (even in this case it is highly questionable); you
6260 1 [main] temacs 1364 fhandler_console::fixup_after_exec: error opening input console handle after exec, errno 13, Win32 error 5
6261 5820 [main] temacs 1364 fhandler_console::fixup_after_exec: error opening output console handle after exec, errno 13, Win32 error 5
6263 2005-01-29 Ben Wing <ben@xemacs.org>
6265 Port this: 2003-08-14 Stephen J. Turnbull <stephen@xemacs.org>
6267 * mule-charset.c (get_unallocated_leading_byte): Compiler quietus.
6269 2005-01-29 Ben Wing <ben@xemacs.org>
6271 * bytecode.c (optimize_compiled_function):
6273 * print.c (long_to_string):
6274 Add casts to avoid warning.
6277 Some really nasty hacks to allow TIFF and JPEG to both be compiled.
6278 #### The better solution is to move the TIFF and JPEG code to
6281 * glyphs-msw.c (mswindows_xbm_instantiate):
6282 Define __STDC__ to avoid problems with compface.h.
6284 * EmacsFrame.c (EmacsFrameRecomputeCellSize):
6286 * EmacsShell-sub.c (ABORT):
6287 * EmacsShell-sub.c (SuperClassRootGeometryManager):
6288 * EmacsShell-sub.c (RootGeometryManager):
6290 * EmacsShell.c (ABORT):
6291 * EmacsShell.c (EmacsShellUpdateSizeHints):
6292 * alloc.c (free_lcrecord):
6293 * alloca.c (i00afunc):
6294 * buffer.c (delete_from_buffer_alist):
6295 * buffer.c (MARKED_SLOT):
6296 * bytecode.c (execute_rare_opcode):
6297 * bytecode.c (optimize_byte_code):
6298 * bytecode.c (Ffetch_bytecode):
6299 * chartab.c (char_table_type_to_symbol):
6300 * chartab.c (Freset_char_table):
6301 * chartab.c (decode_char_table_range):
6302 * chartab.c (Fget_range_char_table):
6303 * chartab.c (check_valid_char_table_value):
6304 * chartab.c (map_char_table):
6305 * chartab.c (slow_map_char_table_fun):
6306 * chartab.c (chartab_instantiate):
6307 * cm.c (cmcheckmagic):
6308 * console-msw.c (DHEADER):
6309 * console.c (MARKED_SLOT):
6310 * data.c (finish_marking_weak_lists):
6311 * data.c (encode_weak_list_type):
6312 * debug.h (DASSERT):
6313 * device-gtk.c (gtk_init_device):
6314 * device-msw.c (mswindows_get_default_margin):
6315 * device-tty.c (tty_init_device):
6316 * device-x.c (get_device_from_display):
6317 * device-x.c (x_get_visual_depth):
6318 * doprnt.c (parse_doprnt_spec):
6319 * doprnt.c (get_doprnt_args):
6320 * dumper.c (pdump_get_indirect_count):
6321 * dumper.c (pdump_register_sub):
6322 * dumper.c (pdump_register_object):
6323 * dumper.c (pdump_register_struct):
6324 * dumper.c (pdump_dump_data):
6325 * dumper.c (pdump_reloc_one):
6326 * elhash.c (print_hash_table):
6327 * elhash.c (make_standard_lisp_hash_table):
6328 * elhash.c (hash_table_instantiate):
6330 * emacs.c (Fforce_debugging_signal):
6331 * emacs.c (sort_args):
6333 * emacs.c (assert_failed):
6334 * eval.c (throw_or_bomb_out):
6335 * eval.c (signal_1):
6338 * event-Xt.c (emacs_Xt_mapping_action):
6339 * event-Xt.c (Xt_process_to_emacs_event):
6341 * event-stream.c (check_event_stream_ok):
6342 * event-stream.c (Fadd_timeout):
6343 * event-stream.c (Fadd_async_timeout):
6344 * event-stream.c (Fdiscard_input):
6345 * event-stream.c (execute_internal_event):
6346 * event-stream.c (Frecent_keys):
6347 * event-stream.c (extract_this_command_keys_nth_mouse_event):
6348 * event-stream.c (lookup_command_event):
6349 * event-unixoid.c (poll_fds_for_input):
6351 * events.c (mark_event):
6352 * events.c (event_equal):
6353 * events.c (event_hash):
6354 * events.c (Fmake_event):
6355 * events.c (Fdeallocate_event):
6356 * events.c (event_chain_find_previous):
6357 * events.c (event_to_character):
6358 * events.c (format_event_object):
6359 * events.c (Fevent_type):
6360 * events.c (event_pixel_translation):
6361 * events.c (Fevent_properties):
6362 * extents.c (extent_in_region_p):
6363 * extents.c (print_extent):
6364 * extents.c (process_extents_for_insertion_mapper):
6365 * extents.c (report_extent_modification_mapper):
6366 * extents.c (glyph_layout_to_symbol):
6367 * faces.c (face_validate):
6368 * file-coding.c (eol_type_to_symbol):
6369 * file-coding.c (subsidiary_coding_system):
6370 * file-coding.c (Fcoding_system_type):
6371 * file-coding.c (Fcoding_system_property):
6372 * file-coding.c (mule_decode):
6373 * file-coding.c (mule_encode):
6374 * file-coding.c (encode_coding_ucs4):
6375 * file-coding.c (encode_coding_utf8):
6376 * file-coding.c (parse_iso2022_esc):
6377 * file-coding.c (encode_coding_iso2022):
6382 * fns.c (Fbase64_encode_region):
6383 * fns.c (Fbase64_encode_string):
6384 * fns.c (Fbase64_decode_region):
6385 * fns.c (Fbase64_decode_string):
6386 * font-lock.c (find_context):
6387 * font-lock.c (context_to_symbol):
6388 * frame-gtk.c (gtk_set_frame_pointer):
6389 * frame-gtk.c (gtk_update_frame_external_traits):
6390 * frame-x.c (x_wm_mark_shell_size_user_specified):
6391 * frame-x.c (x_wm_mark_shell_position_user_specified):
6392 * frame-x.c (x_wm_set_shell_iconic_p):
6393 * frame-x.c (x_wm_set_cell_size):
6394 * frame-x.c (x_wm_set_variable_size):
6395 * frame-x.c (x_wm_store_class_hints):
6396 * frame-x.c (x_wm_maybe_store_wm_command):
6397 * frame-x.c (x_initialize_frame_size):
6398 * frame-x.c (x_update_frame_external_traits):
6400 * frame.c (delete_frame_internal):
6401 * frame.c (mouse_pixel_position_1):
6402 * frame.c (change_frame_size_1):
6403 * free-hook.c (check_free):
6404 * free-hook.c (check_realloc):
6405 * free-hook.c (note_block_input):
6406 * free-hook.c (log_gcpro):
6407 * gccache-gtk.c (gc_cache_lookup):
6408 * glyphs-eimage.c (tiff_memory_write):
6409 * glyphs-gtk.c (gtk_finalize_image_instance):
6410 * glyphs-gtk.c (init_image_instance_from_gdk_pixmap):
6411 * glyphs-gtk.c (init_image_instance_from_xbm_inline):
6412 * glyphs-gtk.c (gtk_xpm_instantiate):
6413 * glyphs-gtk.c (gtk_unmap_subwindow):
6414 * glyphs-gtk.c (gtk_map_subwindow):
6415 * glyphs-gtk.c (gtk_button_redisplay):
6417 * glyphs-msw.c (init_image_instance_from_xbm_inline):
6418 * glyphs-x.c (init_image_instance_from_xbm_inline):
6419 * glyphs-x.c (extract_xpm_color_names):
6420 * glyphs-x.c (x_xpm_instantiate):
6421 * glyphs.c (get_image_instantiator_governing_domain):
6422 * glyphs.c (print_image_instance):
6423 * glyphs.c (image_instance_equal):
6424 * glyphs.c (image_instance_hash):
6425 * glyphs.c (encode_image_instance_type):
6426 * glyphs.c (make_image_instance_1):
6427 * glyphs.c (inherit_instantiate):
6428 * glyphs.c (image_instantiate):
6429 * glyphs.c (allocate_glyph):
6430 * glyphs.c (Fglyph_type):
6431 * glyphs.c (redisplay_subwindow):
6432 * glyphs.c (display_table_entry):
6433 * gtk-glue.c (xemacs_list_to_gtklist):
6434 * gtk-glue.c (xemacs_gtklist_to_list):
6435 * gtk-glue.c (xemacs_list_to_array):
6436 * gutter.c (SET_GUTTER_WAS_VISIBLE_FLAG):
6437 * gutter.c (gutter_was_visible):
6438 * gutter.c (get_gutter_coords):
6439 * input-method-xlib.c (get_XIM_input):
6440 * insdel.c (bufpos_to_bytind_func):
6441 * insdel.c (bytind_to_bufpos_func):
6442 * insdel.c (move_gap):
6443 * intl.c (x_get_composed_input):
6444 * keymap.c (keymap_lookup_directly):
6445 * keymap.c (keymap_delete_inverse_internal):
6446 * keymap.c (ensure_meta_prefix_char_keymapp):
6447 * keymap.c (accessible_keymaps_mapper_1):
6448 * keymap.c (where_is_recursive_mapper):
6451 * lread.c (read_atom):
6452 * lstream.c (Lstream_delete):
6453 * lstream.c (make_lisp_buffer_stream_1):
6454 * macros.c (pop_kbd_macro_event):
6455 * malloc.c (malloc):
6457 * marker.c (bi_marker_position):
6458 * marker.c (set_bi_marker_position):
6459 * menubar-gtk.c (menu_descriptor_to_widget_1):
6460 * menubar-msw.c (prune_menubar):
6461 * menubar-x.c (set_frame_menubar):
6462 * mule-charset.c (get_unallocated_leading_byte):
6463 * mule-charset.h (CHAR_LEADING_BYTE):
6464 * native-gtk-toolbar.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
6465 * nt.c (init_environment):
6466 * nt.c (generate_inode_val):
6467 * ntproc.c (delete_child):
6468 * ntproc.c (_sys_read_ahead):
6469 * ntproc.c (create_child):
6470 * objects.c (color_instantiate):
6471 * objects.c (font_instantiate):
6472 * objects.c (face_boolean_instantiate):
6473 * print.c (printing_major_badness):
6474 * process-nt.c (nt_send_process):
6475 * process-unix.c (unix_send_process):
6476 * process.c (get_process):
6477 * ralloc.c (obtain):
6478 * ralloc.c (relinquish):
6479 * ralloc.c (relocate_blocs):
6480 * ralloc.c (resize_bloc):
6481 * ralloc.c (r_alloc_free):
6482 * ralloc.c (r_re_alloc):
6483 * ralloc.c (r_alloc_thaw):
6484 * ralloc.c (init_ralloc):
6485 * ralloc.c (Free_Addr_Block):
6486 * ralloc.c (r_alloc):
6487 * redisplay-gtk.c (gtk_output_display_block):
6488 * redisplay-msw.c (mswindows_output_display_block):
6489 * redisplay-output.c (get_next_display_block):
6490 * redisplay-output.c (get_cursor_size_and_location):
6491 * redisplay-output.c (redisplay_output_layout):
6492 * redisplay-output.c (redisplay_clear_region):
6493 * redisplay-tty.c (tty_output_display_block):
6494 * redisplay-x.c (x_output_display_block):
6495 * redisplay.c (add_propagation_runes):
6496 * redisplay.c (add_glyph_rune):
6497 * redisplay.c (create_text_block):
6498 * redisplay.c (add_margin_runes):
6499 * redisplay.c (create_left_glyph_block):
6500 * redisplay.c (create_right_glyph_block):
6501 * redisplay.c (create_string_text_block):
6502 * redisplay.c (regenerate_window):
6503 * redisplay.c (REGEN_INC_FIND_START_END):
6504 * redisplay.c (redisplay_frame):
6505 * redisplay.c (point_in_line_start_cache):
6508 * regex.c (re_compile_fastmap):
6509 * regex.c (re_match_2_internal):
6510 * regex.c (regerror):
6511 * scrollbar-gtk.c (gtk_scrollbar_loop):
6512 * scrollbar-gtk.c (scrollbar_cb):
6513 * scrollbar-gtk.c (gtk_update_frame_scrollbars):
6514 * scrollbar-msw.c (mswindows_handle_scrollbar_event):
6515 * scrollbar-x.c (x_update_scrollbar_instance_status):
6516 * scrollbar-x.c (x_scrollbar_loop):
6517 * scrollbar-x.c (x_update_frame_scrollbars):
6518 * search.c (search_command):
6519 * search.c (Fmatch_data):
6520 * select-x.c (motif_clipboard_cb):
6521 * signal.c (interrupt_signal):
6522 * specifier.c (specifier_add_spec):
6523 * specifier.c (specifier_instance_from_inst_list):
6524 * specifier.c (specifier_instance):
6526 * specifier.h (struct specifier_methods):
6527 * strftime.c (add_num_time_t):
6528 * sunplay.c (init_device):
6529 * symbols.c (Fsetplist):
6530 * symbols.c (do_symval_forwarding):
6531 * symbols.c (store_symval_forwarding):
6533 * symbols.c (Fbuilt_in_variable_type):
6534 * symbols.c (decode_magic_handler_type):
6535 * symbols.c (handler_type_from_function_symbol):
6536 * syntax.c (update_syntax_cache):
6537 * sysdep.c (init_baud_rate):
6538 * toolbar-gtk.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
6539 * toolbar-msw.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
6540 * toolbar-x.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
6541 * toolbar.c (get_toolbar_coords):
6542 * ui-gtk.c (build_gtk_boxed):
6543 * ui-gtk.c (describe_gtk_arg):
6544 * ui-gtk.c (gtk_type_to_lisp):
6545 * ui-gtk.c (lisp_to_gtk_type):
6546 * ui-gtk.c (lisp_to_gtk_ret_type):
6547 * ui-gtk.c (lisp_to_flag):
6548 * unexnt.c (read_in_bss):
6549 * unexnt.c (map_in_heap):
6550 * window.c (real_window):
6551 * window.c (window_display_lines):
6552 * window.c (window_display_buffer):
6553 * window.c (set_window_display_buffer):
6554 * window.c (window_modeline_height):
6555 * window.c (unshow_buffer):
6556 * window.c (window_loop):
6557 * window.c (Fget_lru_window):
6558 * window.c (Fsplit_window):
6559 * window.c (Fset_window_configuration):
6560 * window.c (saved_window_index):
6561 * xgccache.c (gc_cache_lookup):
6562 abort() -> ABORT(). Eliminate preprocessor games with abort()
6563 since it creates huge problems in VC7, solvable only by including
6564 massive amounts of files in every compile (and not worth it).
6568 Inclusion of process.h does not need to be before lisp.h any more.
6569 Move later and remove comment about abort().
6571 2005-01-26 Arnaud Giersch <arnaud.giersch@free.fr>
6573 * regex.c (re_match_2_internal):
6574 Correctly initialize loop which clears uninitialized registers.
6576 2005-01-28 Vin Shelton <acs@xemacs.org>
6578 * sheap.c (more_static_core): Applied Ben's version of the long
6581 2005-01-24 Vin Shelton <acs@xemacs.org>
6583 * sheap.c (more_static_core): Reformatted printf string so
6584 gcc-3.3.3 will compile this on Cygwin.
6586 2004-02-22 Stephen J. Turnbull <stephen@xemacs.org>
6588 * console.c (function_key_map): Reference `key-binding'.
6590 * keymap.c (Vkey_translation_map): Improve docstring.
6592 2004-03-30 Zajcev Evgeny <zevlg@yandex.ru>
6594 * window.c: Declare `allow_deletion_of_last_visible_frame' extern.
6595 * window.c (window_loop): [fix] Take into account
6596 `allow-deletion-of-last-visible-frame' variable.
6597 * window.c (replace-buffer-in-windows): Ditto.
6599 2004-12-15 Stephen J. Turnbull <stephen@xemacs.org>
6601 * EmacsManager.c (EmacsManagerChangeSize): Respect XtGeometryNo.
6603 2005-01-20 Malcolm Purvis <malcolmp@xemacs.org>
6605 * event-gtk.c: Recognise AltGr as a valid modifier.
6607 2005-01-12 Ville Skyttä <scop@xemacs.org>
6609 * console-x.h: #include X11/keysym.h before xintrinsic.h.
6611 2005-01-13 Stephen J. Turnbull <stephen@xemacs.org>
6613 Fix backreference bug caught by test suite.
6615 * regex.c (regex_compile):
6616 Make backref duplicate internal register.
6618 2005-01-13 Stephen J. Turnbull <stephen@xemacs.org>
6620 Documentation, code clarification, and warning suppression.
6622 * regex.c (regex_compile):
6624 (re_match_2_internal):
6625 Improve comments and avoid redundant braces. [Most of the big hunk
6626 at l. 4710 is indentation; use diff -w to see the real changes.]
6627 (alt_match_null_string_p):
6628 (common_op_match_null_string_p):
6629 Avoid shadowing global on Mac OS X 10.4, at least.
6631 2004-09-08 Stephen J. Turnbull <stephen@xemacs.org>
6633 * regex.c (regcomp): Fix "unsigned comparison" warning (maybe
6634 introduced with shy groups fix). [Already applied, probably
6635 with the second "fix shy groups" patch of 2004-10-07.]
6637 2005-01-10 Steve Youngs <steve@sxemacs.org>
6639 From Andrey Slusar <anrays@gmail.com>:
6641 * unexelf.c: define `Elfw(type)' for FreeBSD alpha and amd64.
6643 2004-11-21 Malcolm Purvis <malcolmp@xemacs.org>
6645 * Makefile (RECURSIVE_MAKE): Removed.
6646 * Makefile (RECURSIVE_MAKE_ARGS): New. The new method for
6647 handling parallel builds.
6649 2004-09-08 Malcolm Purvis <malcolmp@xemacs.org>
6651 * Makefile.in.in: Enable support for parallel builds.
6653 2005-01-09 Steve Youngs <steve@sxemacs.org>
6655 From Andrey Slusar <anrays@gmail.com>:
6657 * s/freebsd.h (LIBS_SYSTEM): Only set to "-lutil -lxpg4" if
6658 FreeBSD version is >= 199701 _and_ < 600006.
6660 2005-01-06 Zajcev Evgeny <zevlg@yandex.ru>
6662 * scrollbar.c (compute_scrollbar_instance_usage):
6663 Only call device method compute_scrollbar_instance_usage() if it
6666 2004-12-05 Vin Shelton <acs@xemacs.org>
6668 * XEmacs 21.4.16 is released
6670 2004-12-04 Vin Shelton <acs@xemacs.org>
6672 * depend: Regenerated.
6674 2004-10-07 Stephen J. Turnbull <stephen@xemacs.org>
6676 * regex.c (re_match_2_internal): Map internal to external
6677 registers. Fixes bug identified by Steve Youngs 2004-09-30
6678 <microsoft-free.87ekkjhj7t.fsf@youngs.au.com>.
6680 2004-09-02 Yoshiki Hayashi <yoshiki@xemacs.org>
6682 * buffer.c (Frecord_buffer): Make sure the argument is buffer
6683 to fix a crash. Also, check the buffer is live and it
6684 really exists in buffer_list. If the buffer is not in the list,
6687 2004-09-08 Stephen J. Turnbull <stephen@xemacs.org>
6689 Fix shy groups by implementing recording of all groups for
6690 repetition and backtracking. Backport from 21.5.
6692 * regex.h (struct re_pattern_buffer): Add members re_ngroups,
6693 external_to_internal_register, external_to_internal_register_size,
6694 and update comments for re_nsub.
6696 * regex.c (re_opcode_t): Update comments.
6697 (print_compiled_pattern): Ouput external_to_internal_register,
6698 external_to_internal_register_size, and re_ngroups for debugging.
6699 (INIT_REG_TRANSLATE_SIZE): New manifest constant.
6700 (regex_compile): Update header comment.
6701 Ensure that all groups are recorded so that repeat matches and
6702 backtracking work correctly. Comment related warning for groups >
6704 (re_search_2): Construct map of API indexes (which count only
6705 nonshy groups) to internal register numbers, and keep it updated.
6707 2004-07-27 Malcolm Purvis <malcolmp@xemacs.org>
6709 * frame-gtk.c (gtk_make_frame_visible):
6710 * frame-gtk.c (gtk_make_frame_invisible): Use map/unmap instead of
6711 show/hide. This is what X uses and is prevents previously hidden
6712 widgets from suddenly reappearing.
6713 * gtk-xemacs.c (gtk_xemacs_paint):
6714 * gtk-xemacs.c (gtk_xemacs_draw):
6715 * gtk-xemacs.c (gtk_xemacs_expose): Only operate if the widget is
6717 * scrollbar-gtk.c (gtk_update_scrollbar_instance_status): Force
6718 size and location changes so that they can be seen before the next
6719 idle event. Without this rapid changes to scrollbar properties
6722 2004-07-02 Malcolm Purvis <malcolmp@xemacs.org>
6725 * console-gtk.h (struct gtk_frame):
6726 * console-gtk.h (FRAME_GTK_WIDGET_INSTANCE_HASH_TABLE):
6727 Add hash tables track tab_control callback data.
6728 Added #defines for GTK object data names.
6729 Declaration of gtk_widget_to_frame().
6730 * event-gtk.c (enqueue_gtk_dispatch_event) No longer static:
6731 * frame-gtk.c (gtk_widget_to_frame): New.
6732 * frame-gtk.c (gtk_create_widgets):
6733 * frame-gtk.c (allocate_gtk_frame_struct):
6734 * frame-gtk.c (gtk_mark_frame):
6735 Manage frame callbakc hash tables.
6736 * glyphs-gtk.c (gtk_map_subwindow): Fix size and moving bugs.
6737 * glyphs-gtk.c (gtk_redisplay_widget): Use correct size for widgets.
6738 * glyphs-gtk.c (gtk_widget_instantiate_1): Force reconsideration
6740 * glyphs-gtk.c (gtk_widget_query_geometry): New
6741 * glyphs-gtk.c (gtk_register_gui_item): New
6742 * glyphs-gtk.c (gtk_add_tab_item): New
6743 * glyphs-gtk.c (gtk_tab_control_callback): New
6744 * glyphs-gtk.c (gtk_tab_control_instantiate): New
6745 * glyphs-gtk.c (gtk_tab_control_redisplay): Set notebook page.
6746 Use correct list when loading item.
6747 * glyphs-gtk.c (image_instantiator_format_create_glyphs_gtk):
6748 Register new methods.
6749 * gtk-xemacs.c (gtk_xemacs_size_allocate): Use XEmacs size, not
6750 default size, for widgets.
6751 * gui-x.c: Improved comment.
6752 * menubar-gtk.c (__generic_button_callback): Use
6753 gtk_widget_to_frame instead of __get_channel.
6755 * ui-gtk.c: Use symbolic names for GTK object data.
6757 2004-06-23 Ilya N. Golubev <gin@mo.msk.ru>
6759 * s/usg5-4.h (NSIG): Define only inside emacs binary.
6761 2002-03-04 Stephen J. Turnbull <stephen@xemacs.org>
6763 * fileio.c (Fwrite_region_internal): Document use of start == Qnil.
6765 2004-06-16 Malcolm Purvis <malcolmp@xemacs.org>
6767 * malloc.c (morecore): siz is a long because in some architectures
6768 (eg ia-64) an int cannot hold the address range. Additional patch
6769 from the SuSe distribution.
6771 2004-06-13 Malcolm Purvis <malcolmp@xemacs.org>
6774 * malloc.c: lim_data is a long because in some architectures
6775 (eg ia-64) an int cannot hold the address range.
6776 * mem-limits.h: lim-data is a long. Linux uses getrlimit()
6777 instead of ulimit() because ulimit() always returns -1.
6779 2004-06-09 Stephen J. Turnbull <stephen@xemacs.org>
6781 * search.c: Reenable an ansync semaphore. Remove bogus comments.
6783 2004-06-11 David Kastrup <dak@gnu.org>
6785 * search.c (match_limit): Don't flag an error if match-data
6786 exceeding the allocated search_regs.num_regs gets requested, just
6789 2003-07-21 Malcolm Purvis <malcolmpurvis@optushome.com.au>
6791 * glyphs-gtk.c (gtk_xpm_instantiate): Rewrite the XPM data to
6792 replace symbolic color entries with the real colors specified in
6793 xpm-color-symbols, before passing the XPM to gtk.
6794 * glyphs-gtk.h: Use the generic pixmap_image_instance.mask for masks,
6795 instead of a GTK specific field, so that it is used in by generic
6798 2004-05-05 Chuck Hines <chuck.hines@baesystems.com>
6800 * dgif_lib.c (DGifSlurp): Changed do-while to while to stop
6801 coredump from deref of NULL ptr (ExtData)
6803 2004-04-19 Jerry James <james@xemacs.org>
6805 * data.c (sign_extend_lisp_int): Use INT_VALBITS instead of
6806 VALBITS to compute the location of the sign bit.
6807 * event-stream.c (Fcurrent_event_timestamp): Replace incorrect use
6808 of VALBITS with EMACS_INT_MAX.
6809 * events.c (Fevent_timestamp): Ditto.
6810 * events.c (TIMESTAMP_HALFSPACE): Change VALBITS to INT_VALBITS to
6811 compute the halfway point to timestamp wraparound.
6812 * floatfns.c (float_to_int): Compare against EMACS_INT_MAX and
6813 EMACS_INT_MIN instead of using VALBITS.
6814 * floatfns.c (Flogb): Use EMACS_INT_MIN instead of building an
6815 incorrect number with VALBITS.
6816 * fns.c (Frandom): Correct number of integer bits in docstring.
6817 Use INT_VALBITS instead of VALBITS to compute the denominator.
6818 * sysdep.c (get_random): Use INT_VALBITS instead of VALBITS to
6819 build random numbers.
6821 2004-03-23 Malcolm Purvis <malcolmpurvis@optushome.com.au>
6823 * event-gtk.c (gtk_event_to_emacs_event):
6825 * menubar-gtk.c (gtk_xemacs_menubar_class_init):
6826 * menubar-gtk.c (gtk_xemacs_menubar_size_request):
6827 * menubar-gtk.c (gtk_xemacs_accel_label_get_type):
6828 * menubar-gtk.c (gtk_xemacs_set_accel_keys):
6829 * menubar-gtk.c (__activate_menu):
6830 * menubar-gtk.c (convert_underscores):
6831 * menubar-gtk.c (remove_underscores):
6832 * menubar-gtk.c (menu_convert):
6833 * menubar-gtk.c (menu_descriptor_to_widget_1):
6834 * menubar-gtk.c (menu_descriptor_to_widget):
6835 * menubar-gtk.c (menu_can_reuse_widget):
6836 * menubar-gtk.c (menu_create_menubar):
6837 * menubar-gtk.c (gtk_popup_menu):
6838 * menubar-gtk.c (Fgtk_build_xemacs_menu):
6839 Added support for Gtk menu bar and menu item mnemonics.
6841 2004-03-23 Malcolm Purvis <malcolmpurvis@optushome.com.au>
6843 * sysdll.c: (dll_function): Added support for finding symbols in
6844 Darwin shared libraries as well in Darwin bundles.
6845 * sysdll.c (image_for_address): New
6846 * sysdll.c (my_find_image): New
6847 * sysdll.c (search_linked_libs): New
6849 2004-03-23 Malcolm Purvis <malcolmpurvis@optushome.com.au>
6851 * ui-gtk.c (__internal_callback_marshal): Marshalling data to
6852 return to GTK requires a different API to marshalling data to use
6854 * ui-gtk.c (lisp_to_gtk_ret_type): New.
6856 2004-03-08 Lutz Euler <lutz.euler@freenet.de>
6858 * lstream.c (Lstream_pseudo_close): Fix test for LSTREAM_FL_IS_OPEN.
6860 2004-02-19 Stephen J. Turnbull <stephen@xemacs.org>
6862 * glyphs.c (process_image_string_instantiator):
6863 (Fset_console_type_image_conversion_list):
6864 Stop GCC from warning about shadowing of `exp'.
6866 * redisplay-x.c (x_output_string): Fix unsigned lossage.
6868 2004-02-19 Stephen J. Turnbull <stephen@xemacs.org>
6870 * regex.c (re_match_2_internal): Shut up GCC about syn1, syn2.
6872 2004-02-03 Vin Shelton <acs@xemacs.org>
6874 * glyphs.c (image_instance_layout): Remove pointless assertion.
6875 * regex.c (regex_grow_registers): Return type is void.
6877 2004-02-02 Vin Shelton <acs@xemacs.org>
6879 * XEmacs 21.4.15 is released
6881 2004-01-30 Glynn Clements <glynn.clements@virgin.net>
6883 * device-x.c (x_error_handler): Don't call stderr_out
6885 2003-11-07 Katsumi Yamaoka <yamaoka@jpl.org>
6887 * buffer.c (other-buffer): Clarify documentation of order of
6888 arguments for FSF Emacs.
6890 2003-10-11 Olivier Galibert <galibert@pobox.com>
6892 * window.c (Fdelete_window): Dirty the mirror structure _before_
6893 marking the window deleted.
6895 2003-09-15 Jerry James <james@xemacs.org>
6897 * event-msw.c (debug_mswin_messages): Conditionally compile
6898 messages missing from the Cygwin headers.
6900 2003-06-16 Stephen J. Turnbull <stephen@xemacs.org>
6902 * data.c (eq_with_ebola_notice): Fix typo in comment.
6903 (Ftrue_list_p): Improve docstring.
6905 2003-10-13 Stephen J. Turnbull <stephen@xemacs.org>
6907 * frame-x.c (x_update_frame_external_traits): Fix XtSetArg idiom.
6909 2003-09-27 Stephen J. Turnbull <stephen@xemacs.org>
6911 * search.c (trivial_regexp_p): Regexps containing "\{" are
6912 nontrivial. Thanks to Manfred Bartz for reporting the bug and
6913 Stefan Monnier for suggesting a diagnosis.
6915 2003-09-25 Stephen J. Turnbull <stephen@xemacs.org>
6917 * elhash.c (make-hash-table): Clarify use of :test #'equal.
6919 2003-09-12 Stephen J. Turnbull <stephen@xemacs.org>
6921 * search.c (Fsearch_forward):
6923 Document negative count.
6925 2003-09-13 Stephen J. Turnbull <stephen@xemacs.org>
6927 * regex.c (re_max_failures): Bump to 20000 for REGEX_MALLOC, too.
6929 2003-09-13 Martin Buchholz <martin@xemacs.org>
6931 * s/sol2.h: Use OS_RELEASE=os_release_major*100+os_release_minor
6933 2003-09-15 Vin Shelton <acs@xemacs.org>
6935 * .gdbinit (pobj): Remove Ilya's fix that was only intended for
6938 2003-09-12 Yoshiki Hayashi <yoshiki@xemacs.org>
6940 * regex.c (TRANSLATE_EXTENDED_UNSAFE): Remove.
6941 (re_search_2): Match the first byte of Bufbyte, not Emchar.
6942 (re_match_2_internal): Use TRANSLATE instead of
6943 TRANSLATE_EXTENDED_UNSAFE. The latter was a hack to bypass
6944 non-ASCII char case conversion.
6946 2003-09-08 Mike Sperber <mike@xemacs.org>
6948 * symbols.c (Fvariable_binding_locus): Add, as per suggestion from
6949 RMS at: http://article.gmane.org/gmane.emacs.pretest.bugs/1010
6951 2003-06-14 Ilya N. Golubev <gin@mo.msk.ru>
6953 * .gdbinit (pobj): fix printing of symbol name.
6955 2003-08-01 Ilya N. Golubev <gin@mo.msk.ru>
6957 * frame-x.c (x_layout_widgets): When resizing is about to cause
6958 frame size slip, mark it for redisplay.
6960 2003-08-18 Jerry James <james@xemacs.org>
6962 * opaque.h: Remove unused (X)OPAQUE_MARKFUN definitions.
6964 2003-09-03 Vin Shelton <acs@xemacs.org>
6966 * XEmacs 21.4.14 is released
6968 2003-08-15 Stephen J. Turnbull <stephen@xemacs.org>
6970 * config.h.in (REGEX_MALLOC): Make it configure'able.
6972 2003-08-14 Andrew Begel <abegel@CS.Berkeley.EDU>
6974 * config.h.in: Add HAVE_DYLD to indicate Darwin/MacOSX dynamic
6976 * sysdll.c (dll_init):
6977 * sysdll.c (dll_open):
6978 * sysdll.c (dll_close):
6979 * sysdll.c (dll_function):
6980 * sysdll.c (dll_variable):
6981 * sysdll.c (dll_error):
6982 Add support for loading bundles using Darwin/MacOSX
6985 2003-08-12 Stephen J. Turnbull <stephen@xemacs.org>
6987 * process.c (start-process-internal): Document coding systems.
6989 2003-07-30 Jerry James <james@xemacs.org>
6991 * sysdll.c: configure sets HAVE_DLD_INIT, not HAVE_INIT_DLD.
6993 2003-07-31 René Kyllingstad <listmailxemacs@kyllingstad.com>
6995 * event-msw.c (mswindows_enqueue_mouse_button_event):
6996 * event-msw.c (mswindows_wnd_proc):
6997 enqueue button event when scrollwheel event isn't handled by
6998 mswindows_handle_mousewheel_event, such as when the scrollbars
7001 2003-07-29 Stephen J. Turnbull <stephen@xemacs.org>
7003 * EmacsFrame.c (emacsFrameClassRec): Motif groks not XtCompress*.
7005 2003-03-24 Stephen J. Turnbull <stephen@xemacs.org>
7007 * database.c (Fopen_database): Don't use DB_AUTO_COMMIT.
7009 2003-03-21 Stephen J. Turnbull <stephen@xemacs.org>
7011 * regex.c (re_match_2_internal): Fix matching degenerate word
7014 2003-05-25 XEmacs Build Bot <builds@cvs.xemacs.org>
7016 * XEmacs 21.4.13 is released
7018 2003-03-20 Stephen J. Turnbull <stephen@xemacs.org>
7020 * config.h.in (INTPTR_T_IN_CYGWIN_TYPES_H):
7021 * lisp.h (<inttypes.h>):
7022 Cygwin defines these types in <cygwin/types.h>. Don't duplicate
7025 2003-03-15 Martin Buchholz <martin@xemacs.org>
7027 * dumper.c (pdump_load): Pdump'ed XEmacs can't find its .dmp file.
7028 Scenario: Prepend ~/bin to PATH; then `mkdir ~/bin/xemacs'
7029 Result: "temacs can only be run in -batch mode."
7030 Fix: Check xemacs executable candidate for directory-ness.
7032 2003-03-03 Robert Pluim <rpluim@bigfoot.com>
7034 * database.c: Don't use the u_int8_t etc typedefs on FreeBSD,
7035 they conflict with <sys/types.h>.
7037 2003-02-14 Martin Buchholz <martin@xemacs.org>
7039 * database.c: Berkeley DB wants __STDC__ to be defined.
7041 2003-02-13 Martin Buchholz <martin@xemacs.org>
7043 * EmacsFrame.c: Use symbolic name `NotUseful' in lieu of `0'.
7045 2003-02-01 Martin Buchholz <martin@xemacs.org>
7047 * process-unix.c (unix_send_process): Fix C++ compile error.
7049 2003-02-25 Andrew Begel <abegel@cs.berkeley.edu>
7051 * Added .dylib as an acceptable shared library file extension
7052 * to support MacOSX.
7054 2003-02-01 Martin Buchholz <martin@xemacs.org>
7056 * EmacsFrameP.h (EmacsFramePart):
7057 Kludge to allow compiling with Motif1, but linking with Motif2.
7059 2003-01-28 Martin Buchholz <martin@xemacs.org>
7061 * config.h.in (_ALL_SOURCE): Guard against multiple definition.
7064 2003-02-23 Stephen J. Turnbull <stephen@xemacs.org>
7066 * config.h.in (DLSYM_NEEDS_UNDERSCORE): Define on darwin.
7068 2003-02-06 Andrew Begel <abegel@CS.Berkeley.EDU>
7070 * sysdll.c: Included lisp.h to define needed alloca_array.
7072 2003-02-13 Martin Buchholz <martin@xemacs.org>
7074 Make XEmacs redisplay 10 times faster.
7075 If, that is, you're using a slow X connection and MoveOpaque.
7076 Use compress_exposure = XtExposeCompressMaximal | XtExposeNoRegion.
7077 Use compress_motion = TRUE.
7078 * EmacsFrame.c (emacsFrameClassRec):
7079 * EmacsShell-sub.c (EMACS_SHELL_CLASS_REC):
7080 * EmacsManager.c (emacsManagerClassRec):
7081 * xintrinsicp.h: Make sure XtExposeNoRegion is defined.
7083 2003-01-30 Vin Shelton <acs@xemacs.org>
7085 * s/linux.h (ORDINARY_LINK): define ORDINARY_LINK for linux.
7087 2003-01-17 Stephen J. Turnbull <stephen@xemacs.org>
7089 * glyphs-eimage.c (tiff_memory_seek): Lobotomize unsigned typedef.
7090 Patch by Martin Buchholz.
7092 2003-01-16 Stephen J. Turnbull <stephen@xemacs.org>
7094 * glyphs-eimage.c (tiff_instantiate): Fix unsigned comparison.
7095 Thanks to icc for warning and Martin Buchholz for reporting.
7097 2003-01-29 Vin Shelton <acs@xemacs.org>
7099 Patch courtesy of Andrew Begel <abegel@cs.berkeley.edu>
7101 * dynarr.c (Dynarr_realloc): memcpy copies number of bytes, so
7102 remember to multiply by the element size.
7104 2003-01-15 Stephen J. Turnbull <stephen@xemacs.org>
7106 * XEmacs 21.4.12 "Portable Code" is released.
7108 2003-01-14 Sergey Okhapkin <sos@prospect.com.ru>
7110 * Makefile.in.in (ldflags): re-order sections for gcc 3.2.
7111 * s/cygwin.sc: new linker file.
7113 2003-01-14 Stephen J. Turnbull <stephen@xemacs.org>
7115 Build fixes courtesy Martin Buchholz <martin@xemacs.org>:
7117 * redisplay-x.c (x_output_string): Use X11-specified types.
7118 * syntax.c, syntax.h (SYNTAX_CODE): Use enum syntaxcode, not int.
7119 * emacs.c (__free_hook): Use typeof with Intel compiler.
7120 * config.h.in (alloca.h): Quick safe hack to please Intel compiler.
7122 2003-01-08 Andy Piper <andy@xemacs.org>
7124 * unexcw.c (copy_executable_and_dump_data_section): Set the stack
7125 reserve size during unexec().
7127 2003-01-07 Daiki Ueno <daiki@xemacs.org>
7129 * process-unix.c (unix_create_process): Don't let outchannel block.
7131 2003-01-05 Rick Rankin <rick_rankin@yahoo.com>
7133 * emacs.c: Include "syswindows.h" when compiling under Cygwin.
7134 Needed for IsBadReadPtr().
7136 2003-01-03 Stephen J. Turnbull <stephen@xemacs.org>
7138 * XEmacs 21.4.11 "Native Windows TTY Support" is released.
7140 2002-12-14 Ben Wing <ben@xemacs.org>
7142 * callint.c: Declaration error.
7144 * dumper.c (pdump_load): Warning fix.
7145 * process.c: GCPRO error.
7146 * glyphs.c (unmap_subwindow):
7147 * glyphs.c (map_subwindow): Parenthesizing errors with ! and &&.
7148 * event-stream.c (maybe_kbd_translate): Wrong argument to
7149 character_to_event().
7151 * alloc.c (garbage_collect_1):
7153 * emacs.c (debug_can_access_memory):
7154 * emacs.c (fatal_error_signal):
7155 * emacs.c (mswindows_handle_hardware_exceptions):
7158 * emacs.c (assert_failed):
7159 * emacs.c (syms_of_emacs):
7162 * print.c (std_handle_out_va):
7163 * print.c (write_string_to_stdio_stream):
7164 * print.c (write_fmt_string):
7165 * print.c (printing_badness):
7166 * print.c (printing_major_badness):
7167 * print.c (print_internal):
7168 * print.c (debug_print_no_newline):
7169 * print.c (debug_backtrace):
7170 Be more defensive in handling bad values when printing. Add code
7171 from trunk involving inhibit_non_essential_printing_operations.
7172 When going down or in debug_print(), don't do external conversion
7173 and such and try really, really hard when printing to avoid core
7174 dumping. Add force-debugging-signal, debug_break().
7176 2002-12-12 Stephen J. Turnbull <stephen@xemacs.org>
7178 * dumper.c (pdump_load): Include sysdep.h; retry with truename.
7179 Analysis and original patch by Vin Shelton <acs@xemacs.org>.
7181 2002-12-02 Greg Allen <greg_allen@westlb-systems.co.uk>
7183 * database.c: Fix open_database. Berkeley DB API has changed in
7184 4.1. see: http://www.sleepycat.com/docs/ref/upgrade.4.1/fop.html
7186 2002-11-26 Stephen J. Turnbull <stephen@xemacs.org>
7188 * specifier.c (Fvalid_specifier_type_p): Typo in comment.
7190 2002-11-13 Stephen J. Turnbull <stephen@xemacs.org>
7192 * event-Xt.c (Xt_timeout):
7193 (Xt_timeout_callback):
7194 (emacs_Xt_add_timeout):
7195 (emacs_Xt_remove_timeout):
7196 (Xt_timeout_to_emacs_event):
7197 Turn completed_timeouts from a stack into a queue. Fixes
7198 deadlocks <15829.21626.171573.994716@sinisa.nasamreza.org>.
7200 2002-11-07 Wolfram Gloger <wg@malloc.de>
7202 * alloc.c (reinit_alloc_once_early): Disable mmap in Doug Lea malloc.
7203 * emacs.c (main): Assert that mmap'd allocation is disabled.
7205 2002-10-14 Andy Piper <andy@xemacs.org>
7207 * glyphs-widget.c (layout_query_geometry): add in fiddle
7208 factor. Include border text in width layout calculation.
7209 (layout_layout): use BORDER_FIDDLE_FACTOR instead of 10.
7211 2002-11-02 Stephen J. Turnbull <stephen@xemacs.org>
7213 * XEmacs 21.4.10 "Military Intelligence" is released.
7215 2002-10-17 Raymond Toy <toy@rtp.ericsson.se>
7217 * nas.c: Update for NAS 1.6 and later, from Jon Trulson. Was
7218 using the NAS private array SoundFileInfo that no longer exists in
7219 NAS 1.6 and later. Preserve backward compatibility with NAS 1.5a
7220 and earlier. This is broken for some versions between 1.5a and
7223 2002-10-10 Stephen J. Turnbull <stephen@xemacs.org>
7225 * realpath.c (win32_readlink): Try to fix truename of wildcard bug.
7227 * emacs.c (shut_down_emacs): Improve crash message.
7229 2002-10-09 Stephen J. Turnbull <stephen@xemacs.org>
7231 * file-coding.c (determine_real_coding_system): Check for coding
7232 cookie in first LINES_TO_CHECK lines (currently 2). Cater to
7233 shebangs and Python PEP 263.
7235 2002-10-08 Andy Piper <andy@xemacs.org>
7237 * glyphs-widget.c (layout_query_geometry): only resize dynamically
7238 if static sizes haven't been set.
7240 2002-08-30 Mike Alexander <mta@arbortext.com>
7242 * event-msw.c (winsock_closer): Use closesocket, not CloseHandle
7245 2002-10-03 Stephen J. Turnbull <stephen@xemacs.org>
7247 * callproc.c (child_setup): 21.4 doesn't have retry_close.
7249 2002-09-20 Mike Sperber <mike@xemacs.org>
7251 (This partially gets back my patch from 2002-07-20 without the
7253 * callproc.c (child_setup): Remove Ben's comment noting confusion
7254 over the file descriptors >= 3: close_process_descs() doesn't
7255 close those. Fix fd range to go up to MAXDESC-1 instead of 64.
7256 * process-unix.c (unix_create_process): Call
7257 begin_dont_check_for_quit to inhibit unwanted interaction (and
7258 thus breaking of X event synchronicity) in the child.
7260 2002-09-26 Golubev I. N. <gin@mo.msk.ru>
7262 * frame-x.c (x_delete_frame): do not call XtDisplay on a destroyed
7265 2002-08-20 Ben Sigelman <bhsigelm@cs.brown.edu>
7267 * event-Xt.c (drain_X_queue): loop over while(XEventsQueued())
7268 instead of while(XtAppPending()&XtIMXEvent). Upon a gdm logout,
7269 the xemacs process did not exit, but looped infinitely here. This
7272 2002-09-28 Stephen J. Turnbull <stephen@xemacs.org>
7274 * font-lock.c (SYNTAX_START_STYLE, SYNTAX_END_STYLE): Quiet GCC.
7275 (find_context): Improve comments.
7277 * regex.c (re_compile_fastmap): Gratuitous #ifdef comment fixes.
7278 (re_match_2): An XCHAR_TABLE operation was missing.
7280 Many of the following changes were inspired by Andy Piper's (now
7281 obsolete) patch to make syntax-table text property lookup optional.
7285 * syntax.h (top level): Document semantics of syntax flags.
7286 * syntax.c (comstr_start, Fforward_comment): Improve comments.
7287 * syntax.c, syntax.h (top level): Document syntax cache better in
7290 [Instrument syntax caching (temporary change)]
7292 * syntax.h (enum syntax_cache_statistics_functions, struct
7293 syntax_cache_statistics, SCS_STATISTICS_SET_FUNCTION,
7294 SYNTAX_CACHE_STATISTICS_COUNT_INIT): New types and macros.
7295 * syntax.c (scan_words, Fforward_comment, scan_lists,
7296 Fbackward_prefix_characters):
7297 * font-lock.c (find_context):
7298 Use them to instrument syntax caching.
7299 * syntax.c (struct syntax_cache_statistics, scs_statistics,
7300 syntax_cache_statistics_function_names): New type and variables.
7301 * syntax.c (update_syntax_cache): Update and report statistics.
7303 [Major syntax cache optimizations]
7305 syntax.c (lookup_syntax_properties): Default off.
7307 * syntax.h (UPDATE_SYNTAX_INTERNAL): New, implements UPDATE_SYNTAX*.
7308 * syntax.c (update_syntax_cache):
7309 Move init test from update_syntax_cache to UPDATE_SYNTAX_INTERNAL.
7311 [Minor syntax cache optimizations and code clarifications]
7313 * syntax.h (SYNTAX_COMMENT_BITS, SYNTAX_START_P, SYNTAX_END_P,
7314 SYNTAX_STYLES_MATCH_START_P, SYNTAX_STYLES_MATCH_1CHAR_P,
7315 SYNTAX_STYLES_MATCH_END_P, STYLE_FOUND_1CHAR_P, STYLE_FOUND_P,
7316 SYNTAX_COMMENT_MASK_END, SYNTAX_COMMENT_MASK_START,
7317 SYNTAX_COMMENT_1CHAR_MASK): Remove redundant argument `table'.
7318 (Code clarification.)
7320 * syntax.c (scan_words, find_end_of_comment, scan_sexps_forward,
7321 scan_lists): Compute code from syncode, use Boolean macros instead
7322 of redundant masking operations. (Code clarification; any decent
7323 compiler can do this optimization.)
7325 * syntax.c (scan_lists): Rearrange switches (case Sstring_fence)
7328 * syntax.h, syntax.c (NEXT_SINGLE_PROPERTY_CHANGE,
7329 PREVIOUS_SINGLE_PROPERTY_CHANGE, update_syntax_cache): Conditionally
7330 use F*_single_property_change instead of F*_extent_change.
7331 Currently F*_single_property_change is _much_ less efficient.
7333 * dired.c (Fdirectory_files): Qt not valid in syntax_cache.object.
7334 * syntax.h (SETUP_SYNTAX_CACHE_FOR_OBJECT): Initialize
7335 syntax_cache.object properly, don't leave Qt or Qnil.
7336 (SYNTAX_CACHE_BYTE_TO_CHAR): Use SETUP_SYNTAX_CACHE_FOR_OBJECT.
7337 * syntax.c (update_syntax_cache): Use BUFFERP and STRINGP, not
7338 tests for Qt or Qnil.
7340 2002-09-21 Stephen J. Turnbull <stephen@xemacs.org>
7342 * redisplay.c (point_in_line_start_cache):
7343 * extents.c (print_extent_1):
7346 * extents.c (Fset_extent_property): Document `syntax-table' property.
7348 * extents.h (Fnext_single_property_change): EXFUN it.
7350 2002-09-09 Stephen J. Turnbull <stephen@xemacs.org>
7352 * search.c (clear_unused_search_regs): New static function.
7356 Use it. Fixes "stale match data" bug reported by Martin Stjernholm.
7357 Minor clarifications in comments.
7359 * regex.c (re_match_2_internal): Ensure no stale submatches.
7361 2002-09-09 Stephen J. Turnbull <stephen@xemacs.org>
7363 * event-Xt.c (enqueue_focus_event): Add missing prototype.
7365 2002-08-29 Jerry James <james@xemacs.org>
7367 * lisp.h: structrures -> structures.
7369 2002-06-03 Andy Piper <andy@xemacs.org>
7371 * frame.c (frame_conversion_internal): add conversion appropriate
7372 for setting frame dimensions in pixels.
7374 * console.h (struct console_methods): add device-specific widget
7377 * emacs.c (main_1): initialize glyph vars.
7379 * event-Xt.c (handle_focus_event_1): call handle_focus_event_2
7380 (handle_focus_event_2): new function. Allow focus to
7381 be set to a particular window and widget.
7382 (enqueue_focus_event): new function. Create a
7383 synthetic focus event.
7384 (emacs_Xt_handle_magic_event): call
7385 handle_focus_event_2.
7387 * frame.c (Fset_frame_pixel_height): new function. Allow
7388 pixel-based sizing. Does the right thing on character-oriented
7390 (Fset_frame_pixel_width): ditto.
7391 (Fset_frame_pixel_size): ditto.
7392 (syms_of_frame): declare.
7394 * general-slots.h: add :vertically-justify and
7395 :horizontally-justify.
7397 * glyphs-msw.c (xbm_create_bitmap_from_data): warning fix.
7398 (mswindows_widget_border_width): new function.
7399 (mswindows_combo_box_instantiate): set border widths.
7400 (console_type_create_glyphs_mswindows): declare.
7403 (check_valid_justification): allow vertical and horizontal
7405 (widget_border_width): new function. Call device methods.
7406 (widget_instance_border_width): ditto.
7407 (logical_unit_height): new function. Determine the height of a
7408 logical-unit. Logical units are intended to provide grid-like
7409 layout for subcontrols in a layout. If the layout is
7410 :vertically-justify top then subcontrols will be positioned on
7411 logical-unit boundaries, thus allowing adjacent subcontrols to
7413 (widget_logical_unit_height): ditto for widgets.
7414 (redisplay_widget): misc cleanup.
7415 (widget_spacing): new function. Call device specific
7416 methods. Intended to be the default gap between adjacent widgets.
7417 (widget_query_geometry): use new spacing functions to determine
7418 appropriate geometry.
7419 (initialize_widget_image_instance): initialize horizontal and
7420 vertical justification.
7421 (widget_instantiate): use logica-units where appropriate for
7422 sizing large widgets.
7423 (button_query_geometry): use widget_instance_border_width.
7424 (tree_view_query_geometry): ditto.
7425 (tab_control_query_geometry): ditto.
7426 (edit_field_query_geometry): new function.
7427 (layout_update): pick up :justify, :horizontally-justify and
7428 :vertically-justify none of which worked previously. :justify is
7429 used as a fallback for both horizontal and vertical justification.
7430 (layout_query_geometry): use logical units to size appropriately.
7431 (layout_layout): ditto.
7432 (Fwidget_logical_to_character_width): new function. Allow users to
7433 convert from logical units to characters so that frame sizes can
7434 be set appropriately.
7435 (Fwidget_logical_to_character_height): ditto.
7436 (syms_of_glyphs_widget): declare.
7437 (image_instantiator_edit_fields): add edit_field_query_geometry.
7438 (VALID_LAYOUT_KEYWORDS): declare :vertically-justify and
7439 :horizontally-justify.
7440 (specifier_vars_of_glyphs_widget): new function. Declare
7441 Vwidget_border_width which is not yet used.
7443 * glyphs-x.c (x_map_subwindow): enqueue appropriate focus events.
7444 (x_widget_border_width): new function.
7445 (x_widget_instantiate): create a sensible name for widgets.
7446 (console_type_create_glyphs_x): declare x_widget_border_width.
7448 * glyphs.h (DEFAULT_WIDGET_BORDER_WIDTH): new macro.
7449 (struct Lisp_Image_Instance): add :vertically-justify and
7450 :horizontally-justify.
7451 (LAYOUT_JUSTIFY_TOP): new.
7452 (IMAGE_INSTANCE_SUBWINDOW_H_JUSTIFY): new.
7453 (ROUND_UP): new macro. Round argument up to next integral
7456 * redisplay-output.c (redisplay_output_layout): misc formatting.
7458 * symsinit.h: declare specifier_vars_of_glyphs_widget.
7460 2002-08-23 Stephen J. Turnbull <stephen@xemacs.org>
7462 * XEmacs 21.4.9 "Informed Management" is released.
7464 2002-08-19 Andy Piper <andy@xemacs.org>
7466 * fileio.c (Ffile_truename): on cygwin using win32 normalize to
7469 * realpath.c (xrealpath): normalize drive spec also so that dir
7470 sep chars are not mixed on cygwin.
7472 2002-08-06 Jerry James <james@xemacs.org>
7474 * window.c (Fsplit_window): Count only half of the divider width
7475 against the left window when splitting horizontally.
7477 2002-06-24 Andy Piper <andy@xemacs.org>
7479 * toolbar-gtk.c (GTK_OUTPUT_BUTTONS_LOOP): output button if whole
7480 toolbar was cleared.
7482 * toolbar-msw.c (mswindows_clear_frame_toolbars): new
7483 function. Split out from mswindows_output_frame_toolbars.
7484 (mswindows_output_frame_toolbars): move clear pieces to
7485 mswindows_output_frame_toolbars.
7487 * toolbar-gtk.c (gtk_clear_frame_toolbars): new function. Split
7488 out from gtk_output_frame_toolbars.
7489 (gtk_output_frame_toolbars): move clear pieces to
7490 gtk_clear_frame_toolbars.
7492 * toolbar-x.c (X_OUTPUT_BUTTONS_LOOP): always output buttons when
7493 the frame is cleared. How this ever worked before is a mystery.
7494 (x_output_frame_toolbars): Only output toolbars.
7495 (x_clear_frame_toolbars): new. Clear previous toolbar locations.
7497 * gutter.c (update_gutter_geometry):
7498 Mark frame layout changed.
7499 (update_frame_gutter_geometry, update_frame_gutters):
7500 Respect frame_layout_changed.
7502 * console.h (struct console_methods): add
7503 clear_frame_toolbars_method.
7505 * redisplay.c (redisplay_frame): call
7506 update_frame_toolbars_geometry and re-order update_frame_toolbars.
7508 * toolbar.h: declare update_frame_toolbars_geometry.
7510 * toolbar.c (update_frame_toolbars_geometry): new function. Split
7511 out from update_frame_toolbars. Call clear_frame_toolbars.
7512 (update_frame_toolbars): only output, do not change geometry.
7514 * redisplay.c: add frame_layout_changed.
7516 * redisplay.h: add frame_layout_changed.
7517 (CLASS_RESET_CHANGED_FLAGS): set it.
7518 (GLOBAL_RESET_CHANGED_FLAGS): ditto.
7519 (CLASS_REDISPLAY_FLAGS_CHANGEDP): test it.
7520 (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
7522 * device.h (struct device): add frame_layout_changed.
7523 (MARK_DEVICE_FRAME_LAYOUT_CHANGED): new.
7525 * frame.h (struct frame): add frame_layout_changed.
7526 (MARK_FRAME_LAYOUT_CHANGED): new.
7528 2002-06-30 Mike Alexander <mta@arbortext.com>
7530 * event-msw.c (mswindows_need_event): Don't wait for a new message
7531 if the queue is not empty. Suggested by Paul Moore.
7533 2002-06-12 Andy Piper <andy@xemacs.org>
7535 * frame-msw.c (msprinter_init_frame_3): calculate the frame size
7536 for printing on accurately.
7538 2002-06-09 Rick Rankin <rick_rankin@yahoo.com>
7540 * event-msw.c (mswindows_wnd_proc): Add a handler for the
7541 WM_ACTIVATE message. Make sure that the frame is visible if the
7542 window is visible. This seemss to fix the problem where XEmacs
7543 appears to freeze after switching desktops with certain virtual
7545 (debug_output_mswin_message): Added code to output message
7546 parameters for WM_WINDOWPOSCHANGED,
7547 WM_WINDOWPOSCHANGING, WM_MOVE, and WM_SIZE messages.
7549 2002-05-25 Andy Piper <andy@xemacs.org>
7551 * select-x.c (vars_of_select_x): Fix docstring of
7552 x-selection-strict-motif-ownership
7554 2002-08-14 Stephen J. Turnbull <stephen@xemacs.org>
7556 * keymap.c (get_keymap):
7557 Add comment about do_autoload GCPROs own args.
7559 2002-08-14 Stephen J. Turnbull <stephen@xemacs.org>
7561 * bytecode.c (execute_optimized_program): check_opcode ifdef
7562 ERROR_CHECK_BYTE_CODE.
7564 2002-08-14 Stephen J. Turnbull <stephen@xemacs.org>
7566 Thanks to Ben Wing and Michael Sperber.
7568 * eval.c (Fcommand_execute):
7571 (Fmacroexpand_internal):
7572 (function_argcount):
7573 callint.c (Fcall_interactively):
7574 Add comment about do_autoload GCPROs own args.
7576 * (do_autoload): GCPRO both args as well as local Lisp_Object.
7578 * eval.c (Ffuncall): Extra braces to placate GCC.
7580 2002-08-10 Stephen J. Turnbull <stephen@xemacs.org>
7582 * backtrace.h (grow_specpdl):
7584 * EmacsFrame.c (EmacsFrameSetValues):
7585 * eval.c (grow_specpdl):
7586 * ExternalShell.c (hack_event_masks_1):
7587 * glyphs-x.c (convert_EImage_to_XImage):
7588 (x_finalize_image_instance):
7589 * ralloc.c (page_size):
7591 * xgccache.c (gc_cache_hash):
7592 Fix unsigned comparison warnings.
7594 2002-07-29 Jerry James <james@xemacs.org>
7596 * lread.c (locate_file): Any nonnegative return value indicates
7597 success if MODE is nonnegative.
7599 2002-08-03 Brian A Palmer <bpalmer@rescomp.Stanford.EDU>
7601 * emacs.c (Fsplit_string_by_char): Make 2nd arg SEPCHAR a required
7604 2002-07-17 Stephen J. Turnbull <stephen@xemacs.org>
7606 * process-unix.c (unix_send_process): #ifdef the coding_stream member.
7608 * dumper.c (pdump_get_indirect_count):
7609 (pdump_scan_by_alignment):
7610 (pdump_dump_root_struct_ptrs):
7611 (pdump_dump_rtables):
7612 (pdump_dump_root_objects):
7614 * nas.c (WaveOpenDataForReading):
7615 * fns.c (print_bit_vector):
7616 * font-lock.c (SINGLE_SYNTAX_STYLE):
7617 * glyphs.c (check_for_ignored_expose):
7618 (find_matching_subwindow):
7620 * imgproc.c (get_histogram):
7621 * redisplay.c (point_in_line_start_cache):
7622 * redisplay-output.c (redisplay_unmap_subwindows):
7623 * symbols.c (defsymbol_massage_name_1):
7624 (defkeyword_massage_name):
7625 (deferror_massage_name_and_message):
7626 * redisplay-x.c (x_output_string):
7627 * emacs.c (run_temacs_argv_size, run_temacs_args_size):
7628 * frame.h (struct frame):
7629 * filelock.c (current_lock_owner):
7630 * doprnt.c (emacs_doprnt_1):
7631 * lisp.h (struct Lisp_Bit_Vector):
7635 2002-02-13 Ben Wing <ben@xemacs.org>
7637 * event-stream.c (reset_key_echo):
7638 * event-stream.c (reset_this_command_keys):
7639 * event-stream.c (execute_command_event):
7640 If console is dead as a result of C-x 5 0, then post-command stuff
7641 needs to be careful and do only non-console-specific stuff.
7643 2002-07-01 Mike Sperber <mike@xemacs.org>
7645 * process-unix.c (unix_send_process): Mark coding_outstream as
7646 non-open upon SIGPIPE.
7648 * event-stream.c (Fnext_event): Reorder switch cases to something
7651 2001-08-13 Dmitry Astapov <adept@umc.com.ua>
7653 * event-Xt.c (maybe_define_x_key_as_self_inserting_character):
7654 Don't bogusly reinitialize ascii_character property.
7656 2002-07-08 Mike Sperber <mike@xemacs.org>
7658 * process.c (Fstart_process_internal): Do error checking before we
7659 fork off the child, so the child can't muck with the state of the
7662 2002-07-08 Mike Sperber <mike@xemacs.org>
7664 * ralloc.c (init_ralloc): Allocate properly for pdump.
7666 2002-06-12 Andy Piper <andy@xemacs.org>
7668 * glyphs.c (query_string_geometry): check the string.
7670 * glyphs-widget.c (widget_logical_unit_height): cope with nil
7673 2002-06-17 Jerry James <james@xemacs.org>
7675 * sysdll.c: Remove RTLD_GLOBAL initialization.
7676 * sysdll.c (dll_open): Do not use RTLD_GLOBAL.
7678 2002-06-25 Stephen J. Turnbull <stephen@xemacs.org>
7680 * search.c (skip_chars): Port Ben's crash fix and efficiency patch.
7682 2002-05-16 Mathias Grimmberger <mgri@zaphod.sax.de>
7684 * sysdep.c (sys_rename): Make sys_rename work for the case where
7685 Windows rename sets errno to EACCES if target file exists.
7687 2002-05-21 Jonathan Harris <jonathan@xemacs.org>
7689 * device-msw.c (mswindows_handle_page_setup_dialog_box):
7690 Fix detection of metric units to work on Win95
7692 2002-05-21 Stephen J. Turnbull <stephen@xemacs.org>
7694 * syswindows.h: #define LOCALE_RETURN_NUMBER. Why, I don't know.
7696 2002-04-25 Andy Piper <andy@xemacs.org>
7698 * redisplay.c (create_text_block): Remove extra comment trailer.
7700 2002-04-24 Andy Piper <andy@xemacs.org>
7702 * redisplay.c (create_text_block): Don't actually add propagation
7703 data if the line ends after we have added a glyph.
7705 2002-04-22 Andy Piper <andy@xemacs.org>
7707 * extents.c (extent_fragment_update): check for glyphs we have
7708 previously displayed.
7709 * extents.c (print_extent_1): warning removal.
7710 * extents.h: change prototype.
7711 * redisplay-output.c (redisplay_normalize_glyph_area): calculate
7712 widths correctly for wide glyphs.
7713 * redisplay.c (position_redisplay_data_type): add end_glyph_width.
7714 * redisplay.c (prop_type): add PROP_GLYPH.
7715 * redisplay.c (struct prop_block): add glyph type
7716 * redisplay.c (add_glyph_rune): when adding part of a glyph add it
7717 to the propagation data.
7718 * redisplay.c (create_text_block): if there is a glyph in the
7719 propagation data use it to salt extent_fragment_update.
7720 * redisplay.c (create_string_text_block): ditto.
7722 2002-04-13 Nix <nix@esperi.demon.co.uk>
7724 * redisplay.h (struct rune): Add ascent, descent, and yoffset fields.
7725 * redisplay-output.c (compare_runes): Compare them.
7726 * redisplay.c: Update copyright date.
7727 * redisplay.c (pos_data): Add need_baseline_computation field.
7728 * redisplay.c (add_glyph_rune): Update ascent, descent, and
7729 need_baseline_computation; zero yoffset. Set max_pixmap_height
7730 for all pixmaps, not just automatically positioned ones.
7731 * redisplay.c (calculate_yoffset): New, compute yoffset values.
7732 * redisplay.c (calculate_baseline): New, compute textual baseline.
7733 * redisplay.c (add_glyph_rune): Call them.
7734 * redisplay.c (create_text_block): Likewise.
7735 * redisplay.c (create_overlay_glyph_block): Likewise.
7736 * redisplay.c (add_margin_runes): Likewise.
7737 * redisplay.c (create_string_text_block): Likewise. Fix tabdamage.
7739 * redisplay.h: (redisplay_calculate_display_boxes): Change prototype.
7740 * redisplay-output.c (redisplay_calculate_display_boxes): Use yoffset.
7741 * redisplay-msw.c (mswindows_output_blank): Pass 0 as yoffset.
7742 * redisplay-msw.c (mswindows_output_string): Likewise.
7743 * redisplay-msw.c (mswindows_output_display_block): Pass yoffset.
7744 * redisplay-gtk.c (gtk_output_display_block): Likewise.
7745 * redisplay-x.c (x_output_display_block): Likewise.
7747 2002-03-28 Ben Wing <ben@xemacs.org>
7749 * redisplay.c: Fixed bug in redisplay
7750 w.r.t. hscroll/truncation/continuation glyphs causing jumping up
7751 and down of the lines, since they're bigger than the line
7752 size. (It was seen most obviously when there's a horizontal scroll
7753 bar, e.g. do C-h a glyph or something like that.) The problem was
7754 that the glyph-contrib-p setting on glyphs was ignored even if it
7755 was set properly, which it wasn't until now.
7757 2002-04-24 Andy Piper <andy@xemacs.org>
7759 * lisp.h (Dynarr_end): Fix definition.
7761 2002-02-06 Adrian Aichner <adrian@xemacs.org>
7763 * redisplay.c (mark_redisplay): Remove call to
7764 update_frame_window_mirror.
7766 2001-11-15 Andy Piper <andy@xemacs.org>
7768 * win32.c (Fmswindows_shell_execute): fix handling of URL's under
7771 2002-02-13 Andy Piper <andy@xemacs.org>
7773 * event-msw.c (mswindows_wnd_proc): only mark the frame visible if
7774 we did in fact enqueue the XM_MAPFRAME event.
7776 2002-01-15 Adrian Aichner <adrian@xemacs.org>
7778 * event-msw.c (mswindows_wnd_proc): Add handling of WM_SHOWWINDOW
7779 to fix problem switching between virtual desktops under virtuawin
7780 virtual window manager.
7782 2001-07-30 Adrian Aichner <adrian@xemacs.org>
7784 * event-msw.c: Typo fix.
7785 * event-msw.c (mswindows_wnd_proc): Set FRAME_VISIBLE_P after
7786 magic XM_MAPFRAME event has been sent.
7788 2001-11-23 Andy Piper <andy@xemacs.org>
7790 * event-msw.c (mswindows_wnd_proc): Don't pump mousewheel events.
7792 2001-11-21 Andy Piper <andy@xemacs.org>
7794 * scrollbar-msw.c (mswindows_handle_mousewheel_event): cope with
7795 mouse events outside the frame.
7797 2002-03-20 Andy Piper <andy@xemacs.org>
7799 * menubar-msw.c (mswindows_popup_menu): warning removal.
7800 * dialog-msw.c (dialog_popped_down): ditto.
7802 2001-12-11 Andy Piper <andy@xemacs.org>
7804 * dialog-msw.c (dialog_popped_down): new function. unset popup_up_p.
7805 * dialog-msw.c (mswindows_make_dialog_box_internal): set
7807 * menubar-msw.c (unsafe_handle_wm_initmenupopup_1): ditto.
7808 * menubar-msw.c (mswindows_handle_wm_command): ditto.
7809 * menubar-msw.c (mswindows_popup_menu): ditto.
7811 2001-10-29 Andy Piper <andy@xemacs.org>
7813 * dialog-msw.c (handle_directory_dialog_box): quit if the user
7816 2002-01-03 Andy Piper <andy@xemacs.org>
7818 * realpath.c (ABS_LENGTH): dtrt for cygwin systems using drive
7822 2002-03-29 Jonathan Harris <jonathan@xemacs.org>
7824 * device-msw.c (plist_get_margin): Add arg specifying mm or inches
7825 * device-msw.c (plist_set_margin): Fix multiplicand used for mm
7826 * device-msw.c (mswindows_handle_page_setup_dialog_box):
7827 Detect and handle case where machine is set up for metric units
7829 2002-04-02 Andy Piper <andy@xemacs.org>
7831 * dired-msw.c (mswindows_get_files):
7832 * nt.c (mswindows_stat): SetErrorMode() so that file errors are
7833 completely handled by XEmacs. Suggested by Thomas Vogler
7834 <mail@thomas-vogler.de>.
7836 2001-11-14 Andy Piper <andy@xemacs.org>
7838 * nt.c (REG_ROOT): change registry key to XEmacs.
7840 2002-04-27 Andy Piper <andy@xemacs.org>
7842 * glyphs-msw.c (mswindows_widget_instantiate): remove dead-code.
7844 2002-04-26 Andy Piper <andy@xemacs.org>
7846 * glyphs-msw.c (mswindows_map_subwindow): observe :initial-focus
7849 2002-03-14 Mike Alexander <mta@arbortext.com>
7851 * event-msw.c (mswindows_unwait_process): New, remove process from
7853 * process-nt.c (nt_finalize_process_data): Call
7854 mswindows_unwait_process
7855 * console-msw.h: Declare mswindows_unwait_process
7857 2002-05-14 Stephen J. Turnbull <stephen@xemacs.org>
7859 * editfns.c (Fdecode_time):
7860 (Fformat_time_string):
7861 Check for invalid time. Thanks to Nick Pakoulin <npak@ispras.ru>.
7862 (make_time): Warning elimination (change arg name).
7864 2001-11-24 Andy Piper <andy@xemacs.org>
7866 * window.c (Fsplit_window): Doc return type.
7868 2002-04-01 Andy Piper <andy@xemacs.org>
7870 * emacs.c (Fkill_emacs): Only output message box in interactive
7873 2002-04-26 Andy Piper <andy@xemacs.org>
7875 * config.h.in: pull in 21.5.x change to stop alloca warnings under
7878 2002-03-18 Gregory Steuck <greg-xemacs-patch@nest.cx>
7880 * unexelf.c: Use ELFSIZE or define from _LP64 to indicate a 64
7883 2002-05-09 Stephen J. Turnbull <stephen@xemacs.org>
7885 * XEmacs 21.4.8 "Honest Recruiter" is released.
7887 2002-05-07 Nix <nix@esperi.demon.co.uk>
7889 Supersedes 2002-04-17 patch.
7891 * process.h (PROCESS_LIVE_P): Use the process status as
7892 evidence of health, not the state of the input stream.
7893 (PROCESS_READABLE_P): Say if the process is readable
7894 from. (It may be dead nonetheless.)
7895 (CHECK_READABLE_PROCESS): Test for that condition.
7897 * process.c (create_process): Use PROCESS_READABLE_P.
7898 (read_process_output, set_process_filter): Likewise.
7900 * process.c (Fprocess_input_coding_system): Use CHECK_READABLE_PROCESS.
7901 (Fset_process_input_coding_system, Fprocess_coding_system): Likewise.
7903 This code is #if 0'd, this is not the time to add new functions:
7905 * process.c (Fprocess_readable_p): Report readability status.
7906 * process.c (Qprocess_readable_p): New, associated symbol...
7907 * process.c (syms_of_process): ... initialize it.
7909 2002-05-04 Stephen J. Turnbull <stephen@xemacs.org>
7911 * XEmacs 21.4.7 "Economic Science" is released.
7913 2002-04-17 Nix <nix@esperi.demon.co.uk>
7915 * process.h (PROCESS_LIVE_P): Use the process status as
7916 evidence of health, not the state of the input stream.
7918 2002-04-30 Charles G. Waldman <cgw@xemacs.org>
7920 * sysdep.c (sys_siglist): change "signum" to "signal"
7922 2001-04-21 Martin Buchholz <martin@xemacs.org>
7924 * s/darwin.h: New file.
7925 Thanks to Greg Parker <gparker@cs.stanford.edu>.
7927 2002-04-23 Andreas Jaeger <aj@suse.de>
7929 * s/linux.h (LIB_STANDARD): Define correctly for x86-64 and s390x
7930 which use lib64 for 64-bit libs.
7931 (START_FILES): Likewise.
7933 2002-02-11 Mike Sperber <mike@xemacs.org>
7936 (x_IO_error_handler):
7937 (x_init_device): Temporarily keep device in static variable
7938 `device_being_initialized' so we can recover gracefully from
7939 internal XOpenDevice failure. (XOpenDevice is documented to
7940 return NULL on failure, but sometimes calls the IO error handler
7943 2002-01-31 John H. Palmieri <palmieri@math.washington.edu>
7945 * dired.c (Ffile_name_all_completions): Change documentation --
7946 remove reference to completion-ignored-extensions.
7947 * dired.c (vars_of_dired): Change documentation for
7948 completion-ignored-extensions -- remove reference to
7949 file-name-all-completions.
7951 2002-03-06 Jerry James <james@xemacs.org>
7953 * emodules.c (emodules_load): Fix multiple loading of same module.
7955 2002-01-25 Andrew Begel <abegel@cs.berkeley.edu>
7956 * sysdll.c (dll_open): Changed to use RTLD_NOW instead of
7957 RTLD_LAZY to avoid incorrect symbol binding when using nested
7958 shared libraries on Solaris.
7960 2002-02-12 Stephen J. Turnbull <stephen@xemacs.org>
7962 * fileio.c (Ffind_file_name_handler): Improve docstring.
7964 2002-01-20 Stephen J. Turnbull <stephen@xemacs.org>
7966 * fns.c (Fmapconcat): Improve docstring.
7968 2002-01-03 Eric Gillespie, Jr. <epg@pretzelnet.org>
7970 * device-gtk.c: Add prototype for
7971 emacs_gtk_selection_clear_event_handle.
7972 (gtk_init_device): Call gtk_selection_add_target for CLIPBOARD
7973 selection. Setup signal handler for "selection_clear_event"
7974 (emacs_gtk_selection_clear_event_handle).
7976 * select-gtk.c (emacs_gtk_selection_clear_event_handle): Handle
7977 other applications owning the clipboard (based on
7978 x_handle_selection_clear).
7980 2001-12-23 William M. Perry <wmperry@gnu.org>
7982 * menubar-gtk.c (gtk_popup_menu) Add sanity checks, fix crash.
7984 2002-01-04 Martin Buchholz <martin@xemacs.org>
7986 * keymap.c (define_key_alternate_name): Parenthesize EQ.
7988 2001-12-17 Stephen J. Turnbull <stephen@xemacs.org>
7990 * XEmacs 21.4.6 "Common Lisp" is released.
7992 2001-12-16 Torsten Duwe <duwe@caldera.de>
7994 * search.c (Freplace_match): Add missing sub-expression functionality.
7996 * buffer.c (decode_buffer): Add a check for pointer type to
7997 decode_buffer, before gcc's CSE optimization reorders a
7998 dereference in front of the allow_string test.
8000 2001-11-16 Darryl Okahata <darrylo@xemacs.org>
8002 * window.c (window_loop): Fix bug that sometimes prevented
8003 window_loop() from iterating across multiple devices. Also, at
8004 Ben's request, changed infloop-detecting code to abort() instead
8005 of silently terminating window_loop().
8007 2001-11-21 Stephen J. Turnbull <stephen@xemacs.org>
8009 Based on analysis and patch by Simon Josefson <jas@extundo.com>.
8010 * editfns.c (make_time): New function.
8011 (Fencode_time): Use it instead of wasteful_word_to_lisp.
8012 * lisp.h (make_time): Prototype and comment it.
8013 * dired.c (wasteful_word_to_lisp): Deprecate.
8014 (Ffile_attributes): Use make_time() instead of wasteful_word_to_lisp().
8016 2001-10-31 Kyle Jones <kyle_jones@wonderworks.com>
8018 * fileio.c (auto_save_1): Use current coding system, not
8021 2001-11-13 Ben Wing <ben@xemacs.org>
8024 * window.c (window_truncation_on):
8025 * window.c (syms_of_window):
8026 truncate-partial-width-windows should respect the buffer being
8027 displayed, like other redisplay vars.
8029 2001-11-13 Hirokazu FUKUI <hfukui@sannet.ne.jp>
8031 * event-stream.c (Fread_key_sequence): save current buffer.
8033 2001-10-29 Andrew Begel <abegel@eecs.berkeley.edu>
8035 * ntheap.c (_heap_init): Don't redefine in VS.NET (MSC >= 1300).
8037 2001-10-29 Andrew Begel <abegel@eecs.berkeley.edu>
8039 * alloc.c (lcrecord_stats): Add space for types defined in modules.
8041 2001-10-26 Mike Alexander <mta@arbortext.com>
8043 * event-msw.c (slurper_free_shared_data_maybe): Free the pipe handle.
8045 2001-10-25 Andy Piper <andy@xemacs.org>
8048 * dialog-msw.c (handle_directory_proc): new function.
8049 (handle_directory_dialog_box): new fucntion.
8050 (handle_file_dialog_box): use new directory dialog support.
8051 (mswindows_make_dialog_box_internal): ditto.
8052 * event-msw.c (mswindows_wnd_proc): minor fix to scrollbar event
8054 (mswindows_find_frame): make global.
8055 * fileio.c (Fexpand_file_name): build fix.
8056 * general-slots.h: add Qdirectory.
8057 * scrollbar-msw.c (mswindows_handle_scrollbar_event): fix focus
8059 * syswindows.h (LOCAL_TO_WIN32_FILE_FORMAT): fix problem with
8060 cygwin not leaving win32 paths unchanged.
8061 * win32.c (Fmswindows_cygwin_to_win32_path): new function. Use the
8062 cygwin runtime to do path conversion.
8063 (Fmswindows_shell_execute): fix cygwin handling of URLs.
8064 (syms_of_win32): add new function.
8065 * window.c (window_loop): build fix.
8067 2001-10-15 Andy Piper <andy@xemacs.org>
8069 (Fmswindows_shell_execute): fix handling of URL's under cygwin.
8071 2001-10-23 Stephen J. Turnbull <stephen@xemacs.org>
8073 * XEmacs 21.4.5 "Civil Service" is released.
8075 2001-04-08 Danny Colascione <qtmstr@optonline.net>
8077 * glyphs-x.c: Force buffer-tab highlight update when moving the
8078 buffer, avoiding an ugly black border, used for keyboard focus
8079 indication, on a widget that can never have keyboard focus, the
8082 2001-08-30 Daiki Ueno <ueno@unixuser.org>
8084 * process-unix.c (unix_open_multicast_group): Remove too much
8085 conversion between host and network byte order.
8087 2001-09-10 Nix <nix@esperi.demon.co.uk>
8089 * src/buffer.c (kill_buffer): Undedicate windows showing BUF
8090 before replacing them.
8092 * src/window.c (window_loop): Implement new UNDEDICATE_BUFFER
8095 * src/window.c (undedicate_windows): Use it.
8096 * src/window.h: Add prototype.
8098 2001-09-17 Ben Wing <ben@xemacs.org>
8100 * fileio.c (normalize_filename):
8101 * fileio.c (Fexpand_file_name):
8102 Fix various C++ compile errors in Andy's recent code.
8104 * callint.c (Fcall_interactively):
8105 * editfns.c (Ftemp_directory):
8106 * editfns.c (Fuser_full_name):
8107 * emacs.c (argmatch):
8108 * lread.c (locate_file_map_suffixes):
8109 * redisplay-x.c (x_ring_bell):
8110 Fix sign-compare warnings.
8112 2001-09-08 Andy Piper <andy@xemacs.org>
8114 * fileio.c (normalize_filename): copied from nt.c
8115 * (Ffile_name_directory): enable win32 paths under cygwin.
8116 * (Ffile_name_nondirectory): ditto.
8117 * (directory_file_name): ditto.
8118 * (Fexpand_file_name): ditto.
8119 * (Ffile_truename): ditto.
8120 * (Fsubstitute_in_file_name): ditto.
8121 * (Ffile_name_absolute_p): ditto.
8122 * (Ffile_readable_p): ditto.
8124 2001-09-08 Andy Piper <andy@xemacs.org>
8126 * device-msw.c (mswindows_finish_init_device): remove dde
8128 * device-msw.c (mswindows_init_dde): factor out from
8129 mswindows_finish_init_device()
8130 * device-msw.c (init_mswindows_very_early): new function
8131 initialize but don't enable dde.
8132 * emacs.c (main_1): call init_mswindows_very_early.
8134 * event-msw.c (mswindows_dde_callback): only execute when we are
8136 * symsinit.h: declare init_mswindows_very_early.
8138 2001-05-02 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
8140 [sjt: This has been in 21.5 for months with no complaints.]
8142 * console.h (struct console_methods): Added flags member.
8143 (CONSOLE_IMPLEMENTATION_FLAGS): Defined.
8144 (CONMETH_IMPL_FLAG):
8145 (CONSOLE_IMPL_FLAG): Macro to check implememntation flags.
8146 Defined XDEVIMPF_DONT_PREEMPT_REDISPLAY.
8148 * device.c (window_system_pixelated_geometry): Use the above macros.
8150 * device.h (DEVICE_IMPL_FLAG): Macro to check a device
8151 implememntation flag.
8152 * device.h (DEVICE_DISPLAY_P): Use it.
8154 * frame.c (delete_frame_internal): Use the above macro.
8156 * redisplay.c (redisplay_device): Use it.
8157 (redisplay_device): Obey XDEVIMPF_DONT_PREEMPT_REDISPLAY.
8158 (redisplay_frame): Ditto.
8160 * device-msw.c (mswindows_device_implementation_flags): Removed.
8161 (msprinter_device_implementation_flags): Removed.
8162 (console_type_create_device_mswindows): Removed references to
8163 implementation_flags methods, set implementation flags here.
8164 (console_type_create_device_mswindows): Added XDEVIMPF_DONT_PREEMPT.
8166 * device-gtk.c (gtk_device_implementation_flags): Removed method.
8167 (console_type_create_device_gtk): Removed method declaration.
8168 Added commented out statement which semantically matches the
8169 commented out statement in the above removed method.
8171 2001-04-14 Gordon Sadler <gbsadler1@lcisp.com>
8173 The attached patch fixes a few warnings.
8175 * src/emacs.c: prototype console_type_create_select_gtk for GTK only
8176 * src/frame-gtk.c: guard against GNOME calls in GTK only
8177 * src/redisplay-gtk.c: include <sys/poll.h> #ifdef HAVE_POLL
8178 * src/select-gtk.c: prototype lisp_to_time
8180 2001-06-08 Ben Wing <ben@xemacs.org>
8182 ------ gc-in-window-procedure fixes ------
8185 * alloc.c (struct post_gc_action):
8186 * alloc.c (register_post_gc_action):
8187 * alloc.c (run_post_gc_actions):
8188 * alloc.c (garbage_collect_1):
8189 Create "post-gc actions", to avoid those dreaded "GC during window
8190 procedure" problems.
8193 Abort, clean and simple, when GC in window procedure. We want
8194 to flush these puppies out.
8197 * glyphs-msw.c (finalize_destroy_window):
8198 * glyphs-msw.c (mswindows_finalize_image_instance):
8199 Use a post-gc action when destroying subwindows.
8202 Declare register_post_gc_action().
8205 * scrollbar-msw.c (unshow_that_mofo):
8206 Use a post-gc action when unshowing scrollbar windows, if in gc.
8208 * redisplay.c (mark_redisplay):
8209 Add comment about the utter evilness of what's going down here.
8211 ------ cygwin setitimer fixes ------
8213 * Makefile.in.in (sheap_objs):
8214 * Makefile.in.in (profile_objs):
8215 * Makefile.in.in (objs):
8216 Compile profile.c only when HAVE_SETITIMER.
8218 * nt.c (mswindows_sigset):
8219 * nt.c (mswindows_sighold):
8220 * nt.c (mswindows_sigrelse):
8221 * nt.c (mswindows_sigpause):
8222 * nt.c (mswindows_raise):
8223 * nt.c (close_file_data):
8227 Move setitimer() emulation to win32.c, because Cygwin needs it too.
8230 * profile.c (Fstart_profiling):
8231 * profile.c (Fstop_profiling):
8232 Make sure we don't compile if no setitimer(). Use qxe_setitimer()
8233 instead of just plain setitimer().
8236 * signal.c (set_one_shot_timer):
8238 Define qxe_setitimer() as an encapsulation around setitimer() --
8239 call setitimer() directly unless Cygwin or MS Win, in which case
8240 we use our simulated version in win32.c.
8243 * systime.h (struct itimerval):
8244 * systime.h (ITIMER_REAL):
8245 Prototype mswindows_setitimer() and qxe_setitimer(). Long
8246 comment about "qxe" and the policy regarding encapsulation.
8249 * win32.c (setitimer_helper_proc):
8250 * win32.c (setitimer_helper_period):
8251 * win32.c (setitimer_helper):
8252 * win32.c (mswindows_setitimer):
8253 Move setitimer() emulation here, so Cygwin can use it.
8254 Rename a couple of functions and variables to be longer and more
8255 descriptive. In setitimer_helper_proc(), send the signal
8256 using either mswindows_raise() or (on Cygwin) kill(). If for
8257 some reason we are still getting lockups, we'll change the kill()
8258 to directly invoke the signal handlers.
8260 ------ windows shell fixes ------
8264 Comments about how these two files must die.
8266 * callproc.c (init_callproc):
8267 On MS Windows, init shell-file-name from SHELL, then COMSPEC,
8268 not just COMSPEC. (more correct and closer to FSF.) Don't
8269 force a value for SHELL into the environment. (Comments added
8270 to explain why not.)
8272 * nt.c (init_user_info):
8273 Don't shove a fabricated SHELL into the environment. See above.
8275 2001-06-01 Ben Wing <ben@xemacs.org>
8277 * Makefile.in.in (ldflags):
8278 eliminate that pesky "defaulting to 00401000" warning.
8282 2001-06-15 Golubev I. N. <gin@mo.msk.ru>
8284 * s/sco5.h (FORCE_ALLOCATE_PTY_THE_OLD_FASHIONED_WAY): #define.
8285 * process-unix.c (allocate_pty): #ifndef "modern" pty allocation.
8287 2001-04-24 Jerry James <james@xemacs.org>
8289 * faces.h: pass parameters to Fadd_spec_to_specifier in the
8292 2001-06-01 Ben Wing <ben@xemacs.org>
8294 * event-msw.c (debug_mswin_messages):
8295 conditionalize the messages that were causing compile errors.
8296 (if only macros could generate #ifdef statements ...)
8298 2001-07-28 Stephen J. Turnbull <stephen@xemacs.org>
8300 * XEmacs 21.4.4 "Artificial Intelligence" is released.
8302 2001-07-22 Stephen J. Turnbull <stephen@xemacs.org>
8304 * event-msw.c (mswindows_wnd_proc): Add GC debugging assert.
8306 2001-07-22 Stephen J. Turnbull <stephen@xemacs.org>
8308 * config.h.in (IPV6_CANONICALIZE): New #define for --with-ipv6-lookup.
8309 * process-unix.c (unix_canonicalize_host_name):
8310 sysdep.c (init_system_name):
8311 Use it to conditionally support IPv6 canonicalization.
8313 2001-05-31 Paul Stodghill <stodghil@cs.cornell.edu>
8316 Cygwin does not define WM_IME_xxx. Modify the #if's accordingly.
8318 2001-05-19 Paul Krause <paulkrause1@mediaone.net>
8320 * scrollbar-msw.c: Fixes a crash that occurs on Windows when an
8321 attempt is made to scroll when no scroll bar is available.
8323 2001-04-19 Glynn Clements <glynn.clements@virgin.net>
8325 * input-method-motif.c (XIM_delete_frame): New callback.
8326 (XIM_init_frame): Register it. (Reapplied by SJT, it somehow
8327 got deleted from 21.4.3.)
8329 2001-06-01 Ben Wing <ben@xemacs.org>
8331 * nt.c (mswindows_utime):
8332 * nt.c (close_file_data):
8333 fix off-by-one-indirection error.
8335 2001-05-29 Adrian Aichner <adrian@xemacs.org>
8337 * fileio.c: Include nt.h. Remove lisp_string_set_file_times()
8338 because set_file_times() now takes Lisp_Object path, instead of
8340 * nt.c: Include buffer.h.
8341 * nt.c (convert_from_time_t): New.
8342 * nt.c (mswindows_utime): New. Use utime, since SetFileTime does
8343 not set mtime correctly.
8344 * nt.h: Declare mswindows_utime().
8345 * sysdep.c (set_file_times): set_file_times() now takes Lisp_Object
8346 path, instead of char*.
8347 * systime.h: Include <sys/utime.h> on WIN32_NATIVE.
8349 2001-05-30 Ben Wing <ben@xemacs.org>
8353 (Stephen, just take all event-msw.c patches. This includes
8354 the "iconify" fix below.)
8357 * event-msw.c (mswindows_dequeue_dispatch_event):
8358 * event-msw.c (assert):
8359 * event-msw.c (emacs_mswindows_quit_p):
8360 * event-msw.c (debug_mswin_messages):
8361 * event-msw.c (debug_output_mswin_message):
8362 * event-msw.c (vars_of_event_mswindows):
8363 Fix yet more problems with C-g handling.
8364 Implement debug-mswindows-events.
8366 2001-05-24 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
8368 * event-msw.c (WM_DROPFILES): Use correct type for OLE characters.
8370 2001-05-23 Ben Wing <ben@xemacs.org>
8372 * event-msw.c (winsock_writer):
8373 * event-msw.c (winsock_closer):
8374 prior kludgy code was clobbering the buffer, thinking it was
8375 "unused" space to store an unneeded return value; instead, use
8376 the variable we've already got staring us in the face.
8378 2001-05-17 Andy Piper <andy@xemacs.org>
8380 * sysfile.h: don't assume that file attributes are boolean
8382 2001-05-23 Ben Wing <ben@xemacs.org>
8384 * device-msw.c (msprinter_init_device):
8385 signal an error rather than crash with an unavailable network
8386 printer (from Mike Alexander).
8389 * event-msw.c (struct winsock_stream):
8390 * event-msw.c (winsock_writer):
8391 * event-msw.c (winsock_closer):
8392 * event-msw.c (make_winsock_stream_1):
8393 cleanup headers. fix (hopefully) an error with data corruption
8394 when sending to a network connection.
8396 * fileio.c (Fexpand_file_name): Fix evil code that attempts
8397 to handle the ~user prefix by (a) always assuming we're referencing
8398 ourselves and not even verifying the user -- hence any file with
8399 a tilde as its first char is invalid! (b) if there wasn't a slash
8400 following the filename, the pointer was set *past* the end of
8401 file and we started reading from uninitialized memory. Now we
8402 simply treat these as files, always.
8404 * buffer.c (common_init_complex_vars_of_buffer): comment change.
8406 2001-05-19 Ben Wing <ben@xemacs.org>
8408 * eval.c: doc comment about gcpro'ing in record_unwind_protect.
8411 * process-nt.c (vars_of_process_nt):
8412 remove unused mswindows-quote-process-args. rec for 21.4.
8414 2001-05-12 Ben Wing <ben@xemacs.org>
8416 * event-msw.c (mswindows_dde_callback):
8417 * event-msw.c (mswindows_wnd_proc):
8418 eliminate cygwin warnings.
8420 2001-05-06 Ben Wing <ben@xemacs.org>
8424 * device-msw.c (print_dialog_worker):
8425 * device-msw.c (mswindows_handle_print_dialog_box):
8426 * device-msw.c (syms_of_device_mswindows):
8427 * dialog-msw.c (mswindows_make_dialog_box_internal):
8429 implement printing the selection when it's selected.
8431 2001-05-20 Drazen Kacar <dave@arsdigita.com>
8433 * glyphs-gtk.c (gtk_resource_instantiate): C++ comment -> #if 0
8435 2001-05-11 Yoshiki Hayashi <yoshiki@xemacs.org>
8437 * lisp.h (EMACS_INT_MAX): This should be one bit less since
8438 EMACS_INT is signed.
8440 2001-04-15 Michael Lausch <mla@1012surf.net>
8442 * scrollbar-gtk.c (gtk_create_scrollbar_instance): Call
8443 gtk_widget_request_size() to give scrollbar >0 width for
8446 2001-05-30 William M. Perry <wmperry@gnu.org>
8448 * event-gtk.c: Check for buttons as modifier keys.
8450 2001-05-25 Craig Lanning <CraigL@Knology.net>
8453 Properly find MinGW's <process.h> inside Cygwin's restructured
8454 include directories. Don't try to include <cygwin/version.h>
8455 since we are dropping support for MinGW in versions of Cygwin
8458 Drop support for MinGW in versions of Cygwin before b21.
8460 Properly find MinGW's <process.h> inside Cygwin's restructured
8461 include directories.
8463 Drop support for MinGW in versions of Cygwin before b21.
8465 Even though a.out.h is no longer detected by configure, allow
8466 MinGW to use it until we figure out how to do the job with Win32.
8468 2001-07-11 Matt Tucker <tuck@whistlingfish.net>
8470 * syntax.c (find_start_of_comment):
8471 Fix `unbalanced parentheses' bug when dealing with mixed comment
8472 styles in c++/java/etc. mode
8474 2001-05-29 Mike Alexander <mta@arbortext.com>
8476 * console-msw.h (FRAME_MSPRINTER_CHARHEIGHT): Unswap
8477 FRAME_MSPRINTER_CHARWIDTH and FRAME_MSPRINTER_CHARHEIGHT
8479 2001-05-17 Andrew Begel <abegel@eecs.berkeley.edu>
8481 * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Add needed cast.
8483 2001-03-31 Mike Sperber <mike@xemacs.org>
8485 * search.c (Freplace_match): Support FSF-style specification of
8486 match subexpression when applied to a buffer.
8488 2001-05-27 Karl M. Hegbloom <karlheg@hegbloom.net>
8490 * event-stream.c (is_scrollbar_event): add missing semicolon
8492 2001-05-22 Isaac Hollander <ysh@mindspring.com>
8494 * Makefile.in.in: Use TAR macro instead of hardcoding
8495 tar. Allows use of GNU tar instead of system tar
8497 2001-05-27 Karl M. Hegbloom <karlheg@hegbloom.net>
8499 * event-stream.c (is_scrollbar_event): add missing semicolon
8501 2001-05-17 Stephen J. Turnbull <stephen@xemacs.org>
8503 * XEmacs 21.4.3 "Academic Rigor" is released.
8505 2001-05-17 Stephen J. Turnbull <stephen@xemacs.org>
8507 * regex.c: Define DECLARE_NOTHING when "lisp.h" is not included.
8509 2001-05-08 Yoshiki Hayashi <yoshiki@xemacs.org>
8511 * buffer.c (Vcase_fold_search): Remove obsolete
8512 comment about non ASCII case-fold-search. This
8513 bug has been fixed by case-table changes.
8515 2001-05-11 Stephen J. Turnbull <stephen@xemacs.org>
8517 * event-msw.c: Restore include of events-mod.h.
8519 2001-04-22 zhaoway <zw@debian.org>
8521 * event-stream.c (is_scrollbar_event): Noop returning 0 if
8524 2001-05-10 Stephen J. Turnbull <stephen@xemacs.org>
8526 * XEmacs 21.4.2 "Developer-Friendly Unix APIs" is released.
8528 2001-05-08 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp>
8530 * mule-charset.c (Fmake_charset): Add missing else.
8532 2001-04-23 Ben Wing <ben@xemacs.org>
8534 * event-msw.c (FAKE_MOD_QUIT):
8535 * event-msw.c (mswindows_dequeue_dispatch_event):
8536 * event-msw.c (mswindows_wnd_proc):
8537 * event-msw.c (emacs_mswindows_quit_p):
8538 Get critical quit working.
8540 2001-05-05 Ben Wing <ben@xemacs.org>
8544 * device-msw.c (mswindows_get_default_margin):
8545 * frame-msw.c (mswindows_size_frame_internal):
8546 * frame-msw.c (msprinter_init_frame_1):
8547 * frame-msw.c (vars_of_frame_mswindows):
8548 Change top/bottom margin defaults to 0.5 inches.
8550 2001-05-01 Martin Buchholz <martin@xemacs.org>
8552 Fix link error with gcc 3.0 on Linux.
8553 * terminfo.c (UP): Remove.
8554 * terminfo.c (BC): Remove.
8555 * terminfo.c (PC): Remove.
8556 They weren't used, and in any case, these symbols should be
8557 defined in the *library*.
8559 2001-05-03 Martin Buchholz <martin@xemacs.org>
8561 * s/aix4.h: Fix crash with xlc -O3.
8562 Improve comment explaining how -O3 works.
8564 2001-04-15 Ben Wing <ben@xemacs.org>
8567 * event-stream.c (Fnext_event):
8568 * event-stream.c (is_scrollbar_event):
8569 * event-stream.c (execute_command_event):
8570 Better fix for Yoshiki's `C-x @ h <scrollbar-drag> x causes a
8571 crash' problem. His fix introduces other problems. We filter
8572 out scrollbar events specifically, making them somewhat invisible
8573 to command-building, and not appearing in `this-command-keys'.
8574 More work is still needed (see comments in event-stream.c), but
8575 this fixes all the major problems.
8577 2001-04-20 Ben Wing <ben@xemacs.org>
8579 * .cvsignore: Added stuff for Windows.
8581 2001-04-28 Ben Wing <ben@xemacs.org>
8583 * buffer.c (Ferase_buffer):
8584 * editfns.c (buffer_insert1):
8585 * editfns.c (Finsert_before_markers):
8586 * editfns.c (Finsert_string):
8587 * editfns.c (Finsert_char):
8588 * editfns.c (Fdelete_region):
8589 * editfns.c (Fwiden):
8590 * editfns.c (Fnarrow_to_region):
8591 remove bogus lines setting zmacs_region_stays to 0.
8593 2001-04-15 Gunnar Evermann <ge204@eng.cam.ac.uk>
8595 * process-unix.c (unix_open_network_stream): If connect() fails
8596 invalidate file descriptor after closing it.
8598 2001-03-08 Mike Alexander <mta@arbortext.com>
8600 * event-msw.c (mswindows_need_event_in_modal_loop):
8601 Don't dispatch a message if we didn't get one.
8602 (mswindows_need_event):
8603 Terminate the correct process when one exits instead of the first
8604 one on Vprocess_list and look for process termination when in
8605 mswindows_protect_modal_loop.
8607 2001-04-19 Stephen J. Turnbull <stephen@xemacs.org>
8609 * XEmacs 21.4.1 "Copyleft" is released.
8611 2001-04-19 Glynn Clements <glynn.clements@virgin.net>
8613 * input-method-motif.c (XIM_delete_frame): New callback.
8614 (XIM_init_frame): Register it.
8616 2001-04-16 Stephen J. Turnbull <stephen@xemacs.org>
8618 * XEmacs 21.4.0 "Solid Vapor" is released.
8620 2001-04-15 Ben Wing <ben@xemacs.org>
8622 * cmdloop.c (call_command_loop):
8623 Fix braino in bit-rotting code.
8625 2001-04-07 Hrvoje Niksic <hniksic@arsdigita.com>
8627 * extents.c (Fset_extent_endpoints): Force creation of extent info
8628 in buffer_or_string.
8630 * extents.c (process_extents_for_insertion_mapper): Correctly
8631 check for open-open zero-length extents.
8633 2001-04-16 Stephen J. Turnbull <stephen@xemacs.org>
8635 * lisp.h: New typedefs Memory_count, Element_count.
8638 Sign-compare warning elimination: several unsigned -> signed.
8639 Based on work by Ben Wing <ben@xemacs.org>.
8641 2001-04-14 Stephen J. Turnbull <stephen@xemacs.org>
8643 * XEmacs 21.2.47 "Zephir" is released.
8645 2001-04-02 Jan Vroonhof <jan@xemacs.org>
8647 * redisplay.c (add_bufbyte_string_runes): Update data->bytepos
8649 2001-04-03 Mike Sperber <mike@xemacs.org>
8651 * search.c: Revert previous patch due because of release.
8653 2001-03-30 Ben Wing <ben@xemacs.org>
8656 Add missing killpg prototype.
8659 Add a comment about fixing problems when a new entry is added
8662 * frame-msw.c (mswindows_init_frame_1):
8663 Fix compile warnings.
8665 * menubar.c (vars_of_menubar):
8666 Provide `menu-accelerator-support' to indicate that we properly
8667 support %_ in menu specifications, so that package code can
8668 conditionalize on this (and remove %_ from menu specifications
8673 * scrollbar-msw.c (can_scroll):
8675 Fix handling of mouse wheel under Windows to follow standards --
8676 now scrolls window under pointer, not selected window.
8678 2001-03-31 Mike Sperber <mike@xemacs.org>
8680 * search.c (Freplace_match): Support FSF-style specification of
8681 match subexpression when applied to a buffer.
8683 2001-03-15 Martin Buchholz <martin@xemacs.org>
8685 * keymap.c (Fmap_keymap): map-keymap explicitly allows a mapping
8686 function to modify KEYMAP, so map over a copy of the hash table.
8688 2001-03-21 Martin Buchholz <martin@xemacs.org>
8690 * XEmacs 21.2.46 "Urania" is released.
8692 2001-03-20 Dan Holmsand <dan@eyebee.com>
8694 * realpath.c (xrealpath): Make file-truename work with symlinks to
8695 /cygdrive paths on cygwin. Always lowercase drive-letters on
8697 (cygwin_readlink): Don't try to find canonical filename unless
8700 2001-03-15 Stephen J. Turnbull <stephen@xemacs.org>
8702 * ChangeLog: Log GTK merge.
8708 Revert gratuitous whitespace changes from GTK merge.
8710 * emacs.c: Document end of complex #ifdef @ l. 1495.
8713 2001-03-12 Andy Piper <andy@xemacs.org>
8715 * mingw32.h: unfortunately cygnus changed mingw32 -> mingw so we
8716 have to do likewise.
8718 2001-03-12 Andy Piper <andy@xemacs.org>
8720 * sysdep.c: we only support mingw now.
8722 2001-03-09 Andy Piper <andy@xemacs.org>
8724 * unexcw.c (copy_executable_and_dump_data_section): making approx
8725 overrun a warning only.
8727 2001-03-10 William M. Perry <wmperry@aventail.com>
8729 * faces.c (complex_vars_of_faces): Rewrote the font mucking to
8730 satisfy Stephen's identical-after-cpp plea.
8732 2001-03-02 Ben Wing <ben@xemacs.org>
8735 * cmds.c (Fforward_char):
8739 Augment documentation of the most common motion commands to make
8740 note of the shifted-motion support.
8742 2001-03-02 Ben Wing <ben@xemacs.org>
8744 * nt.c (mswindows_fstat):
8745 * nt.c (mswindows_stat):
8746 * search.c (boyer_moore):
8747 Fix compile warnings under Windows.
8749 * sysdep.c (sys_readdir):
8750 Fix buggy filename-conversion code under Mule.
8752 2001-03-09 William M. Perry <wmperry@aventail.com>
8774 * redisplay-output.c:
8780 The Great GTK Merge.
8787 * emacs-widget-accessors.c:
8801 * native-gtk-toolbar.c:
8812 The Great GTK Merge: new files.
8814 2001-02-26 Ben Wing <ben@xemacs.org>
8816 Reapplied Lstream change.
8818 2001-02-26 Ben Wing <ben@xemacs.org>
8820 Undid the last change, since it is more controversial than I
8821 thought. It should be back in at some point soon.
8823 2001-02-25 Ben Wing <ben@xemacs.org>
8826 * callproc.c (Fold_call_process_internal):
8827 * event-msw.c (ntpipe_slurp_reader):
8828 * event-msw.c (ntpipe_shove_writer):
8829 * event-msw.c (winsock_reader):
8830 * event-msw.c (winsock_writer):
8832 * file-coding.c (detect_eol_type):
8833 * file-coding.c (detect_coding_type):
8834 * file-coding.c (determine_real_coding_system):
8835 * file-coding.c (Fdetect_coding_region):
8836 * file-coding.c (decoding_reader):
8837 * file-coding.c (decoding_writer):
8838 * file-coding.c (mule_decode):
8839 * file-coding.c (Fdecode_coding_region):
8840 * file-coding.c (encoding_reader):
8841 * file-coding.c (encoding_writer):
8842 * file-coding.c (mule_encode):
8843 * file-coding.c (Fencode_coding_region):
8844 * file-coding.c (detect_coding_sjis):
8845 * file-coding.c (decode_coding_sjis):
8846 * file-coding.c (encode_coding_sjis):
8847 * file-coding.c (detect_coding_big5):
8848 * file-coding.c (decode_coding_big5):
8849 * file-coding.c (encode_coding_big5):
8850 * file-coding.c (detect_coding_ucs4):
8851 * file-coding.c (decode_coding_ucs4):
8852 * file-coding.c (encode_coding_ucs4):
8853 * file-coding.c (detect_coding_utf8):
8854 * file-coding.c (decode_coding_utf8):
8855 * file-coding.c (encode_coding_utf8):
8856 * file-coding.c (detect_coding_iso2022):
8857 * file-coding.c (decode_coding_iso2022):
8858 * file-coding.c (encode_coding_iso2022):
8859 * file-coding.c (decode_coding_no_conversion):
8860 * file-coding.c (encode_coding_no_conversion):
8861 * glyphs-x.c (write_lisp_string_to_temp_file):
8862 * gpmevent.c (tty_get_foreign_selection):
8865 * lstream.c (Lstream_flush_out):
8866 * lstream.c (Lstream_adding):
8867 * lstream.c (Lstream_write_1):
8868 * lstream.c (Lstream_write):
8869 * lstream.c (Lstream_raw_read):
8870 * lstream.c (Lstream_read_more):
8871 * lstream.c (Lstream_read):
8872 * lstream.c (Lstream_unread):
8873 * lstream.c (Lstream_fputc):
8874 * lstream.c (stdio_reader):
8875 * lstream.c (stdio_writer):
8876 * lstream.c (filedesc_reader):
8877 * lstream.c (filedesc_writer):
8878 * lstream.c (lisp_string_reader):
8879 * lstream.c (struct fixed_buffer_stream):
8880 * lstream.c (make_fixed_buffer_input_stream):
8881 * lstream.c (make_fixed_buffer_output_stream):
8882 * lstream.c (fixed_buffer_reader):
8883 * lstream.c (fixed_buffer_writer):
8884 * lstream.c (struct resizing_buffer_stream):
8885 * lstream.c (resizing_buffer_writer):
8886 * lstream.c (dynarr_writer):
8887 * lstream.c (lisp_buffer_reader):
8888 * lstream.c (lisp_buffer_writer):
8890 * lstream.h (lstream_implementation):
8891 * lstream.h (struct lstream):
8893 * process-nt.c (nt_send_process):
8894 * process-unix.c (unix_send_process):
8896 Correct Lstream lossage due to mixing of signed and unsigned
8897 quantities. All Lstream uses of size_t and ssize_t are now a
8898 single signed data type Lstream_data_count. This fixes problems
8899 under Windows with sending large quantities of data to a process,
8900 and may well fix other subtle bugs.
8902 2001-02-23 Martin Buchholz <martin@xemacs.org>
8904 * XEmacs 21.2.45 "Thelxepeia" is released.
8906 2001-02-21 Martin Buchholz <martin@xemacs.org>
8908 * lisp-union.h (XSETINT):
8911 Reverse previous change of 2001-02-06.
8913 2001-02-20 Matt Tucker <tuck@whistlingfish.net>
8915 Fix `VALID_BYTIND_P' crashes in regex.c when using narrowed
8917 * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
8918 * syntax.h (SYNTAX_CACHE_OBJECT_BYTE_TO_CHAR):
8919 Add `BI_BUF_BEGV' to bytepos before calculating bufpos.
8920 * regex.c (POS_AS_IN_BUFFER): removed
8921 * regex.c (re_search_2):
8922 * regex.c (re_match_2):
8923 Don't use an offset of 1 when calculating buffer positions, since
8924 `BI_BUF_BEGV' does it already.
8926 2001-02-18 Wim Dumon <wim@easics.be>
8928 * insdel.c (prepare_to_modify_buffer): Also check for
8929 supersession when clash-detection is enabled.
8931 2001-02-17 Matt Tucker <tuck@whistlingfish.net>
8933 * regex.c (re_match_2_internal):
8934 Convert temp characters from 'const unsigned char' to 're_char'.
8935 Fix crashing bug with extended characters under mule.
8936 * syntax.c (Qsyntax_table): Moved from vars_of_syntax to
8937 syms_of_syntax. Use defsymbol to define. Fixes hanging bug with
8938 font-lock, pdump, and new syntax-table code.
8939 * syntax.c (find_start_of_comment):
8940 (find_end_of_comment):
8942 Fix crashing bugs involving moving beyond end of buffer.
8943 * syntax.c (find_start_of_comment):
8944 Fixed logic to allow proper detection of cases where the same
8945 character is used to end both a two-char comment start and a
8946 two-char comment end sequence. Fixes `(forward-comment -1)'.
8947 * syntax.c (find_start_of_comment):
8948 Return position just past last comment-end character for all cases
8949 (previously was only done for two-char comment-end sequences).
8950 * syntax.c (forward-comment):
8951 Take value returned from `find_end_of_comment', rather than
8953 * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
8954 Properly deal with BUFFERP (syntax_cache.object)
8956 2001-02-17 Martin Buchholz <martin@xemacs.org>
8958 * alloc.c (Fgarbage_collect):
8959 * alloc.c (make_bit_vector_from_byte_vector):
8960 -Wsign-compare-correctness.
8962 2001-02-16 Martin Buchholz <martin@xemacs.org>
8964 * lisp-union.h (XSETINT): Eliminate unnecessary temp var.
8965 (XSETCHAR): Likewise.
8966 (XSETOBJ): Likewise.
8968 2001-02-15 Martin Buchholz <martin@xemacs.org>
8970 * mule-canna.c (canna-func-delete_previous):
8971 Rename to canna-func-delete-previous.
8973 2001-02-14 Martin Buchholz <martin@xemacs.org>
8975 * mule-ccl.c (ccl_driver): Warning suppression. Use countof.
8977 2001-02-13 Matt Tucker <tuck@whistlingfish.net>
8979 * font-lock.c (find_context): Fix C++ compile errors introduced by
8982 2001-02-13 Martin Buchholz <martin@xemacs.org>
8984 * s/aix4.h: Later versions of IBM C compiler need a bug workaround
8985 pragma, but earlier ones barf on the same pragma.
8987 2001-02-06 Mike Sperber <mike@xemacs.org>
8989 * emacs.c (complex_vars_of_emacs): Add `mule-lisp-directory' and
8990 `configure-mule-lisp-directory'.
8992 2001-02-12 Martin Buchholz <martin@xemacs.org>
8994 Make sure dump-id.c is compiled in the same way as other .c's.
8995 Fixes pdump compilation failure with HP's cc, which defaults to K&R.
8996 * dump-id.h: Remove.
8997 * emacs.c: Move dump-id.h into dumper.h.
8998 * dumper.h: Move dump-id.h into dumper.h.
9000 Use standard .c.o rule for building dump-id.o.
9001 Remove preprocessor flags from link command.
9002 Add dump-id.o to ${otherobjs} if PDUMP.
9004 2001-02-07 Matt Tucker <tuck@whistlingfish.net>
9006 Port FSF 20.7 syntax table improvements.
9010 Fixups for new syntax table stuff.
9011 * dired.c: Include syntax.c.
9012 (Fdirectory_files): Initialize regex_match_object and
9014 * extents.h: EXFUN Fnext_extent_change, Fprevious_extent_change,
9015 and Fget_char_property.
9017 Use ported FSF 20.7 syntax table improvements.
9022 2001-02-09 Martin Buchholz <martin@xemacs.org>
9024 * regex.c (Boolean): Renamed to `re_bool', to avoid conflict with
9025 Unixware's enum boolean from sys/types.h.
9027 2001-02-10 Martin Buchholz <martin@xemacs.org>
9029 Fix support for building with latest Purify.
9030 * Makefile.in.in (PURIFY_LIBS): Remove thread flags.
9031 (PURIFY_FLAGS): Likewise.
9033 2001-02-09 Martin Buchholz <martin@xemacs.org>
9035 * fileio.c (lisp_string_set_file_times): New.
9036 * fileio.c (Fcopy_file): Use it.
9038 (copy-file filename non-ascii-filename t t)
9039 ==> No such file or directory, non-ascii-filename
9041 2001-02-10 Martin Buchholz <martin@xemacs.org>
9043 * glyphs-x.c (generate_cursor_fg_bg): Avoid a warning.
9044 USHRT_MAX seems clearer than ~0 anyways.
9046 2001-02-09 Martin Buchholz <martin@xemacs.org>
9048 dumper improvements. Inspired by Olivier.
9049 * dumper.c (pdump_max_align): New.
9050 * dumper.c (pdump_add_entry): Use pdump_max_align.
9051 * dumper.c (pdump_get_entry_list): Likewise.
9052 * dumper.c (pdump_scan_by_alignment): Likewise.
9053 Don't iterate through unnecessary alignments.
9054 * dumper.c (pdump_file_get): No need to align result of malloc().
9055 * dumper.c (pdump_mallocadr): Remove.
9056 The result of malloc() is guaranteed to be maximally aligned.
9057 * dumper.c: s/elmt/elt/g;
9058 * dumper.c (pdump_object_table): Allocate dynamically, not statically.
9059 * dumper.c (pdump_alert_undump_object): Likewise.
9060 * dumper.c (pdump_align_table):
9061 Don't support alignments > 64.
9062 Store ALIGNOF's, not shift counts, in table.
9064 2001-02-09 Martin Buchholz <martin@xemacs.org>
9066 * s/mingw32.h (HAVE_STRUCT_UTIMBUF): Remove.
9067 * s/windowsnt.h (HAVE_STRUCT_UTIMBUF): Remove.
9068 * systime.h: Use HAVE_UTIME.
9069 * sysdep.c (struct utimbuf): Remove.
9070 * sysdep.c (set_file_times): Prefer utime() to utimes().
9071 * config.h.in (HAVE_UTIME): New.
9072 * config.h.in (HAVE_UTIME_H): Remove.
9073 * config.h.in (HAVE_STRUCT_UTIMBUF): Remove.
9075 2001-02-09 Martin Buchholz <martin@xemacs.org>
9077 * s/aix4.h: Hide #pragmas inside #ifndef NOT_C_CODE.
9079 2001-02-08 Martin Buchholz <martin@xemacs.org>
9081 * s/irix6-0.h: Use the standard system memmove, not bcopy.
9083 2001-02-08 Martin Buchholz <martin@xemacs.org>
9085 * XEmacs 21.2.44 "Thalia" is released.
9087 2001-02-06 Martin Buchholz <martin@xemacs.org>
9089 Fixes crashes in kill-emacs on some systems.
9090 * process-unix.c (unix_kill_child_process):
9091 It's OK for kill() to fail with ESRCH.
9093 2001-02-07 Martin Buchholz <martin@xemacs.org>
9095 Contortions to make .gdbinit tricks work on most systems.
9096 * alloc.c (dbg_inhibit_dbg_symbol_deletion): Keep debugger info.
9097 * alloc.c (dbg_valmask): Make non-const.
9098 * alloc.c (dbg_typemask): Make non-const.
9099 * alloc.c (dbg_USE_UNION_TYPE): Make non-const.
9100 * alloc.c (dbg_valbits): Make non-const.
9101 * alloc.c (dbg_gctypebits): Make non-const.
9102 * .gdbinit (decode_object): Make it work with AIX cc.
9104 2001-02-06 Martin Buchholz <martin@xemacs.org>
9106 * elhash.c (make_general_lisp_hash_table):
9107 Use simpler and more efficient calloc to clear entries.
9109 2001-02-07 Martin Buchholz <martin@xemacs.org>
9111 * window.c (window_scroll): Work around an AIX C compiler bug.
9112 Fixes 'scroll-up' does nothing problem with xlC.
9114 2001-02-05 Martin Buchholz <martin@xemacs.org>
9116 * .gdbinit: Remove obsolete comment.
9118 2001-01-31 Mike Alexander <mta@arbortext.com>
9120 * select.c (Fown_selection_internal): Set owned_p for device
9123 2001-02-01 Martin Buchholz <martin@xemacs.org>
9126 "not" cannot be used as a macro name as it is an operator in C++
9127 * config.h.in: Stop #defining `not'.
9128 * chartab.c (check_category_char): not ==> not_p
9129 * chartab.h: Likewise.
9130 * regex.c (re_match_2_internal): Likewise.
9132 2001-02-02 Martin Buchholz <martin@xemacs.org>
9134 * lisp-disunion.h: Fix up comments.
9136 2001-01-31 Martin Buchholz <martin@xemacs.org>
9138 * keymap.c (define_key_check_and_coerce_keysym):
9140 Support mouse-6 and mouse-7 bindings in the obvious way.
9142 2001-02-01 Martin Buchholz <martin@xemacs.org>
9144 * m/hp9000s300.h (UNEXEC): Check for HPUX, not !BSD.
9146 2001-01-30 Martin Buchholz <martin@xemacs.org>
9148 Previous patch changing DEFVAR_INT to use EMACS_INT was incomplete.
9149 Previous patch missed DEFVAR_INT_MAGIC.
9150 Make sure future DEFVAR_foo use correct types.
9151 * symeval.h (DEFVAR_SYMVAL_FWD_FIXNUM): New.
9152 * (DEFVAR_SYMVAL_FWD_INT): Add type checking.
9153 * (DEFVAR_SYMVAL_FWD_OBJECT): Add type checking.
9154 * (DEFVAR_INT_MAGIC): Use DEFVAR_SYMVAL_FWD_FIXNUM.
9155 * (DEFVAR_INT): Likewise.
9156 * redisplay.c (vertical_clip): Should be of type Fixnum.
9157 * redisplay.c (horizontal_clip): Likewise.
9158 * lisp.h (dump_add_opaque_int): New.
9159 (dump_add_opaque_fixnum): New.
9161 2001-01-29 Andy Piper <andy@xemacs.org>
9163 * glyphs-widget.c (check_valid_int_or_function): allow symbols
9164 since they can be eval'ed
9166 2001-01-29 Martin Buchholz <martin@xemacs.org>
9168 * lisp.h (ALIGNOF): Make it work on non-gcc C++ compilers.
9169 Oops, XEmacs redefines `class'. Use `typename' instead.
9171 2001-01-28 Martin Buchholz <martin@xemacs.org>
9173 * dumper.c: Fix C++ compile errors.
9175 2001-01-29 Martin Buchholz <martin@xemacs.org>
9177 * tparam.c: Use correct prototypes.
9179 2001-01-28 Martin Buchholz <martin@xemacs.org>
9181 * sysproc.h: #include util.h for NetBSD's openpty.
9183 2001-01-27 Martin Buchholz <martin@xemacs.org>
9185 More 64-bit correctness.
9186 The C value of a DEFVAR_INT should be of type EMACS_INT, not int.
9187 Use a typedef `fixnum' for the type used for DEFVAR_INT.
9189 This finally finishes the 64-bit SGI port.
9190 Fixes things like (let ((gc-cons-threshold most-positive-fixnum)) ...).
9191 * symbols.c: Fix up comments and type casts.
9192 * symbols.c (do_symval_forwarding): s/int/Fixnum/g
9193 * symbols.c (store_symval_forwarding): s/int/Fixnum/g
9194 * symeval.h (Fixnum): New type.
9195 * symeval.h (symbol_value_type): Fix up comment.
9211 * mule-canna.c: A million DEFVAR_INTs here...
9212 * mule-canna.c (count_char): s/int */Fixnum */g in arglist.
9225 s/int/Fixnum/g in DEFVAR_INT declarations.
9227 2001-01-26 Martin Buchholz <martin@xemacs.org>
9229 Port pdump to SGI alignment-sensitive environment.
9230 Lisp Object sizeof methods now return aligned sizes. Rely on that.
9231 Eliminate is_lrecord since Lisp_Objects sizeof methods are now all
9233 Define and use aligned reading and writing macros.
9234 Use buffered stdio instead of posix i/o for faster dumping.
9235 Eliminate kludgy 256 byte space for header.
9236 Read and write from dump file using structs for alignment safety.
9237 * dumper.c (pdump_align_stream): New.
9238 * dumper.c (PDUMP_ALIGN_OUTPUT): New.
9239 * dumper.c (PDUMP_READ_ALIGNED): New.
9240 * dumper.c (PDUMP_WRITE_ALIGNED): New.
9241 * dumper.c (pdump_static_Lisp_Object): New struct.
9242 * dumper.c (pdump_static_pointer): New struct.
9243 * dumper.c (pdump_entry_list_element): Remove is_lrecord member.
9244 * dumper.c (pdump_add_entry): Remove is_lrecord parameter.
9245 * dumper.c (pdump_dump_data): Rely on sizeof method alignment.
9246 * dumper.c (pdump_allocate_offset): Rely on sizeof method alignment.
9248 * dumper.c (pdump_backtrace):
9249 * dumper.c (pdump_get_indirect_count):
9250 * dumper.c (pdump_register_object):
9251 * dumper.c (pdump_register_struct):
9252 * dumper.c (pdump_reloc_one):
9253 * dumper.c (pdump_scan_by_alignment):
9254 * dumper.c (pdump_dump_from_root_struct_ptrs):
9255 * dumper.c (pdump_dump_opaques):
9256 * dumper.c (pdump_dump_rtables):
9257 * dumper.c (pdump_dump_from_root_objects):
9259 * dumper.c (pdump_load_finish):
9260 Use aligned reading and writing.
9262 * dumper.c (pdump_free): Make static.
9263 * dumper.c (pdump_hFile): Likewise.
9264 * dumper.c (pdump_hMap): Likewise.
9266 2001-01-26 Martin Buchholz <martin@xemacs.org>
9268 * XEmacs 21.2.43 "Terspichore" is released.
9270 2001-01-25 Martin Buchholz <martin@xemacs.org>
9272 Type fiddling for window_config.saved_windows_count
9273 * window.c (struct window_config):
9274 Make saved_windows_count member unsigned.
9275 * window.c (sizeof_window_config_for_n_windows):
9276 Make parameter unsigned.
9277 * window.c (mark_window_config):
9278 * window.c (window_config_equal):
9279 * window.c (free_window_configuration):
9280 * window.c (Fset_window_configuration):
9281 * window.c (count_windows):
9282 * window.c (Fcurrent_window_configuration):
9283 * window.c (reinit_vars_of_window):
9284 Update all callers and users.
9286 2001-01-25 Martin Buchholz <martin@xemacs.org>
9288 Alignment correctness for flexible arrays.
9289 * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF):
9290 Make alignment-correct. Add interesting comments.
9291 * alloc.c (size_vector):
9292 * alloc.c (make_vector_internal):
9293 * alloc.c (make_bit_vector_internal):
9294 * alloc.c (sweep_bit_vectors_1):
9295 * fns.c (size_bit_vector):
9296 Update all callers of FLEXIBLE_ARRAY_STRUCT_SIZEOF to add new arg.
9297 * window.c (sizeof_window_config_for_n_windows):
9298 Use FLEXIBLE_ARRAY_STRUCT_SIZEOF.
9300 2001-01-24 Martin Buchholz <martin@xemacs.org>
9302 * lread.c (read1): Rename `fexp', which is #defined in SGI's math.h
9304 2001-01-23 Andy Piper <andy@xemacs.org>
9306 * select.c (Fown_selection_internal): pass owned_p
9308 * select-msw.c (mswindows_own_selection): New Signature.
9310 * console.h (struct console_methods): add owned_p to
9313 * select-x.c (x_own_selection): pass owned_p
9314 (hack_motif_clipboard_selection): use owned_p
9315 (vars_of_select_x): new variable -
9316 x_selection_strict_motif_ownership.
9318 2001-01-23 Martin Buchholz <martin@xemacs.org>
9320 * specifier.h (specifier_data_offset): Remove pointless parens.
9321 * glyphs.h (IMAGE_SPECIFIER_DATA): Likewise.
9323 2001-01-24 Martin Buchholz <martin@xemacs.org>
9325 Make Lisp_Object sizeof methods be alignment-correct.
9326 pdump must restore objects to the same alignment as the C compiler
9327 assumes. It really matters on SGIs.
9328 * lstream.c (aligned_sizeof_lstream): New.
9329 (sizeof_lstream): Use aligned_sizeof_lstream.
9330 (Lstream_new): Likewise.
9331 * opaque.c (aligned_sizeof_opaque): New.
9332 (sizeof_opaque): Use aligned_sizeof_opaque.
9333 (make_opaque): Likewise.
9334 * specifier.c (aligned_sizeof_specifier): New.
9335 (sizeof_specifier): Use aligned_sizeof_specifier.
9336 (make_specifier_internal): Likewise.
9338 2001-01-23 Martin Buchholz <martin@xemacs.org>
9340 * lstream.h (struct lstream): Use max_align_t for trailing data.
9341 * specifier.h (struct Lisp_Specifier): Likewise.
9343 2001-01-22 Martin Buchholz <martin@xemacs.org>
9345 * mule-ccl.c (CCL_Extension): Renamed from CCL_Extention.
9346 (CCL_SUCCESS): Kludge to prevent Sun cc compiler warnings.
9347 (CCL_SUSPEND): Likewise.
9348 (CCL_INVALID_CMD): Likewise.
9349 (CCL_CALL_FOR_MAP_INSTRUCTION): Likewise.
9350 (ccl_driver): Likewise.
9351 (CCL_WRITE_CHAR): Macro hygiene.
9352 (CCL_WRITE_STRING): Macro hygiene.
9354 2001-01-22 Martin Buchholz <martin@xemacs.org>
9356 Port "portable" dumper to SunOS 4 and HP-UX.
9357 * s/aix4.h (AIX4): Move MAP_FAILED definition elsewhere.
9358 * emacs.c (main): PDUMP implies no RUN_TIME_REMAP.
9359 * dumper.c (pdump_file_get): Define MAP_FAILED if not already defined.
9361 2001-01-22 Martin Buchholz <martin@xemacs.org>
9363 * lisp.h (ALIGNOF): A better definition for C++.
9365 2001-01-20 Martin Buchholz <martin@xemacs.org>
9368 Fix printf warnings: int format, long int arg.
9369 * regex.c (DECLARE_DESTINATION): Use DECLARE_NOTHING.
9370 (PUSH_FAILURE_POINT): Use correct printf formats.
9371 (POP_FAILURE_POINT): Use correct printf formats.
9372 Use do {...} while (0)
9374 2001-01-20 Martin Buchholz <martin@xemacs.org>
9376 * XEmacs 21.2.42 "Poseidon" is released.
9378 2001-01-20 Martin Buchholz <martin@xemacs.org>
9380 * console-x.h: typo fix du jour. Remove #if 0'ed code.
9382 2001-01-19 Martin Buchholz <martin@xemacs.org>
9384 De-kludgify FIXED_TYPE free list frobbing.
9385 Fix crashes on 64-bit platforms introduced by my patch of 2001-01-13.
9386 * alloc.c (DECLARE_FIXED_TYPE_ALLOC): Use Lisp_Free.
9387 * alloc.c (ALLOCATE_FIXED_TYPE_1): Use new definitions.
9388 * alloc.c (Lisp_Free): New pseudo lisp object definition.
9389 * alloc.c (LRECORD_FREE_P): New.
9390 * alloc.c (MARK_LRECORD_AS_FREE): New.
9391 * alloc.c (MARK_LRECORD_AS_NOT_FREE): New.
9392 * alloc.c (STRUCT_FREE_P): Deleted.
9393 * alloc.c (MARK_STRUCT_AS_FREE): Deleted.
9394 * alloc.c (MARK_STRUCT_AS_NOT_FREE): Deleted.
9395 * alloc.c (STRING_CHARS_FREE_P): New.
9396 * alloc.c (MARK_STRING_CHARS_AS_FREE): New.
9397 * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): Use new definitions.
9398 * alloc.c (FREE_FIXED_TYPE): Use new definitions.
9399 * alloc.c (STRING_CHARS_FREE_P): Use new definitions.
9400 * alloc.c (resize_string): Use new definitions.
9401 * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Use new definitions.
9402 * alloc.c (verify_string_chars_integrity): Use new definitions.
9403 * alloc.c (compact_string_chars): Use new definitions.
9404 * alloc.c: Update monster comments.
9405 * lrecord.h (lrecord_type): Add some new lrecord types for
9408 2001-01-18 Martin Buchholz <martin@xemacs.org>
9410 Improve alignment hackery.
9411 * lisp.h (ALIGNOF): Better definition for the non-gcc case.
9412 (max_align_t): Moved from opaque.h - general purpose.
9413 (ALIGN_PTR): Use size_t, not long.
9414 * opaque.h (max_align_t): Move to lisp.h.
9416 2001-01-18 Norbert Koch <nk@LF.net>
9418 * gui.h: Fix and add prototypes to fix build problems.
9420 2001-01-18 Martin Buchholz <martin@xemacs.org>
9422 temacs is going away, so `dump-temacs' is now a bad name.
9423 * .dbxrc (dump-temacs): Rename to `dmp'.
9424 * .gdbinit (dump-temacs): Rename to `dmp'.
9426 2001-01-17 Andy Piper <andy@xemacs.org>
9428 * glyphs.c (print_image_instance): comment to make martin happy.
9430 * glyphs-x.c (x_redisplay_widget): update faces after a frame
9433 * glyphs-msw.c (mswindows_redisplay_widget): add code to cope with
9435 (mswindows_tab_control_redisplay): warning suppression.
9437 * glyphs-widget.c (widget_update): re-write to cope with updated
9439 (widget_instantiate): use new gui_item functions.
9440 (tab_control_update): deleted.
9441 (progress_gauge_update): deleted.
9442 (image_instantiator_progress_guage): take out update reference.
9443 (image_instantiator_tree_view): ditto.
9444 (image_instantiator_tab_control): ditto.
9446 * gui.c (widget_gui_parse_item_keywords): new function. Do things
9448 (gui_item_add_keyval_pair): re-write to cope with descriptors and
9449 return whether anything was changed.
9450 (update_gui_item_keywords): as it sounds.
9452 * gui.h: declare widget_gui_parse_item_keywords.
9454 * fns.c (safe_copy_tree): new function taken from Fcopy_tree.
9455 (Fcopy_tree): use it. Stops infloop death in bogus instantiators.
9457 2001-01-17 Martin Buchholz <martin@xemacs.org>
9459 * XEmacs 21.2.41 "Polyhymnia" is released.
9461 2001-01-16 Didier Verna <didier@xemacs.org>
9463 * glyphs.c (image_instantiate): don't use fallbacks when
9464 instantiating a face's background pixmap by inheritance.
9466 2001-01-14 Mike Sperber <mike@xemacs.org>
9468 * sysdep.c (start_of_data): PDUMP implies ORDINARY_LINK.
9469 Conditionalize accordingly.
9471 2001-01-16 Martin Buchholz <martin@xemacs.org>
9473 * dumper.c (pdump_file_get): Fix a compiler warning.
9475 2001-01-15 Martin Buchholz <martin@xemacs.org>
9477 Make Purify happy when pdumping.
9478 * symbols.c (Fmake_variable_buffer_local): Make Purify happy, by
9479 iniitalizing all bits of new lisp object memory.
9480 * symbols.c (Fmake_local_variable): Likewise.
9481 * symbols.c (Fdontusethis_set_symbol_value_handler): Likewise.
9482 * symbols.c (Fdefvaralias): Likewise.
9483 * mule-charset.c (vars_of_mule_charset): Likewise.
9485 2001-01-15 Martin Buchholz <martin@xemacs.org>
9486 Add the `-nd' flag when running pre-dump operations under the debugger.
9487 * .dbxrc (run-temacs): Add `-nd'.
9488 * .dbxrc (update-elc): Likewise.
9489 * .dbxrc (dump-temacs): Likewise.
9490 * .gdbinit (run-temacs): Likewise.
9491 * .gdbinit (check-temacs): Likewise.
9492 * .gdbinit (update-elc): Likewise.
9493 * .gdbinit (dump-temacs): Likewise.
9495 2001-01-14 Martin Buchholz <martin@xemacs.org>
9497 Allow building 64-bit executables on AIX with GNU malloc, e.g.
9498 export OBJECT_MODE=64
9499 configure --pdump --use-union-type=no
9500 * m/ibmrs6000.h (DATA_START): Define for 64-bit world.
9501 * gmalloc.c (__default_morecore): Remove pre-ANSI cruft.
9503 * miscplay.c (sndcnv8U_2mono):
9504 Avoid two uses of `++' in the same expression.
9505 Suppresses a GCC warning.
9507 2001-01-13 Martin Buchholz <martin@xemacs.org>
9509 Make sure future compilers don't miscompile alloc.c.
9511 (MARK_STRUCT_AS_FREE): Make aliasing-optimization-resistant.
9512 (MARK_STRUCT_AS_NOT_FREE): Make aliasing-optimization-resistant.
9514 2001-01-12 Martin Buchholz <martin@xemacs.org>
9516 * dumper.c: A little post-pdump-rename comment fixup.
9518 2001-01-09 Jerry James <james@eecs.ku.edu>
9520 * lisp-disunion.h: Change LISP_TO_CVOID arg to match its use.
9522 2001-01-13 Martin Buchholz <martin@xemacs.org>
9524 * *.[ch]: Globally rename symbols using the following `pdump-rename'
9528 (findn texi$; findn [ch]$) | xargs g -lw "$1" | xargs global-replace 's/(?<!_)\b'$1'\b(?!_)/'$2'/g'
9531 replace_symbol pdump_wire_lists pdump_weak_object_chains
9532 replace_symbol pdump_wire_list dump_add_weak_object_chain
9534 replace_symbol pdump_wires pdump_root_objects
9535 replace_symbol pdump_wire dump_add_root_object
9537 replace_symbol pdump_dump_wired pdump_dump_from_root_objects
9538 replace_symbol pdump_dump_structs pdump_dump_from_root_struct_ptrs
9540 replace_symbol dumpstructinfos pdump_root_struct_ptrs
9541 replace_symbol dumpstructinfo_dynarr pdump_root_struct_ptr_dynarr
9542 replace_symbol dumpstructinfo pdump_root_struct_ptr
9543 replace_symbol dumpstruct dump_add_root_struct_ptr
9545 replace_symbol dumpopaque dump_add_opaque
9546 replace_symbol dumpopaqueinfo_dynarr pdump_opaque_dynarr
9547 replace_symbol dumpopaqueinfos pdump_opaques
9548 replace_symbol dumpopaqueinfo pdump_opaque
9550 replace_symbol nb_structdump nb_root_struct_ptrs
9551 replace_symbol nb_opaquedump nb_opaques
9553 replace_symbol align_table pdump_align_table
9554 replace_symbol dump_header pdump_header
9556 replace_symbol DUMP_SIGNATURE_LEN PDUMP_SIGNATURE_LEN
9557 replace_symbol DUMP_SIGNATURE PDUMP_SIGNATURE
9560 2001-01-12 Martin Buchholz <martin@xemacs.org>
9562 * s/aix4.h: Keep the C for AIX compiler from overaggressively
9563 optimizing bytecount_to_charcount().
9565 2001-01-06 Golubev I. N. <gin@mo.msk.ru>
9568 (HAVE_DLFCN_H): Removed.
9569 * sysdll.c: Remove HAVE__DLOPEN, HAVE_DLFCN_H.
9571 2001-01-06 Martin Buchholz <martin@xemacs.org>
9573 Portable dumper maintainability improvements.
9574 * alloc.c (staticpro):
9575 * alloc.c (staticpro_nodump):
9576 * alloc.c (garbage_collect_1):
9577 * alloc.c (reinit_alloc_once_early):
9578 * alloc.c (init_alloc_once_early):
9579 * alloc.c: Move dumper functions to alloc.c.
9580 * dumper.c (pdump_backtrace):
9581 * dumper.c (pdump_dump_structs):
9582 * dumper.c (pdump_dump_opaques):
9583 * dumper.c (pdump_dump_rtables):
9584 * dumper.c (pdump_dump_wired):
9586 * dumper.c (pdump_load_check):
9587 * dumper.c (pdump_load_finish):
9588 * dumper.c (pdump_file_unmap):
9589 * dumper.c (pdump_file_get):
9590 * dumper.c (pdump_resource_free):
9591 * dumper.c (pdump_resource_get):
9592 * dumper.c (pdump_file_free):
9593 * dumper.c (pdump_file_try):
9594 * dumper.c (pdump_load):
9595 Remove fixed size limits on staticpro(), staticpro_nodump(),
9596 dumpopaque(), dumpstruct() by using Dynarrs instead of static C arrays.
9597 Remove custom code for dumping lrecord_implementations_table - use
9599 Remove (most of the) custom code for dumping staticpros - dump it
9600 like any other dynarr.
9602 * alloc.h: Removed. No longer useful, since dumper now more self-contained.
9603 * dumper.c: Moved functions from alloc.c.
9604 * alloc.c (dumpstruct): Moved to dumper.c.
9605 * alloc.c (dumpopaque): Likewise.
9606 * alloc.c (pdump_wire): Likewise.
9607 * alloc.c (pdump_wire_list): Likewise.
9609 * lisp.h (Dynarr_sizeof): New.
9610 * lisp.h (Dynarr_begin): New. Very slightly C++oid.
9611 * lisp.h (Dynarr_end): New. Very slightly C++oid.
9612 * lisp.h (Lisp_Object_ptr_dynarr): New. For staticpros.
9614 * lisp.h (dumpstruct): Define to nothing if not PDUMPing.
9615 * lisp.h (dumpopaque): ditto.
9616 * lisp.h (pdump_wire): ditto.
9617 * lisp.h (pdump_wire_list): ditto.
9619 2001-01-09 Martin Buchholz <martin@xemacs.org>
9621 * make-src-depend (PrintPatternDeps):
9622 Use `sort' to make output independent of perl version.
9624 2001-01-08 Martin Buchholz <martin@xemacs.org>
9627 * unexelf.c: Remove (never used) bogus Netbsd-specific cruft.
9628 * s/netbsd.c: Use unexelf.o if __ELF__ is defined.
9630 2001-01-03 Didier Verna <didier@xemacs.org>
9632 * event-stream.c (emacs_handle_focus_change_preliminary): ensure
9633 that `focus_frame' is alive before thinking of calling
9634 `redisplay_redraw_cursor' on it.
9636 2001-01-08 Martin Buchholz <martin@xemacs.org>
9638 * XEmacs 21.2.40 is released.
9640 2001-01-06 Golubev I. N. <gin@mo.msk.ru>
9642 * regex.c: Replace PREFETCH with REGEX_PREFETCH.
9644 2001-01-06 Martin Buchholz <martin@xemacs.org>
9646 * alloc.c (dbg_valmask): Make const.
9647 * alloc.c (dbg_typemask): Make const.
9648 * alloc.c (dbg_USE_UNION_TYPE): Make const.
9649 * alloc.c (dbg_valbits): Make const.
9650 * alloc.c (dbg_gctypebits): Make const.
9652 2001-01-06 Stephen J. Turnbull <stephen@xemacs.org>
9654 * redisplay-x.c (x_bevel_area):
9655 redisplay.h (struct rune):
9656 Typo fixes in comments.
9658 2001-01-05 Andy Piper <andy@xemacs.org>
9660 * glyphs-x.c (x_redisplay_widget): use size changed for offset
9663 * menubar.c (menubar_visible_p_changed): don't mark frame changed.
9665 2001-01-05 Martin Buchholz <martin@xemacs.org>
9667 * alloc.c (pure-bytes-used): Remove unused mendacious variable.
9669 * mule-ccl.c (stack_idx_of_map_multiple):
9670 Non const global data must not be initialized!
9671 Found by MIYASHITA Hisashi.
9673 2001-01-02 Andy Piper <andy@xemacs.org>
9675 * frame.c (change_frame_size): make sure frame size is always
9678 * glyphs.c (image_instance_layout): minor code reuse.
9680 * window.c (Fcurrent_window_configuration): revert previous
9683 2001-01-02 Martin Buchholz <martin@xemacs.org>
9686 * glyphs.c (make_image_instance_cache_hash_table): Use ANSI prototypes.
9688 2000-12-31 Andy Piper <andy@xemacs.org>
9690 * glyphs-x.c (x_unmap_subwindow): return focus to enclosing frame
9691 when widget gets unmapped.
9693 * event-Xt.c (emacs_Xt_handle_widget_losing_focus): new
9694 function. Make sure widgets losing focus don't just drop it.
9695 (handle_focus_event_1): record the widget with focus.
9697 2000-12-31 Andy Piper <andy@xemacs.org>
9699 * window.c (allocate_window): use
9700 make_image_instance_cache_hash_table.
9701 (make_dummy_parent): ditto.
9702 (Fset_window_configuration): ditto.
9704 * glyphs.h (INSTANTIATOR_TYPE): new macro. declare new functions.
9706 * glyphs.c (process_image_string_instantiator): use
9708 (get_image_instantiator_governing_domain): ditto.
9709 (normalize_image_instantiator): ditto.
9710 (instantiate_image_instantiator): ditto.
9711 (make_image_instance_1): ditto.
9712 (image_instantiate): ditto. Key on glyph *and* instantiator type.
9713 (instantiator_eq_equal): new function for use with instance hash
9715 (instantiator_eq_hash): ditto.
9716 (make_image_instance_cache_hash_table): create a suitable hash
9717 table for storing image instances.
9719 * elhash.h (hash_table_weakness): new internal weakness type
9720 HASH_TABLE_KEY_CAR_VALUE_WEAK.
9721 declare new functions.
9723 * elhash.c (finish_marking_weak_hash_tables): introduce yet
9724 another weakness type for glyphs.
9725 (make_standard_lisp_hash_table): new function split out from
9726 make_general_lisp_hash_table.
9727 (make_lisp_hash_table): call make_standard_lisp_hash_table.
9728 (hash_table_instantiate): ditto.
9729 (Fmake_hash_table): ditto.
9731 2000-12-31 Martin Buchholz <martin@xemacs.org>
9733 * XEmacs 21.2.39 is released.
9735 2000-12-29 Andy Piper <andy@xemacs.org>
9737 * menubar.c (menubar_visible_p_changed): signal the frame changed.
9739 * glyphs-x.c (x_redisplay_widget): Re-calculate widget offsets if
9740 the frame has changed so that we pick up geometry changes such as
9743 2000-12-28 Andy Piper <andy@xemacs.org>
9745 * lastfile.c (my_ebss): make a char array so we can pad the
9746 bss. Fixes cygwin unexec.
9748 * unexcw.c: invert BROKEN_GDB to NO_DEBUG.
9750 2000-12-26 Andy Piper <andy@xemacs.org>
9752 * event-Xt.c (emacs_Xt_force_event_pending): add some verbose
9753 comments and try and be more precise about a non-/SIGIO world.
9754 (emacs_Xt_event_pending_p): use XtAppPending under cygwin and non
9757 * redisplay-output.c (redisplay_normalize_glyph_area): make sure
9758 we don't normalize to zero width or height.
9760 2000-12-24 Andy Piper <andy@xemacs.org>
9762 * Makefile.in.in (ldflags): add -mwindows when appropriate.
9764 2000-08-18 Golubev I. N. <gin@mo.msk.ru>
9766 * s/sco5.h: SCO 5 has pty support.
9768 2000-07-20 Kazuyuki IENAGA <ienaga@xemacs.org>
9770 * input-method-xlib.c: supports both XIM_XLIB and USE_XFONTSET.
9771 input-method-xlib.c contains whole contents of input-method-xfs.c,
9772 so we can use input-method-xlib.c's code for USE_XFONTSET
9774 * input-method-xfs.c: removed.
9776 2000-12-20 Stephen Turnbull <stephen@xemacs.org>
9778 * file-coding.h (enum coding_category_type): reorder enumerators to
9779 make autodetection safer. Make CODING_CATEGORY_LAST an enumerator
9780 (now one greater than largest real coding_category_type enumerator).
9781 * file-coding.c (coding_category_symbol, coding_category_by_priority,
9782 coding_category_system, fcd_descriptihon_1, decode_coding_category,
9783 Fcoding_category_list, Fset_coding_priority_list,
9784 Fcoding_priority_list, coding_system_from_mask, Fdetect_coding_region,
9785 vars_of_file_coding): adjust for change in CODING_CATEGORY_LAST.
9787 2000-12-18 Yoshiki Hayashi <yoshiki@xemacs.org>
9789 * redisplay-output.c (redisplay_clear_top_of_window): Remove static.
9790 * redisplay-output.c (redisplay_output_window): Clear top of window
9791 when face is changed.
9792 * redisplay-x.c (x_redraw_exposed_window): Call
9793 redisplay_clear_top_of_window.
9794 * redisplay.h: Publish redisplay_clear_top_of_window.
9796 2000-12-18 Yoshiki Hayashi <yoshiki@xemacs.org>
9798 * buffer.c (Fkill_buffer): Map over all devices.
9799 * window.c (window_loop): Remove UNSHOW_BUFFER code.
9800 (list_windows): New function.
9801 (list_all_windows): Ditto.
9802 (Freplace_buffer_in_windows): Use them.
9804 2000-02-02 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
9806 * database.c (berkdb_subtype): Recognize new subtype `queue'.
9807 (Fopen_database): Use `db_create' instead of `db_open'.
9808 (syms_of_database): Initialize Qqueue.
9810 2000-12-13 Yoshiki Hayashi <yoshiki@xemacs.org>
9812 * buffer.c (common_init_complex_vars_of_buffer): Initialize
9813 buffer_local_face_property.
9814 * buffer.h (struct buffer): New member buffer_local_face_property.
9815 * window.c (Fset_window_buffer): Mark window's face as changed
9816 when buffer has buffer local face.
9817 * window.h (MARK_WINDOW_FACES_CHANGED): New macro.
9818 * objects.c (color_after_change): Set buffer_local_face_property
9819 when locale of face specifier is buffer.
9820 * objects.c (font_after_change): Ditto.
9821 * objects.c (face_boolean_after_change): Ditto.
9822 * glyphs.c (image_after_change): Ditto.
9824 2000-12-09 Dan Holmsand <dan@eyebee.com>
9826 * nt.c (mswindows_fstat): Report file permissions, volume serial
9827 number, etc. Code adapted from FSF Emacs 20.7.
9829 2000-12-09 Dan Holmsand <dan@eyebee.com>
9831 * sysfile.h (lstat): Make lstat an alias for xemacs_stat instead
9832 of stat when we don't have symbolic links, to make sure
9833 mswindows_stat is called on mswindows.
9835 2000-12-12 Yoshiki Hayashi <yoshiki@xemacs.org>
9837 * alloca.c: Define malloc to xmalloc only when built with XEmacs.
9839 2000-12-12 Martin Buchholz <martin@xemacs.org>
9841 * doprnt.c (emacs_doprnt_1): More printing fixes.
9842 Make printing of numbers compatible with libc and FSF Emacs.
9843 BUG was: (format "%6.3f" 1.2) ==>"1.200000"
9844 Use the system printf to do most of the hard work of formatting,
9845 instead of doprnt_1().
9846 Calculate memory to allocate for format string.
9847 Remove arbitrary limit on precision, e.g. (format "%.1000f" 3.14)
9848 (doprnt_1): Cleaner code and documentation.
9850 2000-12-01 Jerry James <james@eecs.ukans.edu>
9852 * Makefile.in.in: Use the loop variable to install headers.
9854 2000-12-04 Yoshiki Hayashi <yoshiki@xemacs.org>
9856 * window.c (Fsplit_window): Don't invalidate face cache.
9858 2000-12-04 Yoshiki Hayashi <yoshiki@xemacs.org>
9860 * minibuf.c (Fall_completions): Undo the previous change
9861 which removed checking elements start with space.
9863 2000-12-06 Stephen Turnbull <stephen@xemacs.org>
9865 * mule-canna.c: Didier suppression.
9867 2000-12-06 Stephen Turnbull <stephen@xemacs.org>
9869 * mule-canna.c: rename static unsigned char buf[] to key_buffer
9870 (warning suppression). Add English comment translations.
9872 2000-12-05 Martin Buchholz <martin@xemacs.org>
9874 * unexelfsgi.c (unexec): Better test for mmap failure.
9876 2000-12-05 Martin Buchholz <martin@xemacs.org>
9878 * XEmacs 21.2.38 is released.
9880 2000-12-05 Martin Buchholz <martin@xemacs.org>
9882 * redisplay.c (bar-cursor): Make a user variable.
9884 * symsinit.h: Add init_postgresql_from_environment.
9886 2000-12-04 Yoshiki Hayashi <yoshiki@xemacs.org>
9888 * regex.c: Convert to clean C.
9890 2000-12-05 Dan Holmsand <dan@eyebee.com>
9893 Don't #include sysfile.h. Revert to duplicating PATH_MAX
9895 (sys_readlink): renamed to system_readlink to avoid conflict with
9896 the other sys_readlink.
9898 2000-12-04 Hiroaki Abe <h-abe@pc.highway.ne.jp>
9900 * dumper.c (pdump_file_get): Correct uses of pdump_fd.
9902 2000-12-04 Stephen J. Turnbull <stephen@xemacs.org>
9904 * postgresql.c (init_postgresql_from_environment): new function.
9905 (vars_of_postgresql): Move code initializing Lisp variables out and
9906 into init_postgresql_from_environment.
9907 emacs.c (main_1): Call init_postgresql_from_environment if and only
9908 if running a dumped XEmacs.
9910 2000-08-31 Dan Holmsand <dan@eyebee.com>
9912 * buffer.c: Make find-file-compare-truenames default to true on
9915 * realpath.c (win32_abs_start):
9917 (win32_readlink): New functions.
9918 (xrealpath): Return really real filenames on windows.
9920 * fileio.c (Ffile_truename): Make file-truename work on windows.
9922 2000-11-29 Didier Verna <didier@xemacs.org>
9924 * faces.c (MAYBE_UNFROB_BACKGROUND_PIXMAP): new macro.
9925 * faces.c (update_face_cachel_data): use it.
9926 * faces.c (add_face_cachel): use it. Complete background pixmap
9927 frobbing in face cache if `update_face_cachel_data' has not done so.
9929 2000-11-29 Yoshiki Hayashi <yoshiki@xemacs.org>
9931 * search.c (string_match_1): Don't set last_thing_searched
9934 2000-11-27 Yoshiki Hayashi <yoshiki@xemacs.org>
9936 * buffer.c: Include casetab.h
9937 (common_init_complex_vars_of_buffer): Use new case-table object.
9938 * buffer.h: Include casetab.h
9939 * buffer.h (MAKE_TRT_TABLE): Use generic char-table.
9940 (DOWNCASE_TABLE_OF): Ditto.
9941 * bufslots.h: Remove char-tables and add case-table.
9942 * casetab.c: Include casetab.h
9943 (CASE_TABLE_P): Removed.
9944 (mark_case_table): New function.
9945 (allocate_case_table): New function.
9946 (Fcase_table_p): Use new case-table.
9947 (case_table_char): New function.
9948 (Fget_case_table): Ditto.
9949 (Fput_case_table): Ditto.
9950 (Fput_case_table_pair): Ditto.
9951 (Fcopy_case_table): Ditto.
9952 (Fcurrent_case_table): Return case-table.
9953 (Fstandard_case_table): Return case-table.
9954 (Fset_case_table): Fix doc-string.
9955 (set_case_table): Use case-table
9956 (syms_of_casetab): DEFSUBR new functions.
9957 (complex_vars_of_casetab): Set up standard case-table.
9958 * casetab.h: New file.
9959 * editfns.c: Include casetab.h
9960 (Fcompare_buffer_substrings): Use case-table.
9961 * inline.c: Include casetab.h
9962 * lisp.h: Remove bogus extern.
9963 * lrecord.h (lrecord_type): Add lrecord_type_case_table.
9964 * search.c: Include casetab.h
9965 (TRANSLATE_ASCII): Removed.
9966 (TRANSLATE): Unconditionally translate character.
9967 (looking_at_1): Use case-table.
9968 (string_match_1): Ditto.
9969 (fast_string_match): Ditto.
9970 (search_command): Ditto.
9971 (search_buffer): Separate boyer_moore. Check whether
9972 boyer_moore is possible.
9973 (simple_search): New function.
9974 (boyer_moore): Separated from search_buffer. Translate char.
9976 2000-11-24 Yoshiki Hayashi <yoshiki@xemacs.org>
9978 * regex.c (RE_TR_ASCII): Removed.
9979 (RE_TRANSLATE): Unconditionally use TRT_TABLE.
9980 (PATFETCH): Call PATFETCH_RAW.
9981 (PATFETCH_RAW): Fetch Emchar.
9982 (PATUNFETCH): Decrement charptr.
9983 (GET_BUFFER_SPACE): Rename b to buf_end.
9985 (BUF_PUSH_2): Ditto.
9986 (BUF_PUSH_3): Ditto.
9987 (EXTEND_BUFFER): Ditto.
9988 (SET_LIST_BIT): Ditto.
9989 (regex_compile): Ditto. Translate non ASCII char.
9990 (compile_range): Ditto.
9991 (re_search_2): Ditto.
9992 (re_match_2_internal): Compare Emchar.
9993 (bcmp_translate): Ditto.
9995 2000-11-29 Stephen J. Turnbull <turnbull@xemacs.org>
9997 * lisp.h (basic char/int typedefs): comment improvement.
9999 2000-11-24 Stephen J. Turnbull <turnbull@xemacs.org>
10001 * emacs.c (main_1): unconditional pdump unstomping; don't save and
10002 unstomp inhibit_site_lisp. Improve comments.
10004 2000-11-22 Stephen J. Turnbull <turnbull@xemacs.org>
10006 * mule-charset.c (Fcharset_property): improve type checking, comments.
10008 2000-11-28 Andy Piper <andy@xemacs.org>
10010 * redisplay-output.c (redisplay_output_subwindow): make sure we do
10011 clipped display for windows in the gutter also.
10012 (redisplay_display_boxes_in_window_p): change semantics of return
10013 codes to be more intuitive.
10015 * gutter.h: declare display_boxes_in_gutter_p.
10017 * gutter.c (display_boxes_in_gutter_p): new function for
10020 2000-11-22 Andy Piper <andy@xemacs.org>
10022 * glyphs-x.c (image_instantiator_format_create_glyphs_x): change
10025 2000-11-21 Yoshiki Hayashi <yoshiki@xemacs.org>
10027 * callproc.c (Fold_call_process_internal):
10028 * gpm.c (Freceive_gpm_event):
10029 (tty_get_foreign_selection): Might be just warning supression.
10030 * fileio.c (Fwrite_region_internal):
10031 (Fset_visited_file_modtime):
10032 * keymap.c (event_matches_key_specifier_p):
10033 Initialize GCPROed variable.
10035 * menubar-x.c (command_builder_find_menu_accelerator):
10036 Initialize before use.
10038 2000-11-23 Andy Piper <andy@xemacs.org>
10040 * unexcw.c (unexec): make the resulting executable executable.
10042 2000-11-21 Martin Buchholz <martin@xemacs.org>
10044 * doc.c (get_doc_string):
10045 Use size_t, not int, for result of XSTRING_LENGTH.
10047 * cmds.c (Fdelete_char):
10048 * cmds.c (Fpoint_at_eol):
10049 * cmds.c (Fself_insert_command):
10050 Use EMACS_INT, not int, for result of XINT.
10051 Someday, someone will want to insert more than 2**31 identical characters.
10053 * cmds.c (Fdelete_char):
10054 * cmds.c (Fdelete_backward_char):
10055 * syntax.c (Fforward_word):
10056 * syntax.c (Fforward_comment):
10057 Make COUNT argument optional, for consistency with forward-char et al.
10059 2000-11-22 Martin Buchholz <martin@xemacs.org>
10062 * print.c (long_to_string):
10063 Return a useful value: the pointer at end of data written.
10066 Use `static const char * const' for constant strings.
10067 (union printf_arg): Delete `i', `ui' members.
10070 Fix LP64 platform bug: (format "%d" most-positive-fixnum) ==> "-1"
10071 Do all printf-ing via the `l' specifier.
10072 Use EMACS_INT instead of int.
10075 2000-11-20 Didier Verna <didier@xemacs.org>
10077 * faces.c (update_face_cachel_data): don't frob the background
10078 pixmap when the window is being created. The face is needed but
10079 does not exist yet.
10081 2000-11-20 Andy Piper <andy@xemacs.org>
10083 * unexcw.c (copy_executable_and_dump_data_section): Only do bss
10084 messing with a debug environment.
10086 2000-11-20 Martin Buchholz <martin@xemacs.org>
10088 * emacs.c (__sti__iflPNGFile_c___): Pedantically correct prototype.
10090 2000-11-20 Martin Buchholz <martin@xemacs.org>
10092 * casetab.c (Fcase_table_p): Fix compile error and crash.
10094 2000-11-18 Philip Aston <philipa@mail.com>
10096 * s/cygwin32.h: Cygwin has SVR4-like pty support.
10098 2000-11-18 Martin Buchholz <martin@xemacs.org>
10100 * fileio.c (Fexpand_file_name): GCPRO bug! Protect `handler'.
10101 * filelock.c (lock_file): GCPRO bug! Initialize all GCPROed vars!
10103 2000-11-17 Martin Buchholz <martin@xemacs.org>
10105 * config.h.in: Define HAVE_ELF_H if elf.h exists.
10106 * unexelf.c: Use HAVE_ELF_H.
10107 * unexelfsgi.c: Fix bug with dumped xemacs stdout/stderr not working.
10108 I copied FSF Emacs 20.7 unexelf.c to unexelfsgi.c and ANSIfied it.
10109 Max Matveev <makc@sgi.com> removed non-SGI-relevant parts and tested.
10110 Greg Harrington <greg_harrington@hotmail.com> provided a machine
10112 So this is an unexelfsgi.c from a different line of development.
10114 2000-11-16 Yoshiki Hayashi <yoshiki@xemacs.org>
10116 * regex.c (RE_TR_ASCII): New function.
10117 (RE_TRANSLATE): Call it.
10119 2000-11-16 Yoshiki Hayashi <yoshiki@xemacs.org>
10121 * buffer.h (TRT_TABLE_OF): Remove assert.
10122 (IN_TRT_TABLE_DOMAIN): Removed.
10124 2000-11-16 Gunnar Evermann <ge204@eng.cam.ac.uk>
10126 * free-hook.c (log_gcpro):
10127 (show_gcprohist): Add support for GCPRO5.
10129 2000-11-08 Stephen J. Turnbull <stephen@xemacs.org>
10131 * emacs.c (main_1): Improve -sd error message when --pdump=no.
10133 2000-11-16 Olivier Galibert <galibert@xemacs.org>
10135 * symeval.h: Declare flush_all_buffer_local_cache.
10137 * symbols.c: Change XD_LO_RESET_NIL into XD_LISP_OBJECTs.
10138 (flush_buffer_local_cache): Added.
10139 (flush_all_buffer_local_cache): Added.
10141 * lrecord.h: Remove unused XD_LO_RESET_NIL.
10143 * dumper.c (pdump_register_sub): Remove unused XD_LO_RESET_NIL.
10144 (pdump_dump_data): Ditto.
10145 (pdump_reloc_one): Ditto.
10146 (pdump): Remove unused pdump_qnil. Flush buffer local caches
10150 2000-11-14 Yoshiki Hayashi <yoshiki@xemacs.org>
10152 * buffer.c: Remove if 0'ed entry.
10153 * buffer.h: Rewrite TRT to use char-table.
10154 * bufslots.h: Remove mirror tables.
10155 * casetab.c: Remove mirror tables.
10156 (CASE_TABLE_P): New macro.
10157 (Fcase_table_p): Element of a case table is string or char-table.
10158 (make_mirror_trt_table): Removed.
10159 (set_case_table): Setup char-table from strings for backward
10161 * dired.c (Fdirectory_files):
10162 * dired-msw.c: (mswindows_get_files):
10163 * lisp.h: Change prototype of re_pattern_buffer.
10164 * regex.c: (RE_TRANSLATE): New macro.
10165 (TRANSLATE_P): Ditto.
10166 Change translate to type RE_TRANSLATE_TYPE.
10167 * regex.h: Define RE_TRANSLATE_TYPE
10168 * search.c (TRANSLATE): New macro.
10169 (TRANSLATE_ASCII): New macro.
10170 Translate table is changed to Lisp_Object.
10171 (signal_failure): Inhibit return.
10173 2000-11-14 Yoshiki Hayashi <yoshiki@xemacs.org>
10180 Do UNGCPRO before return.
10182 2000-11-14 Martin Buchholz <martin@xemacs.org>
10184 * XEmacs 21.2.37 is released.
10186 2000-11-13 Yoshiki Hayashi <yoshiki@xemacs.org>
10188 * fileio.c (Finsert_file_contents_internal): UNGCPRO before return.
10189 Add comments about discarded return value.
10191 2000-11-09 Yoshiki Hayashi <yoshiki@xemacs.org>
10194 * event-stream.c: Fix comments. Remove some #if 0'ed part.
10196 2000-10-27 Andy Piper <andy@xemacs.org>
10198 * gutter.c (Fset_default_gutter_position): default left and right
10199 gutters to visible.
10200 (calculate_gutter_size): calculate resonable heuristic for left
10201 and right gutter sizes.
10202 (specifier_vars_of_gutter): change left and right gutter sizes to
10204 (calculate_gutter_size_from_display_lines): new function.
10205 (output_gutter): check for resizing on left and right gutters.
10206 (clear_gutter): don't special case top and left gutters.
10207 (specifier_vars_of_gutter): use new signature for
10208 set_specifier_caching.
10210 * glyphs-x.c (x_redisplay_widget): spelling fix.
10211 * glyphs.c (specifier_vars_of_glyphs):
10212 * menubar.c (specifier_vars_of_menubar):
10213 * redisplay.c (specifier_vars_of_redisplay):
10214 * toolbar.c (specifier_vars_of_toolbar):
10215 * window.c (specifier_vars_of_window):
10216 * scrollbar.c (specifier_vars_of_scrollbar):
10217 (complex_vars_of_scrollbar): use new signature for
10218 set_specifier_caching.
10220 * specifier.c (set_specifier_caching): include recompute flag.
10221 (recompute_one_cached_specifier_in_window): always recompute if
10223 (recompute_one_cached_specifier_in_frame): ditto.
10225 * specifier.h (struct specifier_caching): add recompute flag.
10227 2000-10-24 Andy Piper <andy@xemacs.org>
10229 * unexcw.c (copy_executable_and_dump_data_section): add new
10230 BSS_PAD_SIZE so that we can re-instate a mini-bss. This keeps gdb
10233 2000-11-06 Yoshiki Hayashi <yoshiki@xemacs.org>
10235 * console-x.h (x_device): New member modifier_release_time.
10236 * event-Xt.c (x_handle_sticky_modifiers):
10237 Bound interval modifier keys are sticky.
10238 * event-stream.c (Vmodifier_keys_sticky_time): New variable.
10239 * events.h: extern it.
10241 2000-11-06 Yoshiki Hayashi <yoshiki@xemacs.org>
10243 * cmdloop.c (Fcommand_loop_1): Just add C-g to event queue.
10245 2000-11-06 Yoshiki Hayashi <yoshiki@xemacs.org>
10247 * event-stream.c (execute_command_event): Preserve current_events
10248 and the like when event is misc-user-event.
10249 Inhibit quit during the call to maybe_echo_keys.
10251 2000-10-31 Yoshiki Hayashi <yoshiki@xemacs.org>
10253 * filelock.c (lock_buffer): Cope with kill-buffer. Don't create a
10254 symlink when buffer is killed.
10255 (inhibit_clash_detection): New variable.
10257 2000-10-30 Yoshiki Hayashi <yoshiki@xemacs.org>
10259 * console.c (Fset_input_method): Trigger redisplay on tty.
10261 2000-11-07 Martin Buchholz <martin@xemacs.org>
10263 * process.c (Fprocess_status): Revert to previous behavior:
10264 (process-status "nosuchprocess") ==> nil
10266 2000-11-06 Martin Buchholz <martin@xemacs.org>
10268 * mule-charset.h (CHARSET_BY_LEADING_BYTE):
10269 Work around another GCC 2.95.2 optimizer bug.
10271 2000-11-02 Martin Buchholz <martin@xemacs.org>
10273 * process.c (Fget_process): Use LIST_LOOP_2.
10274 (kill_buffer_processes): Use LIST_LOOP_2.
10276 * minibuf.c (Fall_completions):
10277 Delete old non-functional code for FSF fourth argument.
10279 * frame.c (frame_matches_frame_spec):
10280 Renamed from `frame_matches_frametype'. Update all callers.
10281 (device_matches_device_spec):
10282 Renamed from 'device_matches_console_spec'. Update all callers.
10284 * doc.c (Fsubstitute_command_keys):
10285 Remove buffer overflow crash. Small code cleanups.
10287 * casetab.c (check_case_table): Simpler code.
10289 * window.c (Freplace_buffer_in_windows):
10290 Give this the same WHICH-FRAMES and WHICH-DEVICES parameters
10291 (and similar implementation) as Fdelete_windows_on.
10292 Update all callers.
10294 * alloc.c (Fmake_list):
10295 * alloc.c (make_vector):
10296 * alloc.c (Fmake_vector):
10297 * alloc.c (make_bit_vector):
10298 * alloc.c (Fmake_bit_vector):
10299 * alloc.c (Fbit_vector):
10300 * alloc.c (Fmake_string):
10301 * alloc.c (Fpurecopy):
10302 * alloc.c (Fmemory_limit):
10304 * buffer.c (Fget_buffer):
10305 * buffer.c (Fkill_buffer):
10306 * buffer.c (complex_vars_of_buffer):
10307 * bytecode.c (Fcompiled_function_stack_depth):
10308 * callint.c (Fprefix_numeric_value):
10310 * event-stream.c (Fread_key_sequence):
10312 * casetab.c (Fcase_table_p):
10313 * casetab.c (check_case_table):
10314 * casetab.c (Fset_case_table):
10315 * casetab.c (Fset_standard_case_table):
10317 * chartab.c (Fchar_table_type):
10318 * chartab.c (Freset_char_table):
10319 * chartab.c (Fget_char_table):
10320 * chartab.c (Fget_range_char_table):
10321 * chartab.c (Fput_char_table):
10322 * chartab.c (Fmap_char_table):
10323 * chartab.c (Fcategory_table_p):
10324 * chartab.c (Fcheck_category_at):
10325 * chartab.c (Fchar_in_category_p):
10326 * chartab.c (Fcategory_table):
10327 * chartab.c (Fcopy_category_table):
10328 * chartab.c (Fset_category_table):
10329 * chartab.c (Fcategory_designator_p):
10330 * chartab.c (Fcategory_table_value_p):
10331 * cmds.c (Fdelete_char):
10332 * cmds.c (Fdelete_backward_char):
10333 * cmds.c (Fself_insert_command):
10334 * cmds.c (Fself_insert_internal):
10335 * console.c (Fvalid_console_type_p):
10336 * console.c (Fcdfw_console):
10337 * console.c (Fconsole_type):
10338 * console.c (Fconsole_name):
10339 * console.c (Fconsole_device_list):
10340 * console.c (Fconsole_on_window_system_p):
10343 * data.c (Fold_eq):
10344 * data.c (Fsubr_interactive):
10345 * data.c (Fchar_to_int):
10346 * data.c (Fint_to_char):
10347 * data.c (Fsetcar):
10348 * data.c (Fsetcdr):
10349 * data.c (Fnumber_to_string):
10350 * data.c (Fstring_to_number):
10352 * database.c (mark_database):
10353 * database.c (finalize_database):
10354 * database.c (Fdatabase_live_p):
10355 * database.c (Fdatabasep):
10356 * device-x.c (Fx_get_resource):
10357 * device.c (Fdfw_device):
10359 * dired.c (Ffile_name_completion):
10360 * dired.c (Ffile_name_all_completions):
10361 * dired.c (Fuser_name_completion):
10362 * dired.c (Fuser_name_completion_1):
10363 * dired.c (Fuser_name_all_completions):
10364 * doc.c (Fdocumentation):
10365 * doc.c (Fdocumentation_property):
10366 * doc.c (Fsubstitute_command_keys):
10368 * editfns.c (Fchar_to_string):
10369 * editfns.c (Fstring_to_char):
10370 * editfns.c (Ftemp_directory):
10371 * editfns.c (Finsert_char):
10372 * editfns.c (Fbuffer_substring_no_properties):
10373 * editfns.c (Fnarrow_to_region):
10374 * editfns.c (Fchar_equal):
10375 * editfns.c (Fchar_Equal):
10376 * editfns.c (Ftranspose_regions):
10377 * emacs.c (Fdump_emacs):
10379 * eval.c (Fcommand_execute):
10380 * eval.c (Fautoload):
10381 * eval.c (Fbacktrace):
10382 * eval.c (Fbacktrace_frame):
10384 * events.c (Fcopy_event):
10385 * events.c (Fcharacter_to_event):
10386 * events.c (Fevent_button):
10387 * events.c (Fevent_process):
10389 * extents.c (Fnext_extent_change):
10390 * extents.c (Fextent_property):
10391 * faces.c (Ffacep):
10392 * faces.c (Fmake_face):
10394 * file-coding.c (Fencode_shift_jis_char):
10395 * file-coding.c (Fencode_big5_char):
10396 * fileio.c (Ffile_name_directory):
10397 * fileio.c (Ffile_name_nondirectory):
10398 * fileio.c (Ffile_name_as_directory):
10399 * fileio.c (Fdirectory_file_name):
10400 * fileio.c (Ffile_truename):
10401 * fileio.c (Fsubstitute_in_file_name):
10402 * fileio.c (Ffile_modes):
10403 * fileio.c (Fset_file_modes):
10404 * fileio.c (Fset_default_file_modes):
10405 * fileio.c (Fverify_visited_file_modtime):
10406 * floatfns.c (Facos):
10407 * floatfns.c (Fasin):
10408 * floatfns.c (Fatan):
10409 * floatfns.c (Fcos):
10410 * floatfns.c (Fsin):
10411 * floatfns.c (Ftan):
10412 * floatfns.c (Fbessel_j0):
10413 * floatfns.c (Fbessel_j1):
10414 * floatfns.c (Fbessel_jn):
10415 * floatfns.c (Fbessel_y0):
10416 * floatfns.c (Fbessel_y1):
10417 * floatfns.c (Fbessel_yn):
10418 * floatfns.c (Ferf):
10419 * floatfns.c (Ferfc):
10420 * floatfns.c (Flog_gamma):
10421 * floatfns.c (Fexp):
10422 * floatfns.c (Fexpt):
10423 * floatfns.c (Flog):
10424 * floatfns.c (Flog10):
10425 * floatfns.c (Fsqrt):
10426 * floatfns.c (Fcube_root):
10427 * floatfns.c (Facosh):
10428 * floatfns.c (Fasinh):
10429 * floatfns.c (Fatanh):
10430 * floatfns.c (Fcosh):
10431 * floatfns.c (Fsinh):
10432 * floatfns.c (Ftanh):
10433 * floatfns.c (Fabs):
10434 * floatfns.c (Ffloat):
10435 * floatfns.c (Flogb):
10436 * floatfns.c (Fceiling):
10437 * floatfns.c (Ffloor):
10438 * floatfns.c (Fround):
10439 * floatfns.c (Ftruncate):
10440 * floatfns.c (Ffceiling):
10441 * floatfns.c (Fffloor):
10442 * floatfns.c (Ffround):
10443 * floatfns.c (Fftruncate):
10444 * fns.c (Fstring_equal):
10445 * fns.c (Fstring_lessp):
10448 * fns.c (vconcat2):
10449 * fns.c (vconcat3):
10450 * fns.c (Fsubstring):
10452 * fns.c (Fold_assoc):
10453 * fns.c (assoc_no_quit):
10455 * fns.c (Fold_assq):
10456 * fns.c (assq_no_quit):
10458 * fns.c (Fold_rassoc):
10460 * fns.c (Fold_rassq):
10461 * fns.c (rassq_no_quit):
10462 * fns.c (Fremassoc):
10463 * fns.c (remassoc_no_quit):
10464 * fns.c (Fremassq):
10465 * fns.c (remassq_no_quit):
10466 * fns.c (Fremrassoc):
10467 * fns.c (Fremrassq):
10468 * fns.c (remrassq_no_quit):
10470 * fns.c (Fplist_get):
10471 * fns.c (Fplist_put):
10472 * fns.c (Fplist_remprop):
10473 * fns.c (Fplist_member):
10474 * fns.c (Flax_plist_get):
10475 * fns.c (Flax_plist_put):
10476 * fns.c (Flax_plist_remprop):
10477 * fns.c (Flax_plist_member):
10479 * fns.c (Fold_equal):
10480 * fns.c (Frequire):
10481 * fns.c (Fbase64_encode_region):
10482 * fns.c (Fbase64_encode_string):
10483 * fns.c (Fbase64_decode_region):
10485 * frame.c (frame_matches_frame_spec):
10486 * frame.c (device_matches_device_spec):
10487 * frame.c (next_frame):
10488 * frame.c (previous_frame):
10489 * frame.c (Fnext_frame):
10490 * frame.c (Fprevious_frame):
10491 * frame.c (Fframe_property):
10492 * frame.c (Fset_frame_height):
10493 * frame.c (Fset_frame_size):
10497 * glyphs.c (decode_error_behavior_flag):
10498 * glyphs.c (Fmake_image_instance):
10499 * indent.c (Findent_to):
10500 * intl.c (Fignore_defer_gettext):
10501 * keymap.c (Fkeymapp):
10502 * keymap.c (Flookup_key):
10504 * lread.c (Fload_internal):
10505 * lread.c (Feval_buffer):
10506 * lread.c (Feval_region):
10507 * macros.c (Fexecute_kbd_macro):
10508 * marker.c (set_marker_internal):
10509 * marker.c (Fset_marker):
10510 * marker.c (set_marker_restricted):
10511 * marker.c (Fcopy_marker):
10512 * marker.c (noseeum_copy_marker):
10514 * menubar.c (Fpopup_menu):
10516 * mule-charset.c (Fcharset_name):
10517 * mule-charset.c (Fchar_charset):
10518 * mule-charset.c (Fchar_octet):
10519 * mule-charset.c (Fsplit_char):
10520 * mule-wnnfns.c (Fwnn_open):
10521 * mule-wnnfns.c (Fwnn_dict_comment):
10522 * mule-wnnfns.c (Fwnn_quit_henkan):
10523 * mule-wnnfns.c (Fwnn_word_toroku):
10524 * mule-wnnfns.c (Fwnn_word_sakujo):
10525 * mule-wnnfns.c (Fwnn_word_use):
10526 * mule-wnnfns.c (Fwnn_hindo_set):
10528 * objects.c (Fmake_color_instance):
10529 * objects.c (Fmake_font_instance):
10530 * print.c (Fwrite_char):
10532 * process.c (mark_process):
10533 * process.c (print_process):
10534 * process.c (get_process_from_usid):
10535 * process.c (Fprocessp):
10536 * process.c (Fprocess_live_p):
10537 * process.c (Fget_process):
10538 * process.c (Fget_buffer_process):
10539 * process.c (get_process):
10540 * process.c (Fprocess_id):
10541 * process.c (Fprocess_name):
10542 * process.c (Fprocess_command):
10543 * process.c (init_process_io_handles):
10544 * process.c (start_process_unwind):
10545 * process.c (Fstart_process_internal):
10546 * process.c (Fopen_multicast_group_internal):
10547 * process.c (Fset_process_window_size):
10548 * process.c (read_process_output):
10549 * process.c (send_process):
10550 * process.c (Fprocess_tty_name):
10551 * process.c (Fset_process_buffer):
10552 * process.c (Fprocess_buffer):
10553 * process.c (Fprocess_mark):
10554 * process.c (set_process_filter):
10555 * process.c (Fset_process_filter):
10556 * process.c (Fprocess_filter):
10557 * process.c (Fprocess_send_region):
10558 * process.c (Fprocess_send_string):
10559 * process.c (exec_sentinel):
10560 * process.c (Fset_process_sentinel):
10561 * process.c (Fprocess_sentinel):
10562 * process.c (status_notify):
10563 * process.c (Fprocess_status):
10564 * process.c (Fprocess_exit_status):
10565 * process.c (process_send_signal):
10566 * process.c (Fprocess_send_eof):
10567 * process.c (deactivate_process):
10568 * process.c (remove_process):
10569 * process.c (Fdelete_process):
10570 * process.c (kill_buffer_processes):
10571 * process.c (Fprocess_kill_without_query):
10572 * process.c (Fprocess_kill_without_query_p):
10574 * rangetab.c (Fget_range_table):
10575 * rangetab.c (Fput_range_table):
10576 * rangetab.c (Fremove_range_table):
10577 * rangetab.c (Fclear_range_table):
10579 * search.c (Fskip_chars_forward):
10580 * search.c (Fskip_chars_backward):
10581 * search.c (Fskip_syntax_forward):
10582 * search.c (Fskip_syntax_backward):
10583 * search.c (search_command):
10584 * search.c (Freplace_match):
10585 * search.c (Fregexp_quote):
10586 * select.c (Fown_selection_internal):
10587 * select.c (Fselection_owner_p):
10588 * select.c (Fselection_exists_p):
10589 * select.c (Fget_selection_internal):
10592 * symbols.c (Fintern):
10593 * symbols.c (Fintern_soft):
10594 * symbols.c (Funintern):
10595 * symbols.c (Fapropos_internal):
10596 * symbols.c (Fset_default):
10598 * syntax.c (Fsyntax_table_p):
10599 * syntax.c (Fcopy_syntax_table):
10600 * syntax.c (Fset_syntax_table):
10601 * syntax.c (Fchar_syntax):
10602 * syntax.c (syntax_match):
10603 * syntax.c (Fmatching_paren):
10604 * syntax.c (Fforward_word):
10605 * syntax.c (scan_lists):
10606 * syntax.c (Fscan_lists):
10607 * syntax.c (Fscan_sexps):
10608 * syntax.c (Fparse_partial_sexp):
10609 * toolbar.c (Fcheck_toolbar_button_syntax):
10612 * window.c (Fwindowp):
10613 * window.c (Fwindow_live_p):
10614 * window.c (Fwindow_point):
10615 * window.c (Fdelete_window):
10616 * window.c (Fnext_window):
10617 * window.c (Fprevious_window):
10618 * window.c (Fother_window):
10619 * window.c (window_loop):
10620 * window.c (Fget_lru_window):
10621 * window.c (Fsplit_window):
10622 * window.c (Fenlarge_window):
10623 * window.c (Fenlarge_window_pixels):
10624 * window.c (Fshrink_window):
10625 * window.c (Fshrink_window_pixels):
10626 * window.c (change_window_height):
10627 * window.c (Fwindow_configuration_p):
10628 * window.c (Fcurrent_window_configuration):
10630 * casefiddle.c (casify_object):
10631 * casefiddle.c (Fupcase):
10632 * casefiddle.c (Fdowncase):
10633 * casefiddle.c (Fcapitalize):
10634 * casefiddle.c (Fupcase_initials):
10635 * casefiddle.c (casify_region_internal):
10636 * casefiddle.c (casify_region):
10637 * casefiddle.c (Fupcase_region):
10638 * casefiddle.c (Fdowncase_region):
10639 * casefiddle.c (Fcapitalize_region):
10640 * casefiddle.c (Fupcase_initials_region):
10641 * casefiddle.c (Fupcase_word):
10642 * casefiddle.c (Fdowncase_word):
10643 * casefiddle.c (Fcapitalize_word):
10644 Docstring arglist/Texinfo fixes. See man/ChangeLog for details.
10645 Replace 0 with '\0' when working with bytes.
10646 Replace initial "(" with "\(" in docstrings.
10648 2000-11-01 Martin Buchholz <martin@xemacs.org>
10650 * config.h.in: Handle alloca with Compaq C on Alpha Linux.
10652 * m/alpha.h: Let configure handle SYSTEM_MALLOC on Linux.
10654 2000-10-31 Martin Buchholz <martin@xemacs.org>
10656 * eldap.c (print_ldap): 64-bit cleaner. Fixes warning.
10658 2000-10-30 Yoshiki Hayashi <yoshiki@xemacs.org>
10660 * doprnt.c (emacs_do_prnt_1): Format (format "%01.2d" 10)
10663 2000-10-30 Yoshiki Hayashi <yoshiki@xemacs.org>
10665 * fileio.c (Vauto_save_list_file_prefix): Moved from startup.el.
10666 (inhibit_auto_save_session): New variable.
10667 (vars_of_fileio): Declare and initialize them.
10668 * fileio.c (Fdo_auto_save): Don't create session file if
10669 Vinhibit_auto_save_session or Vauto_save_list_file_prefix is non-nil.
10671 2000-10-31 Martin Buchholz <martin@xemacs.org>
10673 * sgiplay.c (play_internal): C++ compilability.
10674 * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Remove unused var `SFTB_prev'.
10675 * callproc.c (Fold_call_process_internal):
10676 Remove unused vars `env', `first'.
10677 * scrollbar.c (update_scrollbar_instance):
10678 #### unused var `current_window'.
10679 * redisplay-tty.c: Put currently unused vars insert_mode_on,
10680 etc. within #ifdef NOT_YET.
10681 * emacs.c: #### unused vars `initial_argc', `initial_argv'.
10682 * dialog-x.c (dbox_descriptor_to_widget_value): ### unused var `title'.
10683 * specifier.c (specifier_instance):
10684 #### unused var `tag'.
10685 Use WINDOW_BUFFER, FRAME_DEVICE instead of their expansion.
10687 2000-10-27 Martin Buchholz <martin@xemacs.org>
10689 * fns.c (Fbutlast):
10690 * fns.c (list_sort):
10691 * fns.c (Ffillarray):
10692 * fns.c (bytecode_nconc2):
10695 * fns.c (Fmapconcat):
10696 Be pedantically 64-bit correct. For the time when someone will
10697 want to have a list with length > 2**32.
10699 * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
10700 Work around MIPSpro compiler bug.
10702 * process-unix.c (unix_kill_child_process): Add snarky comment.
10703 * process-unix.c (try_to_initialize_subtty): Oops, `=' ==> `=='
10705 * config.h.in: Oops, _getpt ==> _getpty
10707 2000-10-26 Martin Buchholz <martin@xemacs.org>
10711 Use void*, not char*, as return type of alloca().
10713 * alloc.c (free_marker): Side effect inside assert expression!
10715 2000-10-16 MIYASHITA Hisashi <himi@m17n.org>
10717 * mule-charset.c (Fset_charset_ccl_program): To check
10718 if the given ccl program is valid, use setup_ccl_program()
10719 instead of CHECK_VECTOR().
10720 (Fmake_charset): Likewise.
10722 2000-10-20 Golubev I. N. <gin@mo.msk.ru>
10724 * faces.c (get_extent_fragment_face_cache_index):
10725 Fix cachel.merged_faces memory leak.
10727 2000-10-14 MIYASHITA Hisashi <himi@m17n.org>
10729 * mule-ccl.c (ccl_driver)<CCL_DECODE_SJIS>:
10730 Reset MSB of octets obtained by DECODE_SJIS
10731 because of the incompatibility with Emacs.
10732 (ccl_driver)<CCL_ENCODE_SJIS>:
10733 Set MSB of octets before passing them to
10734 ENCODE_SJIS because of the incompatibility
10737 2000-10-18 Daiki Ueno <ueno@unixuser.org>
10739 * lrecord.h (DECLARE_TYPECHECK_LRECORD): Abolish.
10740 (DECLARE_LRECORD): Undo the last change.
10741 (DECLARE_EXTERNAL_LRECORD): Expand typechecking stuff.
10743 2000-10-17 Daiki Ueno <ueno@unixuser.org>
10745 * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Connect
10746 the implementation to lrecord_implementations_table.
10748 2000-10-14 Daiki Ueno <ueno@unixuser.org>
10750 * lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION): Don't set the
10751 initial value of `lrecord_type_##c_name' and
10752 `lrecord_##c_name.lrecord_type_index'; discard "const" qualifier.
10753 (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): New macro.
10754 [ERROR_CHECK_TYPECHECK] (DECLARE_TYPECHECK_LRECORD): New macro.
10755 [ERROR_CHECK_TYPECHECK] (DECLARE_LRECORD): Use it.
10756 [ERROR_CHECK_TYPECHECK] (DECLARE_EXTERNAL_LRECORD): Use it.
10758 2000-10-17 Martin Buchholz <martin@xemacs.org>
10760 * miscplay.c (sndcnv8S_2mono):
10761 (sndcnv2monounsigned):
10762 (sndcnvULaw_2linear):
10764 Remove implementation-defined behavior.
10766 2000-10-12 Martin Buchholz <martin@xemacs.org>
10768 * input-method-xlib.c: Warning suppression.
10770 2000-10-05 MIYASHITA Hisashi <himi@m17n.org>
10772 * mule-ccl.c: Sync up with Emacs 21.0.90.
10773 (ccl_driver)<CCL_TranslateCharacter>: Disabled.
10775 (ccl_driver)<CCL_TranslateCharacterConstTbl>:
10777 (ccl_driver[WriteMultibyteChar2]): Bug fix.
10778 Use MAX_LEADING_BYTE_OFFICIAL_2 instead of
10779 MIN_LEADING_BYTE_OFFICIAL_2 to check whether the
10780 leading char belongs to official 2-dimensional charset.
10781 (CCL_WRITE_CHAR): When CCL_MODE_ENCODING,
10782 write the given character as is. Otherwise,
10783 if it is a multibyte char, convert it by
10784 non_ascii_set_charptr_emchar, then write it.
10785 (CCL_WRITE_STRING): Likewise.
10786 (ccl_get_compiled_code): New function.
10787 (setup_ccl_program): When ccl_prog is invalid,
10789 (Fregister_code_conversion_map): New function.
10790 (syms_of_mule_ccl): defsubr Fregister_code_conversion_map.
10792 * mule-ccl.h: Sync up with Emacs 21.0.90.
10793 (Fregister_ccl_program): export it.
10795 * redisplay-msw.c (separate_textual_runs):
10796 If ccl program is not valid, don't do ccl conversion.
10798 * redisplay-x.c (separate_textual_runs): Ditto.
10800 * file-coding.c (Fmake_coding_system):
10801 When type is ccl and value is vector, register it
10802 with a proper symbol. And checks whether the
10803 given ccl program is valid.
10804 (mule_decode): When calling ccl_driver, if src indicates
10805 NULL pointer, set an empty string instead.
10806 (mule_encode): Likewise.
10808 2000-10-11 Martin Buchholz <martin@xemacs.org>
10810 The following large batch of changes gets us back to a state of
10811 C++ compilability. Extbyte is now a char, which means that
10812 Extbyte * and Bufbyte * cannot be freely interchanged - a win!
10814 * tooltalk.c (Fset_tooltalk_message_attribute): Type correctness.
10816 * sound.c (Fplay_sound): Type correctness.
10818 * select-x.c (hack_motif_clipboard_selection): Type correctness.
10819 (x_get_window_property): Type correctness.
10820 (receive_incremental_selection): unsigned char ==> Extbyte
10821 (selection_data_to_lisp_data): unsigned char ==> Extbyte
10822 (Fx_get_cutbuffer_internal): unsigned char ==> Extbyte
10823 (Fx_store_cutbuffer_internal): Type correctness.
10825 * process-unix.c (try_to_initialize_subtty): Type correctness.
10827 * objects-x.c (x_print_color_instance): Type correctness.
10828 (x_print_font_instance): Type correctness.
10829 (x_list_fonts): SExtbyte ==> Extbyte.
10830 (valid_x_font_name_p): SExtbyte ==> Extbyte.
10831 (x_find_charset_font): SExtbyte ==> Extbyte.
10832 Use TO_INTERNAL_FORMAT. build_string ==> make_string.
10833 (truename_via_XListFonts): SExtbyte ==> Extbyte.
10834 (x_font_instance_properties): Use TO_INTERNAL_FORMAT.
10835 Use bufbyte_strcmp.
10837 * mule-charset.h (LEADING_BYTE_PREFIX_P): unsigned char ==> Bufbyte
10838 (PRIVATE_LEADING_BYTE_PREFIX): Add paranoia cast.
10839 (BYTE_ASCII_P): Use bit ops for char-signedness safety.
10840 (BYTE_C0_P): Use bit ops for char-signedness safety.
10841 (BYTE_C1_P): Use bit ops for char-signedness safety.
10842 (CHARSET_BY_LEADING_BYTE):
10843 (CHARSET_BY_ATTRIBUTES):
10844 Always use inline function.
10845 Use type_checking_assert.
10848 * mule-charset.c (non_ascii_charptr_copy_char):
10849 Modify to work with both ASCII and non-ASCII characters.
10850 Improve docs and variable names.
10851 Replace over-clever fall-through switch with a simple loop.
10852 (Lstream_get_emchar_1):
10853 Replace over-clever fall-through switch with a simple loop.
10855 * menubar-x.c (menu_item_descriptor_to_widget_value_1):
10856 Warning suppression.
10858 * lstream.h (Lstream_get_emchar): BYTE_ASCII_P cannot be used on
10859 the return value of Lstream_getc, which could be EOF as well.
10861 * lstream.c (Lstream_raw_read): Now returns ssize_t, not int.
10863 * lisp.h: Make Extbyte a char, not unsigned char, so that external
10864 APIs can be used on Extbytes without casts. Risky!
10865 (SExtbyte): Remove.
10866 (UExtbyte): Remove.
10868 * input-method-xlib.c (XIM_init_device):
10869 Use Xlib.h instead of IntrinsicP.h.
10870 Use HAVE_XREGISTERIMINSTANTIATECALLBACK instead of THIS_IS_X11R6,
10871 which will break in X11R7.
10872 Use XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE,
10873 to call XRegisterIMInstantiateCallback with correct types.
10875 * gui-x.c (button_item_to_widget_value): Type correctness.
10877 * glyphs.c (bitmap_to_lisp_data): Type correctness.
10879 * glyphs-x.c (pixmap_from_xbm_inline): Type correctness.
10880 (xbm_instantiate_1): Type correctness.
10881 (BUILD_GLYPH_INST): Type correctness.
10883 * fileio.c (Fsubstitute_in_file_name): Type correctness.
10886 (decode_coding_sjis):
10887 (decode_coding_big5):
10888 (decode_coding_ucs4):
10889 (decode_coding_utf8):
10890 (decode_coding_iso2022):
10891 (decode_coding_no_conversion):
10892 Make all decoding functions take an Extbyte * arg.
10893 (encode_coding_sjis):
10894 (encode_coding_big5):
10895 (encode_coding_ucs4):
10896 (encode_coding_utf8):
10897 (encode_coding_iso2022):
10898 (encode_coding_no_conversion):
10899 Make all encoding functions take a Bufbyte * arg.
10900 Use size_t instead of unsigned int for memory sizes.
10901 Only cast to unsigned char whenever dereferencing Extbyte *.
10903 * doc.c (unparesseuxify_doc_string): Type correctness.
10905 * console-x.c (split_up_display_spec):
10906 Rewrite without using details of internal string representation.
10907 (x_semi_canonicalize_device_connection): Type correctness.
10910 (HAVE_XREGISTERIMINSTANTIATECALLBACK): New.
10911 (XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE): New.
10912 (HAVE_XFREE386): Removed.
10914 * buffer.h (DEC_CHARPTR): `const' correctness.
10915 (bufbyte_strcmp): New.
10916 (bufbyte_memcmp): New.
10918 * buffer.c (dfc_convert_to_internal_format): Extbyte ==> Bufbyte
10920 * buffer.h (XCHAR_OR_CHAR_INT):
10921 Always use inline function.
10922 Remove redundant type checking assert() - XINT will abort quite nicely.
10924 2000-10-03 Yoshiki Hayashi <yoshiki@xemacs.org>
10926 * search.c (Freplace_match): Set newtext to an empty string.
10928 2000-10-10 Martin Buchholz <martin@xemacs.org>
10930 * s/decosf1-3.h: Remove #include of stropts.h
10931 * s/ptx.h: Remove #include of stropts.h
10932 * s/usg5-4.h: Remove #include of stropts.h
10935 Use stropts.h, not sys/stropts.h.
10936 Use strtio.h, not sys/strtio.h.
10938 2000-10-04 Martin Buchholz <martin@xemacs.org>
10940 * XEmacs 21.2.36 is released.
10942 2000-09-21 Andy Piper <andy@xemacs.org>
10944 * glyphs-x.c (x_redisplay_widget): make sure non-structural
10945 changes still involve copying the widget tree.
10946 (update_widget_face): make sure a change is register in the widget
10947 tree. Call update_tab_widget_face appropriately.
10948 (update_tab_widget_face): ditto.
10949 (x_tab_control_redisplay): make sure non-structural changes still
10950 involve copying the widget tree.
10952 2000-08-31 Daiki Ueno <ueno@unixuser.org>
10954 * lread.c (locate_file): Check the path element is non-nil.
10956 2000-10-02 Martin Buchholz <martin@xemacs.org>
10958 * lisp.h: Warning suppression for SCO compilers.
10960 * redisplay-tty.c (reset_tty_modes): Fix crash.
10961 E.g. from xemacs running on X: (delete-device (make-device 'tty nil))
10963 2000-09-27 Martin Buchholz <martin@xemacs.org>
10965 Big signal/process handling overhaul. Bugs fixed:
10966 M-x shell, type `sleep 10000', M-x comint-interrupt-subjob and
10967 M-x comint-kill-subjob should work for both values nil and t of
10968 process-connection-type. It was broken on most platforms.
10969 Testing on Irix and Cygwin still needed. Other plaforms tested.
10970 * sysdep.c: Move #include of stropts.h into sysproc.h. Use pid_t.
10971 * process-unix.c: Signal/Process handling overhaul.
10972 (pty_name): make 64 bytes, as `expect' does, for paranoia.
10973 (allocate_pty): Use all available modern methods of allocating
10974 ptys, falling back to old style BSD allocation as a last resort.
10975 Use allegedly more secure Unix98 pty allocation by default.
10976 (allocate_pty_the_old_fashioned_way): New. the last resort.
10977 (unix_create_process): Push ptem, ldterm, ttcompat where
10978 available. Autoconfiscate.
10979 (try_to_initialize_subtty): New.
10980 (unix_kill_child_process): Proper signal handling for ptys on most
10981 platforms, using special knowledge of AIX, BSD, etc...
10982 (unix_create_process): Always disconnect_controlling_terminal() for
10983 subprocesses, whether using ptys or not.
10984 * process.h: Remove old getpt-dependent PTY code.
10985 * process.c (Fprocess_send_signal): New, obvious generic function.
10986 (decode_signal): New.
10987 (Finterrupt_process):
10991 (Fcontinue_process):
10992 (Fsignal_process): Use decode_signal.
10993 (process_send_signal):
10994 Many docstring corrections.
10995 Allow any signal to be sent to a process object.
10996 * config.h.in: Add symbols for big signal/process overhaul.
10997 * syssignal.h (EMACS_KILLPG): Use HAVE_KILLPG. Use `pid', not `gid'.
10998 * sysproc.h: Include process-related headers, where available:
10999 sys/stropts.h sys/strtio.h pty.h libutil.h
11007 Remove old S&M pty stuff.
11008 * console-tty.c (tty_init_console): Use pid_t, not int, for pids.
11009 * systty.h: Simplify cpp hackery, improve comments.
11010 Favor BSD ioctl(TIOCGPGRP) over Posix tcgetpgrp().
11012 * editfns.c (Fformat_time_string):
11013 Be a little more paranoid with the return value of ctime.
11015 * fileio.c (check_executable):
11017 Use symbolic constants X_OK, W_OK.
11019 * console-x.c (split_up_display_spec): Fix a warning.
11021 2000-10-02 Martin Buchholz <martin@xemacs.org>
11023 * gui-x.c (add_accel_and_to_external): strlen ==> XSTRING_LENGTH
11024 * ntproc.c (sys_spawnve): make_string ==> build_string
11025 Small clarity improvements.
11027 2000-09-30 Martin Buchholz <martin@xemacs.org>
11029 * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): Warning removal.
11031 * s/windowsnt.h (HAVE_STRCASECMP): Remove.
11033 * config.h.in (HAVE_STRCASECMP): Remove.
11035 2000-09-29 Martin Buchholz <martin@xemacs.org>
11037 * redisplay-output.c (redisplay_output_pixmap):
11038 Cleaner and possibly more 64-bit correct code.
11040 2000-09-28 Stephen J. Turnbull <stephen@xemacs.org>
11042 * dumper.c (pdump_load_finish): move restoration of
11043 `noninteractive1' to emacs.c (main_1).
11044 * emacs.c (main_1): protect LISP-visible command-line flags
11047 2000-09-26 Stephen J. Turnbull <stephen@xemacs.org>
11049 * Makefile.in.in (versionclean): Use EXE_TARGET and
11050 DUMP_TARGET instead of literal program names.
11052 2000-09-20 Martin Buchholz <martin@xemacs.org>
11054 * Makefile.in.in: Recent purify's require absolute paths for cache-dir.
11056 2000-09-19 Martin Buchholz <martin@xemacs.org>
11058 * *: Spelling mega-patch
11060 2000-09-19 Martin Buchholz <martin@xemacs.org>
11062 * fns.c (bad_bad_turtle):
11063 Delete "Eek!" comment, since we fixed the bug to which it refers.
11065 2000-09-16 Martin Buchholz <martin@xemacs.org>
11067 * alloca.c: Replace REGISTER with register.
11069 2000-09-16 Daiki Ueno <ueno@unixuser.org>
11071 * file-coding.c (ucs_to_char): Use countof.
11073 2000-09-16 Martin Buchholz <martin@xemacs.org>
11075 * file-coding.c: (ucs_to_char):
11076 (complex_vars_of_file_coding):
11077 Use countof instead of sizeof.
11078 Use CHECK_NATNUM instead of CHECK_INT.
11080 * sysdep.c (strcasecmp): Remove.
11081 * device-x.c (ascii_strcasecmp): New.
11082 * device-x.c (Fx_get_resource): Use ascii_strcasecmp.
11083 Avoid using non-standard non-portable strcasecmp.
11085 2000-09-16 Martin Buchholz <martin@xemacs.org>
11087 * Makefile.in.in (mostlyclean): remove reference to prefix-args.
11088 * font-lock.c: remove reference to emacsfns.h.
11089 * search.c: small doc improvement.
11090 * event-Xt.c: correct file names in comments.
11091 * console-x.h Correct file names in comments.
11092 * frame.c: Correct file names in comments.
11093 * event-stream.c: remove Energize from comments.
11095 2000-09-15 Martin Buchholz <martin@xemacs.org>
11097 * symeval.h (DEFERROR_STANDARD):
11100 (DEFSYMBOL_NO_DUMP):
11101 (DEFSYMBOL_MULTIWORD_PREDICATE):
11102 (DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP):
11104 The construct &##name is not sensible C.
11105 Fixes compilation errors with Unixware native compiler.
11107 2000-09-14 Martin Buchholz <martin@xemacs.org>
11109 * frame.c (device_matches_console_spec): no longer takes a `frame' arg
11110 (next_frame_internal): Removed. We now just have next_frame.
11112 Write a simpler and cleaner one-pass algorithm.
11113 Remove called_from_delete_device arg and #ifdefed-out code.
11115 Renamed from prev_frame. Update callers.
11116 Cleaned up to have an analogous implementation to next_frame.
11117 (other_visible_frames_internal): Remove the
11118 called_from_delete_device bogus arg, and hence, remove this
11119 function. Just use other_visible_frames().
11121 * window.c (Fnext_window):
11122 Prettify docstring.
11123 Since next_frame() is guaranteed to return a frame, remove check
11124 for nil inserted in previous patch.
11125 (Fprevious_window):
11126 Prettify docstring.
11127 Make code look more like Fnext_window.
11129 Respect the `console' arg when iterating through windows.
11130 Fixes bug: (get-buffer-window buffer t device) not respecting
11132 This function needs more work, as others have pointed out.
11134 * frame.h: Rename prev_frame to previous_frame.
11135 device_matches_console_spec no longer takes a `frame' arg.
11140 Use EMACS_BLOCK_SIGNAL instead of sigblock.
11141 From "Golubev I. N." <gin@mo.msk.ru>.
11143 * make-src-depend: Fix typo.
11145 2000-09-13 Martin Buchholz <martin@xemacs.org>
11147 * window.c (Fnext_window):
11148 next_frame() might return nil, not a frame.
11150 (gdb) run -eval '(progn (make-device (quote x) "polgar:0") (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
11152 * frame.c (next_frame_internal):
11153 We've passed a frame if we've passed its device.
11155 (gdb) run -eval '(progn (make-frame nil (make-device (quote x) "polgar:0")) (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
11156 Fatal error: assertion failed, file /project/xemacs/ws/dev/src/frame.h, line 245, RECORD_TYPEP (obj, lrecord_type_frame)
11158 2000-09-11 Jonathan Harris <jhar@tardis.ed.ac.uk>
11160 * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
11161 Allow option to suppress accelerators in menu/dialog items.
11162 (populate_or_checksum_helper): Pass dialog title through above.
11164 2000-09-10 Jonathan Harris <jhar@tardis.ed.ac.uk>
11166 * event-msw.c (mswindows_key_to_emacs_keysym):
11167 Add "pause" key, fix "menu" key.
11169 2000-09-09 Martin Buchholz <martin@xemacs.org>
11171 * eval.c (reinit_vars_of_eval):
11172 Increase max_lisp_eval_depth to 1000,
11173 required for thai-xtis.el to byte-compile under some circumstances.
11175 2000-09-04 Martin Buchholz <martin@xemacs.org>
11177 * event-Xt.c (x_to_emacs_keysym): Increase size of `buffer' to 513.
11178 From Kenichi Handa.
11180 2000-09-01 Martin Buchholz <martin@xemacs.org>
11182 * make-src-depend: Make the generated Makefiles smaller.
11184 * s/hpux.h (SETUP_SLAVE_PTY):
11185 Provide a %d in the format string for the errno argument.
11187 * editfns.c (Ftemp_directory):
11189 Avoid buffer overrun on very long file name.
11191 * input-method-xlib.c (XIM_init_device):
11192 6th parameter of XRegisterIMInstantiateCallback has different
11193 pointer types on different OSes, so simply cast to (void *).
11195 * unexhp9k800.c: Warning fixes. Fiddly changes.
11197 * sysdll.c (dll_open):
11198 shl_load will hang hard if passed a NULL filename.
11199 Simply return NULL for compatibility with dlopen.
11200 * sysdll.c: Conform to XEmacs coding standards.
11202 * sysdep.c (get_pty_max_bytes):
11203 Support pty input lines longer than 512 bytes on HP-UX 10.20.
11205 2000-08-31 Martin Buchholz <martin@xemacs.org>
11207 * tooltalk.c: Add #include <syssignal.h>
11209 2000-08-12 Alexandre Oliva <aoliva@redhat.com>
11211 * s/hpux.h: Don't use undefined function sigunblock().
11213 2000-08-31 Martin Buchholz <martin@xemacs.org>
11215 * config.h.in: Add HAVE_BALLOON_HELP.
11216 * emacs.c: Use HAVE_BALLOON_HELP.
11217 * Makefile.in.in (x_objs):
11218 Make Balloon Help conditional on finding shape.h.
11220 2000-08-23 Yoshiki Hayashi <yoshiki@xemacs.org>
11222 * syntax.c (regex_emacs_buffer_p): New variable.
11223 * syntax.h (regex_emacs_buffer_p): extern.
11224 * search.c (looking_at_1):
11226 (fast_string_match):
11227 (search_buffer): Set regex_emacs_buffer_p.
11228 * regex.c (re_match_2_internal): Reference regex_emacs_buffer_p
11229 when before_dot, at_dot, after_dot.
11231 2000-08-23 Andy Piper <andy@xemacs.org>
11233 * gui-x.c (popup_selection_callback): Only set action_occurred
11234 when we really have an image instance.
11235 * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
11237 2000-08-23 Andy Piper <andy@xemacs.org>
11239 * gui-msw.c (mswindows_handle_gui_wm_command): set
11241 * gui-x.c (popup_selection_callback): ditto.
11243 * glyphs.h (IMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): new accessor.
11244 (XIMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): ditto.
11245 (struct Lisp_Image_Instance): add action_occurred flag.
11247 * glyphs.c (redisplay_subwindow): use action_occurred flag.
11248 (image_instance_changed): ditto.
11249 (reset_frame_subwindow_instance_cache): only unmap windows - do
11250 not remove them from the cache also.
11252 * glyphs-widget.c (tab_control_update): better debug.
11253 (progress_gauge_update): ditto.
11254 (layout_update): ditto.
11255 (layout_instantiate): ditto.
11256 (tab_control_order_only_changed): cope with null pending items.
11258 * glyphs-msw.c (mswindows_tab_control_redisplay): add better
11259 debug. Force selection of an item when an action occurred. Cope
11260 with null pending_items.
11261 (mswindows_progress_gauge_redisplay): better debug.
11262 * glyphs-x.c (x_tab_control_redisplay): ditto.
11264 * redisplay.c (redisplay_frame): reset the frame cache if the
11267 * window.c (Fset_window_configuration): potentially re-enable
11269 (window_unmap_subwindows): need to finalize instances here since
11270 it is only used in mark_window_as_deleted.
11272 2000-08-22 Stephen J. Turnbull <stephen@xemacs.org>
11274 * nas.c (SndOpenDataForReading):
11275 nas.c (WaveOpenDataForReading):
11276 nas.c (readChunk): {BIG,LITTLE}_ENDIAN -> NAS_{BIG,LITTLE}_ENDIAN.
11277 Somehow escaped from the 2000-08-14 patch.
11279 2000-08-14 Stephen J. Turnbull <stephen@xemacs.org>
11281 * nas.c: Preprocessor trickery to use NAS_LITTLE_ENDIAN instead
11282 of LITTLE_ENDIAN (conflicts with glibc, at least) in NAS <= 1.2p5.
11284 2000-08-21 Andy Piper <andy@xemacs.org>
11286 * glyphs-x.c (x_map_subwindow): Minor optimization - only map the
11287 window if it is not already displayed.
11289 * glyphs-msw.c (mswindows_map_subwindow): only map the window if
11290 it is not already displayed.
11292 * window.c (Fset_window_configuration): don't reset the frame
11295 * glyphs.c (unmap_subwindow_instance_cache_mapper): only remove
11296 instances from the frame cache if we are actually finalizing them.
11297 (reset_frame_subwindow_instance_cache): reset frame cache only
11298 after unmapping everything.
11299 (map_subwindow): set displayed flag after mapping.
11301 2000-08-21 Martin Buchholz <martin@xemacs.org>
11303 * data.c (indirect_function):
11304 Rename ERRORP to non-misleading VOID_FUNCTION_ERRORP.
11306 * eval.c (function_argcount):
11307 Use original function when signaling errors.
11309 2000-08-18 Andy Piper <andy@xemacs.org>
11311 * frame.c (delete_frame_internal): use new
11312 free_frame_subwindow_instances name.
11314 * glyphs-msw.c (mswindows_tab_control_instantiate): verify index.
11315 (add_tab_item): make return type correct.
11316 (mswindows_tab_control_instantiate): assert index of tab.
11317 (mswindows_tab_control_redisplay): Re-code to use
11318 gui_item_equal_sans_selected and gui_item_list_find_selected.
11320 * glyphs-widget.c (tab_control_update): Correct comment.
11322 * window.c (window_unmap_subwindows): use new
11323 unmap_subwindow_instance_cache_mapper.
11324 (window_unmap_subwindows_cache_mapper): deleted.
11325 (Fset_window_configuration): comparisons should now be with
11326 EQ. Preserve the subwindow instance cache across configuration
11328 (allocate_window): ditto.
11329 (make_dummy_parent): ditto.
11331 * glyphs.c (free_frame_subwindow_instances): rename from
11332 free_frame_subwindow_instance_cache. finalize all instances rather
11333 than just those in the display cache.
11334 (finalize_all_subwindow_instances): walk windows unmapping and
11335 finalizing subwindows.
11336 (unmap_subwindow_instance_cache_mapper): moved from
11337 window.c. Allow finalization as well as unmapping.
11339 * gui.c (gui_item_list_find_selected): new function.
11341 * gui.h (gui_item_list_find_selected): declare.
11343 * glyphs-x.c (x_tab_control_redisplay): pick tab
11344 explicitly. Re-code to use gui_item_equal_sans_selected and
11345 gui_item_list_find_selected.
11347 * glyphs-x.h: add lwlib-utils.h
11349 * buffer.c (Frecord_buffer): undo previous change.
11351 2000-08-09 Vin Shelton <acs@xemacs.org>
11353 * config.h.in, s/gnu.h, s/hpux.h, s/linux.h: Use UNIX98 PTYs if
11354 possible. Create temporary files more securely. The patch was
11355 generated by Torsten Duwe <duwe@caldera.de>, Florian Weimer
11356 <Florian.Weimer@RUS.Uni-Stuttgart.DE> and Olaf Kirch. See
11357 http://www.xemacs.org/list-archives/xemacs-patches/200007/msg00123.html
11360 2000-08-07 Ben Wing <ben@xemacs.org>
11362 * getloadavg.c: remove duplicate (and windows-breaking)
11363 includes of fcntl.h and sys/file.h.
11365 * nt.c: remove duplicate getloadavg() definition.
11367 * sysdll.h (Qdll_filename_encoding): add missing stand-in
11370 2000-08-07 Gunnar Evermann <ge204@eng.cam.ac.uk>
11372 * eval.c (function_argcount): If function needs to be autoloaded
11373 actually use the loaded definition.
11376 2000-08-05 Ben Wing <ben@xemacs.org>
11378 * getloadavg.c: add prototype for getloadavg(). remove
11379 duplicate WIN32_NATIVE/CYGWIN code (already in the middle
11380 of the code). remove duplicate header includes.
11382 * s\cygwin32.h, s\mingw32.h: remove stray NO_ARG_ARRAY.
11384 * s\cygwin32.h, s\mingw32.h, m\windowsnt.h:
11385 don't define LOAD_AVE_TYPE/LOAD_AVE_CVT because we have no
11386 useful load average.
11388 * alloc.c (reinit_alloc_once_early): removed references to
11389 VIRT_ADDR_VARIES, malloc_sbrk_used/free, and data-bytes-used/free.
11390 the lisp vars are the only things referencing the malloc_sbrk_*
11391 vars, and they were already if 0'd out. these vars only exist
11392 in the older malloc.c, which is basically unused, and they're
11393 only for informational purposes.
11395 * m\*.h: removed useless VIRT_ADDR_VARIES.
11397 * m\powerpc.h: removed stray NO_ARG_ARRAY.
11399 2000-04-26 IKEYAMA Tomonori <tomonori@suiyokai.org>
11401 * redisplay-msw.c (mswindows_output_dibitmap): Set foreground
11402 color if the image is a mono pixmap.
11404 2000-07-30 Ben Wing <ben@xemacs.org>
11406 * Makefile.in.in (release):
11409 * buffer.c (directory_is_current_directory):
11410 * dired-msw.c (mswindows_get_files):
11412 * dired.c (Fdirectory_files):
11413 * dired.c (file_name_completion_stat):
11414 * dired.c (Ffile_attributes):
11415 [[[[1]]]]: Rename stat() -> xemacs_stat() and eliminate nasty
11416 preprocessor tricks, to avoid problems on some machines
11419 * callproc.c (egetenv): GC docs.
11422 * console-msw.h (struct mswindows_dialog_id):
11423 * lrecord.h (lrecord_type):
11424 New object for use with MSW dialogs.
11426 * console.h (struct console_methods):
11427 New enable/disable frame methods, for proper modal dialogs.
11429 * device-msw.c (msprinter_default_printer): Fix to follow
11430 proper Mule conventions.
11433 * device-msw.c (signal_open_printer_error):
11434 * device-msw.c (msprinter_init_device):
11435 * device-msw.c (ensure_not_printing):
11436 * device-msw.c (plist_get_margin):
11437 * device-msw.c (Fmsprinter_select_settings):
11438 * device-msw.c (finalize_devmode):
11439 * device-msw.c (Fmsprinter_settings_despecialize):
11440 * device-msw.c (signal_enum_priner_error):
11441 * extents.c (decode_extent):
11442 * extents.c (decode_map_extents_flags):
11443 * extents.c (decode_extent_at_flag):
11444 * extents.c (Fextent_at):
11445 * extents.c (Fextents_at):
11446 * extents.c (symbol_to_glyph_layout):
11447 [[[[2]]]] Use structured errors.
11450 * dialog-msw.c (mswindows_is_dialog_msg):
11451 * dialog-msw.c (mark_mswindows_dialog_id):
11452 * dialog-msw.c (dialog_proc):
11453 * dialog-msw.c (handle_question_dialog_box):
11454 * dialog-msw.c (syms_of_dialog_mswindows):
11455 Define new object to clean up marking; use it as a dialog identifier.
11456 Call new delete-dialog-box-hook.
11458 * dialog-x.c (dbox_selection_callback):
11459 * dialog-x.c (dbox_descriptor_to_widget_value):
11460 * dialog-x.c (x_make_dialog_box_internal):
11461 Call new delete-dialog-box-hook.
11465 * dialog.c (syms_of_dialog):
11466 * dialog.c (vars_of_dialog):
11467 Define new delete-dialog-box-hook, for use w/modal dialog boxes.
11470 * eval.c (signal_call_debugger):
11471 when noninteractive, output stack traces on the console instead
11472 of in a (never-seen) buffer.
11474 * eval.c (signal_type_error):
11475 * eval.c (invalid_argument_2):
11477 new funs for use w/structured errors.
11480 * event-Xt.c (x_to_emacs_keysym):
11481 * event-Xt.c (describe_event):
11482 * event-Xt.c (emacs_Xt_event_handler):
11483 * event-Xt.c (vars_of_event_Xt):
11485 * event-msw.c (mswindows_wnd_proc):
11486 * event-msw.c (vars_of_event_mswindows):
11487 rename {x,mswindows}-debug-events to debug-{}-events for
11488 consistency with other debug-foo variables.
11491 document next-event more clearly.
11493 * fileio.c (Ffile_name_directory):
11494 * fileio.c (Ffile_name_nondirectory):
11495 * fileio.c (Funhandled_file_name_directory):
11496 * fileio.c (file_name_as_directory):
11497 * fileio.c (Ffile_name_as_directory):
11498 * fileio.c (directory_file_name):
11499 * fileio.c (Fdirectory_file_name):
11500 * fileio.c (Fmake_temp_name):
11501 * fileio.c (Ffile_truename):
11502 * fileio.c (Fsubstitute_in_file_name):
11503 * fileio.c (expand_and_dir_to_file):
11504 * fileio.c (barf_or_query_if_file_exists):
11505 * fileio.c (check_executable):
11506 * fileio.c (Ffile_exists_p):
11507 * fileio.c (Ffile_writable_p):
11508 * fileio.c (Ffile_directory_p):
11509 * fileio.c (Ffile_regular_p):
11510 * fileio.c (Ffile_modes):
11511 * fileio.c (Ffile_newer_than_file_p):
11512 * fileio.c (Fverify_visited_file_modtime):
11513 * fileio.c (Fset_visited_file_modtime):
11514 * fileio.c (auto_save_1):
11519 * frame-msw.c (mswindows_init_frame_1):
11520 * frame-msw.c (mswindows_enable_frame):
11521 * frame-msw.c (error_frame_unsizable):
11522 * frame-msw.c (msprinter_init_frame_1):
11523 * frame-msw.c (msprinter_init_frame_3):
11524 * frame-msw.c (console_type_create_frame_mswindows):
11526 implement new enable/disable frame methods.
11529 * frame-x.c (x_enable_frame):
11530 * frame-x.c (console_type_create_frame_x):
11531 implement new enable/disable frame methods.
11534 * frame.c (Fdisable_frame):
11535 * frame.c (syms_of_frame):
11536 * frame.h (struct frame):
11537 implement new enable/disable frame methods/functions.
11542 * glyphs-msw.c (mswindows_widget_instantiate):
11543 comment that initial-focus should be implemented.
11546 * glyphs-widget.c (check_valid_instantiator):
11547 * glyphs-widget.c (check_valid_orientation):
11548 * glyphs-widget.c (check_valid_tab_orientation):
11549 * glyphs-widget.c (check_valid_justification):
11550 * glyphs-widget.c (check_valid_border):
11551 * glyphs-widget.c (check_valid_callback):
11552 * glyphs-widget.c (check_valid_int_or_function):
11553 * glyphs-widget.c (check_valid_string_or_vector):
11554 * glyphs-widget.c (check_valid_item_list_1):
11555 * glyphs-widget.c (widget_validate):
11556 * glyphs-widget.c (combo_box_validate):
11557 * glyphs-widget.c (widget_instantiate):
11558 * glyphs-widget.c (syms_of_glyphs_widget):
11559 * glyphs-widget.c (VALID_WIDGET_KEYWORDS):
11560 * glyphs-widget.c (image_instantiator_combo_box):
11561 * glyphs-widget.c (image_instantiator_scrollbar):
11562 * glyphs-widget.c (image_instantiator_tab_control):
11563 * glyphs-widget.c (VALID_LAYOUT_KEYWORDS):
11565 support (unimplemented) keyword initial-focus.
11566 reindent long macros.
11568 * glyphs-x.c (x_redisplay_widget):
11569 * glyphs-x.c (x_button_instantiate):
11570 * glyphs-x.c (x_button_redisplay):
11571 * glyphs-x.c (x_progress_gauge_instantiate):
11572 * glyphs-x.c (x_edit_field_instantiate):
11573 * glyphs-x.c (x_combo_box_instantiate):
11574 * glyphs-x.c (x_tab_control_instantiate):
11575 * glyphs-x.c (x_label_instantiate):
11577 * gui-x.c (button_item_to_widget_value):
11578 * gui-x.c (gui_items_to_widget_values_1):
11579 * gui-x.c (gui_item_children_to_widget_values):
11580 * gui-x.c (gui_items_to_widget_values):
11582 * menubar-x.c (menu_item_descriptor_to_widget_value_1):
11583 add new flag to gui-parsing routines to indicate whether
11584 accelerator specs should be supported.
11586 * glyphs.c (syms_of_glyphs): use DEFSYMBOL.
11588 * glyphs.h (struct Lisp_Image_Instance):
11589 * glyphs.h (IMAGE_INSTANCE_WANTS_INITIAL_FOCUS):
11590 add initial-focus flag.
11593 * gui.c (syms_of_gui):
11594 * gui.c (vars_of_gui):
11595 clean up menu-no-selection-hook.
11598 support delete-dialog-box-hook.
11600 * lread.c (Fload_internal):
11601 * lread.c (locate_file_in_directory_mapper):
11605 * lrecord.h (struct toolbar_button):
11606 * lrecord.h (syms_of_toolbar):
11607 document how to create a new object.
11609 * menubar-msw.c (mswindows_char_is_accelerator):
11610 may be called on frames w/o menus.
11612 * menubar.c (vars_of_menubar):
11613 clean up :filter docs.
11620 * process-nt.c (validate_signal_number):
11621 * process-nt.c (signal_cannot_launch):
11622 * process-nt.c (nt_create_process):
11623 * process-nt.c (nt_send_process):
11624 * process-nt.c (nt_kill_child_process):
11625 * process-nt.c (nt_open_network_stream):
11626 * process-nt.c (syms_of_process_nt):
11628 delete quote-handling. call new lisp code that does it better.
11630 * process-unix.c (connect_to_file_descriptor):
11631 * process-unix.c (allocate_pty):
11632 * process-unix.c (unix_send_process):
11633 * process-unix.c (unix_kill_child_process):
11634 * process-unix.c (unix_open_network_stream):
11635 * process-unix.c (unix_open_multicast_group):
11639 * process.c (Fstart_process_internal):
11640 (2). need to canonicalize process path even if absolute.
11642 * select-msw.c (symbol_to_ms_cf):
11643 * select-msw.c (ms_cf_to_symbol):
11644 * select-msw.c (cf_is_autofreed):
11645 * select-msw.c (mswindows_destroy_selection):
11647 * select.c (syms_of_select):
11649 support dibv5, fix bugs. (from Mike Alexander)
11651 * select.c (Fget_selection_internal):
11652 * select.c (select_convert_out):
11655 * sysdep.c (xemacs_stat):
11658 * sysdep.c (mkdir):
11659 * sysdep.c (rmdir):
11660 but keep original stat() here because we provide encapsulation
11664 * sysfile.h (fstat):
11665 remove stat garbage.
11668 fix X/MSW conflict.
11669 don't include tchar.h. it's inappropriate because it makes
11670 compile-time distinctions when we want runtime distinctions.
11671 (we provide our own tchar replacements)
11674 use default object printer for toolbar-button.
11677 make sure we don't encapsulate.
11679 * window.c (vars_of_window):
11680 emphasize that temp-buffer-show-hook is obsolete.
11682 2000-08-05 Martin Buchholz <martin@xemacs.org>
11684 * glyphs.c (image_instance_hash): HASH2 wants EMACS_INT args.
11685 (Fimage_instance_subwindow_id): make_int wants EMACS_INT arg.
11687 * events.c (Fevent_timestamp_lessp):
11688 Not 64-bit clean. Use EMACS_INT, not int.
11690 2000-06-05 Andrew Begel <abegel@cs.berkeley.edu>
11692 * lrecord.h (lrecord_types): Changed lrecord_type_count to an
11693 unsigned int and changed the last enum to
11694 lrecord_type_last_built_in_type.
11695 (lrecord_implementations_table): changed prototype to know how
11696 long the array is supposed to be.
11697 (lrecord_type_count): new unsigned int to keep track of the
11698 current number of lisp lrecord types.
11699 (DEFINE_EXTERNAL_LRECORD):
11700 (DECLARE_EXTERNAL_LRECORD): Added these two for external
11701 dynamic-modules to declare new lisp types. They are the same
11702 as the non-EXTERNAL forms, but declare an lrecord_type unsigned
11703 int for each new type, and increment lrecord_type_count by 1.
11705 * alloc.c (lrecord_implementations_table): Changed to reference
11706 lrecord_type_last_built_in_type for the size of the array.
11707 Moved MODULE_DEFINABLE_TYPE_COUNT to lrecord.h.
11709 2000-08-03 Yoshiki Hayashi <yoshiki@xemacs.org>
11711 * glyphs.h (check_valid_item_list): Renamed from
11712 check_valid_item_list_1.
11714 2000-08-01 Alastair J. Houghton <ajhoughton@lineone.net>
11716 * select.c (Qselect_coerce): New.
11717 * select.c (Vselection_coercion_alist): New.
11718 * select.c (syms_of_select): Declare.
11719 * select.c (get-selection-internal): Use it.
11720 Use the new select-coerce functionality.
11722 * select.c (select_coerce): New.
11723 * select.h (select_coerce): Declare.
11724 New function to coerce one type of data into another.
11726 2000-08-03 Martin Buchholz <martin@xemacs.org>
11728 * callproc.c (Fcall_process_internal):
11729 (Fcall_process_internal):
11730 * process-unix.c (unix_create_process):
11731 Save and restore the value of errno, so that error messages are accurate.
11733 2000-08-01 Martin Buchholz <martin@xemacs.org>
11735 * elhash.c (print_hash_table):
11736 Fix printing of hash tables to also use `key-and-value' instead of `t'.
11737 Prettify docstrings and indentation.
11739 2000-07-31 Yoshiki Hayashi <yoshiki@xemacs.org>
11741 * window.c (Fwindow_pixel_edges): Subtract frame border and
11744 2000-07-31 Andy Piper <andy@xemacs.org>
11746 * buffer.c (Frecord_buffer): make absolutely sure that redisplay
11747 will acknowledge the change.
11749 * glyphs.h: declare tab_control_order_only_changed.
11751 * glyphs-x.c (x_tab_control_redisplay): use
11752 tab_control_order_only_changed.
11754 * glyphs-widget.c (tab_control_order_only_changed): new function.
11756 * glyphs-msw.c (mswindows_tab_control_redisplay): use
11757 tab_control_order_only_changed.
11759 * gui.c (gui_item_equal_sans_selected): new function.
11760 (gui_item_equal): use it.
11762 * glyphs-msw.c (mswindows_combo_box_instantiate): deprecate
11763 :properties in favor of :items..
11765 * glyphs-widget.c (check_valid_item_list): rename from
11766 check_valid_item_list_1.
11767 (check_valid_item_list_1): renamed.
11768 (combo_box_validate): deprecate :properties in favor of :items.
11769 (widget_instantiate): ditto.
11770 (tab_control_update): ditto.
11771 (image_instantiator_combo_box): ditto.
11772 (image_instantiator_tree_view): ditto.
11773 (image_instantiator_tab_control): ditto.
11774 (layout_post_instantiate): remove dead code.
11776 * print.c (debug_print_no_newline): only write to debugger if in
11779 * elhash.c (Fmake_hash_table): update doc string.
11781 * event-msw.c (mswindows_wnd_proc): don't allow processing of
11782 messages whilst in GC. This at least stops XEmacs crashing but has
11783 the potential for wierd behaviour.
11785 2000-07-31 Martin Buchholz <martin@xemacs.org>
11788 Make existence of s&m files optional.
11790 * s/bsd386.h: Remove HAVE_GETLOADAVG.
11791 * s/freebsd.h: Remove HAVE_GETLOADAVG.
11792 * s/gnu.h: Remove HAVE_GETLOADAVG.
11793 * s/netbsd.h: Remove HAVE_GETLOADAVG.
11794 * s/sol2.h: Remove HAVE_GETLOADAVG.
11795 * lisp.h: Remove getloadavg() declaration.
11797 Include <sys/loadavg.h> if available.
11798 Don't declare our own getloadavg() if HAVE_GETLOADAVG.
11799 * config.h.in: Group together getloadavg()-related macros.
11800 Use only configure-time tests to detect getloadavg().
11802 2000-07-30 Martin Buchholz <martin@xemacs.org>
11804 * Makefile.in.in (TransientEmacsShell.o): Fix race condition.
11806 2000-07-25 Andy Piper <andy@xemacs.org>
11808 * syswindows.h: add tchar.h for native builds.
11810 * frame.c (syms_of_frame): remove set-glyph-image.
11812 * general-slots.h: add Qset_glyph_image.
11814 * glyphs-widget.c (layout_update): add domain arg to
11816 (syms_of_glyphs_widget): remove set-glyph-image.
11818 2000-07-23 Ben Wing <ben@xemacs.org>
11820 * dialog-msw.c (vars_of_dialog_mswindows): need to staticpro
11823 2000-07-22 Andy Piper <andy@xemacs.org>
11825 * symsinit.h: add syms_of_win32().
11827 * gui-msw.c (syms_of_gui_mswindows): remove
11828 Fmswindows_shell_execute.
11829 (Fmswindows_shell_execute): moved to win32.c.
11831 * emacs.c (main_1): add syms_of_win32 ().
11833 * win32.c (init_potentially_nonexistent_functions): rewrite in
11834 compiler-friendly terms.
11835 (Fmswindows_shell_execute): move here from gui-msw.c.
11836 (syms_of_win32): new.
11838 * device-msw.c (Fmswindows_printer_list): clean up args to
11840 Don't include tchar under cygwin or mingw.
11841 (msprinter_default_printer): make cygwin-friendly.
11843 2000-07-21 Andy Piper <andy@xemacs.org>
11845 * glyphs-widget.c (image_instantiator_tree_view): use tab
11846 control's update function.
11847 (layout_property): new function. Retrieve items.
11849 * glyphs-msw.c (mswindows_tree_view_redisplay): new
11850 function. Re-populate the tree view from the pending items.
11852 * glyphs.c (instantiate_image_instantiator): Make sure the domain
11853 is designated the parent if the domain is an image instance. This
11854 is needed so that dirtiness can be cascade up the hierarchy and
11855 thus for layout children to be redisplayed correctly.
11856 (allocate_image_instance): rename glyph -> parent.
11858 * redisplay.h: change redisplay_output_layout signature.
11860 * redisplay-msw.c (mswindows_output_display_block): use domain
11863 * redisplay-x.c (x_output_display_block): use domain arg.
11865 2000-07-10 Andy Piper <andy@xemacs.org>
11867 * window.c (Fset_window_configuration): add comment.
11869 * redisplay-output.c (compare_runes):
11870 (redisplay_output_subwindow): redisplay rather than update subwindow.
11871 (redisplay_output_layout): ditto.
11873 * redisplay-msw.c (mswindows_frame_output_end):
11874 (mswindows_frame_output_end): make defer window pos optional.
11876 * lisp.h: add Flast.
11878 * glyphs.h (struct image_instantiator_methods): add dest_mask top
11879 normalize method. Change update method to be for changed
11880 instantiators. Add redisplay method. Change signature of layout
11882 (struct Lisp_Image_Instance): add instantiator.
11883 (IMAGE_INSTANCE_INSTANTIATOR): new.
11884 (IMAGE_INSTANCE_SUBWINDOW_FACE): new.
11885 (XIMAGE_INSTANCE_INSTANTIATOR): new.
11886 (XIMAGE_INSTANCE_SUBWINDOW_FACE): new.
11889 (find_instantiator_differences): new function.
11890 (Fset_instantiator_property): new convenience function.
11891 (check_image_instance_structure): strictly check for vector
11893 (normalize_image_instantiator): make non-static.
11894 (instantiate_image_instantiator): pass on dest_mask and use new
11895 signatures for image_instance_layout and friends.
11896 (mark_image_instance): mark the instantiator. Mark the subwindow
11897 face not the widget face.
11898 (image_instance_equal): add instantiator.
11899 (image_instance_hash): ditto.
11900 (allocate_image_instance): ditto.
11901 (Fset_image_instance_property): removed.
11902 (Fimage_instance_file_name): ditto.
11903 (Fcolorize_image_instance): ditto.
11904 (image_instance_layout): add offsets to be set.
11905 (update_image_instance): new function. update an image instance
11906 from its changed instantiator.
11907 (inherit_normalize): add dest_mask.
11908 (xbm_normalize): ditto.
11909 (xface_normalize): ditto.
11910 (xpm_normalize): ditto.
11911 (text_update): set_property -> update.
11912 (image_instantiate): use the glyph identity as a hash key, not the
11914 (glyph_width): use new image_instance_layout signature.
11915 (glyph_ascent): ditto.
11916 (glyph_descent): ditto.
11917 (glyph_height): ditto.
11918 (glyph_query_geometry): ressurrect.
11919 (glyph_layout): ditto.
11920 (redisplay_subwindow): update -> redisplay.
11921 (syms_of_glyphs): add Fset_instantiator_property.
11922 (image_instantiator_format_create): set_property -> update.
11925 (autodetect_normalize): add dest_maks to signature.
11926 (x_redisplay_subwindow): update -> redisplay.
11927 (x_redisplay_widget): ditto.
11928 (x_button_redisplay): ditto.
11929 (x_progress_gauge_redisplay): ditto.
11930 (x_tab_control_redisplay): ditto. Rewrite to cope with changed
11932 (console_type_create_glyphs_x): update -> redisplay.
11933 (image_instantiator_format_create_glyphs_x): ditto.
11936 (check_valid_instantiator): disallow glyphs in the instantiator,
11937 they must now be vectors.
11938 (check_valid_instantiator_list): ditto.
11939 (glyph_instantiator_to_glyph): use internal symbol rather than
11941 (widget_update): renamed from widget_set_property. Call cascaded
11943 (redisplay_widget): renamed from update_widget.
11944 (widget_layout): image_instance_layout now takes position as well
11946 (widget_normalize): ditto.
11947 (widget_instantiate): ditto.
11948 (tab_control_query_geometry) ditto.:
11949 (tab_control_update): renamed from tab_control_set_property.
11950 (progress_gauge_update): set_property -> update.
11951 (layout_normalize): rewrite so that child instantiators are
11953 (layout_update): new function. Create glyphs from the normalized
11954 children and cope with any other layout keywords. We do not
11955 instantiate children here that will be take care of by
11956 redisplay_output_layout.
11957 (layout_instantiate): call layout_update and not much else.
11958 (layout_post_instantiate): not sure whether this is needed
11960 (layout_query_geometry): query glyph geometry rather than
11961 image_instance geometry.
11962 (layout_layout): set offsets from pass in parameters. Use glyph
11963 geometry and layout functions rather than image instance ones.
11964 (native_layout_layout): ditto.
11965 (syms_of_glyphs_widget): add make-glyph and set-glyph-image.
11966 (image_instantiator_widget): set_property -> update.
11967 (image_instantiator_buttons): ditto.
11968 (image_instantiator_progress_guage): ditto.
11969 (image_instantiator_tab_control): ditto.
11970 (VALID_LAYOUT_KEYWORDS): instantiators must now be vectors.
11971 (image_instantiator_layout): add update method.
11973 * glyphs-msw.c (bmp_normalize):
11974 (mswindows_resource_normalize): add dest_mask so that it can be
11975 proprogated by layout_normalize.
11976 (begin_defer_window_pos): make optional because it may not be the
11977 right thing to do and it introduces differences with X.
11978 (mswindows_unmap_subwindow): ditto.
11979 (mswindows_map_subwindow): ditto.
11980 (mswindows_redisplay_subwindow): renamed from
11981 mswindows_update_subwindow.
11982 (mswindows_redisplay_widget): ditto.
11983 (mswindows_button_redisplay): renamed from
11984 mswindows_button_update. Update is now what the instantiation
11985 function does for a changed instantiator.
11986 (mswindows_progress_gauge_instantiate): set the progress value
11987 here if appropriate.
11988 (mswindows_tab_control_redisplay): cope with re-ordering of the
11989 members of the tab widget by simply selecting the new top
11990 widget. This makes things appear ok if you click on a tab.
11991 (mswindows_combo_box_instantiate): image_instance_layout now takes
11992 position as well as size.
11993 (mswindows_progress_gauge_redisplay): renamed from
11994 mswindows_progress_gauge_update.
11995 (console_type_create_glyphs_mswindows): fix update -> redisplay.
11996 (image_instantiator_format_create_glyphs_mswindows): ditto.
11998 * glyphs-eimage.c (jpeg_normalize):
12001 (tiff_normalize): add dest_mask so that it can be proprogated by
12005 (print_hash_table):
12006 (hash_table_weakness_validate):
12007 (decode_hash_table_weakness):
12008 (Fhash_table_weakness):
12009 (Fhash_table_type):
12010 (syms_of_elhash): use Ben's naming scheme for hashtable types..
12012 * console.h (struct console_methods): move update_* to
12015 2000-07-20 Ben Wing <ben@xemacs.org>
12017 * *.[ch] (XSETOBJ): remove unused middle argument.
12018 lisp-disunion.h: correct wrap_object() to one argument.
12020 2000-07-15 Ben Wing <ben@xemacs.org>
12023 * s/cygwin32.h (CYGWIN_CONV_PATH):
12024 Add missing logb prototype for v1.1.
12025 Use post-b20 names and alias to pre-b20 names when pre-b20.
12027 * s/windowsnt.h: [5].
12029 2000-07-15 Ben Wing <ben@xemacs.org>
12031 * Makefile.in.in (x_objs):
12032 * Makefile.in.in (sheap_objs):
12033 * Makefile.in.in (objs):
12034 added win32.o, cosmetic cleanups.
12036 * alloc.c (Fmake_byte_code):
12037 [[[1]]]: Changes for new LIST_LOOP, EXTERNAL_LIST_LOOP,
12038 etc. macros which declare their own args now.
12040 * alloc.c (syms_of_alloc):
12041 [[[2]]]: Use DEFSYMBOL, DEFKEYWORD, DEFERROR and friends.
12044 Moved buffer-dedicated-frame, set-buffer-dedicated-frame into lisp.
12046 * buffer.c (Fget_file_buffer):
12047 Fixed GCPRO problem.
12049 * buffer.c (get_truename_buffer):
12050 Fixed comment about GC checking.
12052 * buffer.c (syms_of_buffer):
12053 Undeclared those dedicated frame funs.
12057 Define convenience macros for internal/external conversions.
12058 [[[3]]]: Define codesys aliases Qcommand_argument_encoding
12059 and Qenvironment_variable_encoding for cleaner code.
12062 Remove dedicated-frame; in lisp.
12064 * bytecode.c (funcall_compiled_function):
12067 * bytecode.c (syms_of_bytecode):
12071 * console-msw.c (mswindows_show_console): Rewrote.
12073 * console-msw.c (Fmswindows_debugging_output): New.
12074 Sends to OutputDebugString (special MSWin debugger interface).
12076 * console-msw.c (Fmswindows_message_box):
12077 Fixed stupid bugs so it works when called from kill-emacs.
12079 * console-msw.c (syms_of_console_mswindows):
12080 Declare Fmswindows_debugging_output.
12083 New MSWin prototypes.
12085 * console-msw.h (struct mswindows_frame):
12086 New entry last-click-mods for improved button-modifier support.
12088 * console-msw.h (FRAME_MSWINDOWS_POPUP):
12089 New struct entry `popup' with corresponding accessor.
12092 * console-x.c (split_up_display_spec):
12093 * console-x.c (get_display_arg_connection):
12094 * console-x.c (x_semi_canonicalize_console_connection):
12095 * console-x.c (x_canonicalize_device_connection):
12096 [[[6]]]: Change char to more specific type.
12097 [[[8]]]: Make use of abstracting codesys aliases defined in [3], [4];
12099 * console-x.c (x_semi_canonicalize_console_connection):
12100 * console-x.c (x_canonicalize_device_connection):
12101 [[[9]]]: Fix up error signalling to use new structured error system.
12104 [[[4]]]: Define codesys aliases:
12105 Qlwlib_encoding, Qx_atom_name_encoding, Qx_font_name_encoding,
12106 Qx_color_name_encoding, Qx_display_name_encoding.
12108 * console.h (struct console_methods):
12109 New method make_dialog_box_internal supersedes older
12110 popup_dialog_box method.
12113 Define many new errors, part of new structured errors.
12115 * data.c (init_errors_once_early):
12116 * data.c (syms_of_data):
12119 * device-msw.c (mswindows_init_device):
12120 [[[5]]]: Cleanup to support NT 3.51.
12122 * device-msw.c (decode_devmode): Cleanup.
12124 * device-msw.c (mswindows_handle_print_setup_dialog_box):
12125 * device-msw.c (mswindows_handle_print_dialog_box):
12126 * device-msw.c (mswindows_handle_page_setup_dialog_box):
12127 * device-msw.c (syms_of_device_mswindows):
12128 Delete the dialog box primitives recently introduced by Kirill and
12129 instead interface to general dialog box interface.
12132 * device-x.c (compute_x_app_name):
12133 * device-x.c (x_init_device):
12134 * device-x.c (Fx_valid_keysym_name_p):
12135 * device-x.c (Fx_set_font_path):
12139 * device.h (wrap_device): New.
12140 First of its kind; meant to replace XSETDEVICE.
12142 * dialog-msw.c: Many file-dialog symbols.
12144 * dialog-msw.c (mswindows_register_popup_frame): New.
12145 * dialog-msw.c (mswindows_is_dialog_msg): New.
12146 For supporting kbd traversal in dialog boxes.
12148 * dialog-msw.c (dialog_proc):
12149 Support hitting ESC in dialogs.
12151 * dialog-msw.c (struct):
12152 Common dialog box errors.
12154 * dialog-msw.c (handle_file_dialog_box): New.
12155 Add file dialog code.
12157 * dialog-msw.c (handle_question_dialog_box):
12158 Redo existing code to support new question dialog syntax.
12160 * dialog-msw.c (console_type_create_dialog_mswindows):
12161 We support new dialog console method.
12163 * dialog-msw.c (syms_of_dialog_mswindows):
12164 * dialog-msw.c (vars_of_dialog_mswindows):
12165 New file dialog symbols, vars.
12168 * dialog-x.c (maybe_run_dbox_text_callback):
12169 * dialog-x.c (dbox_descriptor_to_widget_value):
12170 * dialog-x.c (x_make_dialog_box_internal):
12171 * dialog-x.c (console_type_create_dialog_x):
12172 Mule-ize entire file.
12173 Redo to support question dialog syntax.
12177 * dialog.c (Fmake_dialog_box_internal):
12178 * dialog.c (syms_of_dialog):
12179 Kill old popup-dialog-box, replace with new primitive.
12180 Just call device method or signal error.
12182 * eldap.c (Fldap_open):
12183 * eldap.c (Fldap_search_basic):
12184 * eldap.c (Fldap_add):
12185 * eldap.c (Fldap_modify):
12190 * emacs.c (make_arg_list_1):
12191 * emacs.c (make_arg_list):
12192 Mule-ize call to dll_init().
12196 * emacs.c (make_argc_argv):
12197 * emacs.c (free_argc_argv):
12198 * emacs.c (init_cmdargs):
12199 * emacs.c (main_1):
12200 * emacs.c (Fkill_emacs):
12201 * emacs.c (Fdump_emacs):
12202 Update comments about what can be used in syms_* etc.
12203 Call init_win32() when necessary.
12204 Fix up MS Win dialog box in kill-buffer to actually work right.
12215 * eval.c (condition_case_3):
12217 * eval.c (function_argcount):
12218 * eval.c (funcall_lambda):
12221 * eval.c (type_error): New.
12222 * eval.c (maybe_type_error): New.
12223 * eval.c (continuable_type_error): New.
12224 * eval.c (maybe_continuable_type_error): New.
12225 * eval.c (type_error_with_frob): New.
12226 * eval.c (maybe_type_error_with_frob): New.
12227 * eval.c (continuable_type_error_with_frob): New.
12228 * eval.c (maybe_continuable_type_error_with_frob): New.
12229 New functions for use with structured errors.
12232 * event-Xt.c (x_event_to_emacs_event):
12233 Buttons are now modifiers too.
12235 * event-Xt.c (emacs_Xt_current_event_timestamp):
12236 Implement new event method.
12237 * event-Xt.c (reinit_vars_of_event_Xt): Set it.
12240 * event-msw.c (ntpipe_shove_writer): [5].
12241 * event-msw.c (mswindows_enqueue_mouse_button_event):
12242 * event-msw.c (mswindows_drain_windows_queue):
12243 * event-msw.c (mswindows_wnd_proc): [7].
12244 * event-msw.c (mswindows_current_layout_has_AltGr): [5].
12245 * event-msw.c (mswindows_modifier_state):
12246 Throughout: support new button modifiers.
12248 * event-msw.c (emacs_mswindows_current_event_timestamp):
12249 Implement new event method.
12250 * event-msw.c (reinit_vars_of_event_mswindows): Set it.
12253 * event-stream.c (event_stream_current_event_timestamp): New.
12254 * event-stream.c (maybe_kbd_translate): New functionality.
12255 * event-stream.c (vars_of_event_stream):
12256 Document new kbd-translate-table functionality.
12258 * event-stream.c (Fcurrent_event_timestamp): New.
12259 New primitive for use in fabricated events.
12260 * event-stream.c (syms_of_event_stream): [2]. Declare new primitive.
12262 * events-mod.h (XEMACS_MOD_BUTTON1): new button modifiers.
12265 * events.c (Fmake_event):
12266 * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY):
12270 * events.c (format_event_object): fix gcc warnings.
12272 * events.c (Fevent_timestamp): Document new primitives.
12274 * events.c (TIMESTAMP_HALFSPACE): New.
12276 * events.c (Fevent_timestamp_lessp): New. New primitive for
12277 comparing timestamps correctly (half-space algorithm).
12279 * events.c (Fevent_modifier_bits): Doc fix.
12281 * events.c (Fevent_modifiers): Major doc addition.
12282 * events.c (event_x_y_pixel_internal): Typo fix.
12283 * events.c (syms_of_events): Declare new primitives.
12286 Update long comment for button modifiers, timestamps.
12288 * events.h (struct event_stream):
12289 New current_event_timestamp method.
12292 * extents.c (extent_in_region_p):
12293 * extents.c (decode_extent):
12294 * extents.c (Fset_extent_parent):
12295 * extents.c (decode_map_extents_flags):
12299 * extents.c (struct extent_at_arg):
12300 * extents.c (decode_extent_at_flag):
12301 * extents.c (extent_at_mapper):
12302 * extents.c (extent_at_bytind):
12303 * extents.c (Fextent_at): Adapt to new lower-level interface. [9].
12304 * extents.c (Fextents_at): New primitive. [9].
12305 * extents.c (symbol_to_glyph_layout): [9].
12306 Support new primitive `extents-at'.
12309 * extents.c (get_text_property_bytind):
12310 extent_at_bytind has another arg.
12313 * extents.c (syms_of_extents): New primitive.
12315 * file-coding.c (Fmake_coding_system): [1].
12316 * file-coding.c (subsidiary_coding_system): fix gcc warning
12317 * file-coding.c (syms_of_file_coding): [2].
12319 * fileio.c (Fexpand_file_name):
12320 * fileio.c (Fsysnetunam):
12321 * fileio.c (Ffile_exists_p):
12322 * fileio.c (Ffile_executable_p):
12323 * fileio.c (Fverify_visited_file_modtime):
12326 * fileio.c (syms_of_fileio): [2].
12328 * filelock.c (lock_file_1):
12329 * filelock.c (current_lock_owner):
12330 * filelock.c (lock_if_free):
12331 * filelock.c (lock_file):
12332 * filelock.c (unlock_file):
12335 * fns.c (concat): Fix gcc warning.
12338 * fns.c (Fold_member):
12340 * fns.c (Fold_memq):
12341 * fns.c (memq_no_quit):
12343 * fns.c (Fold_assoc):
12345 * fns.c (Fold_assq):
12346 * fns.c (assq_no_quit):
12348 * fns.c (Fold_rassoc):
12350 * fns.c (Fold_rassq):
12351 * fns.c (rassq_no_quit):
12353 * fns.c (Fold_delete):
12355 * fns.c (Fold_delq):
12356 * fns.c (delq_no_quit):
12357 * fns.c (Fremassoc):
12358 * fns.c (Fremassq):
12359 * fns.c (remassq_no_quit):
12360 * fns.c (Fremrassoc):
12361 * fns.c (Fremrassq):
12362 * fns.c (remrassq_no_quit):
12363 * fns.c (Freverse):
12367 * frame-msw.c (mswindows_init_frame_1):
12368 * frame-msw.c (mswindows_delete_frame):
12369 Register popups with dialog code so keyboard traversing works.
12371 * frame-tty.c (tty_raise_frame_no_select): [1].
12374 * frame-x.c (x_set_frame_text_value):
12375 * frame-x.c (x_set_frame_properties):
12376 * frame-x.c (x_create_widgets):
12380 * frame.c (Fmouse_pixel_position): Minor doc fixes.
12382 * frame.h (wrap_frame): New.
12383 Macro like wrap_device.
12386 * general.c (SYMBOL):
12387 * general.c (syms_of_general):
12388 Major reorg. This is now just a wrapper and symbols themselves
12389 are listed in general-slots.h.
12391 * glyphs-eimage.c (tiff_instantiate): Need cast to fix warning.
12392 * glyphs-msw.c (mswindows_resource_instantiate): [5].
12394 * glyphs-msw.c (mswindows_native_layout_instantiate):
12395 Add DS_CONTROL so keyboard traversal will work.
12398 * glyphs-widget.c (syms_of_glyphs_widget):
12399 Move some symbols to general-slots.h.
12402 * glyphs-x.c (xbm_instantiate_1):
12403 * glyphs-x.c (x_xbm_instantiate):
12404 * glyphs-x.c (x_xface_instantiate):
12405 * glyphs-x.c (autodetect_instantiate):
12406 * glyphs-x.c (cursor_font_instantiate):
12407 * glyphs-x.c (x_update_widget):
12408 * glyphs-x.c (x_widget_instantiate):
12409 * glyphs.c (bitmap_to_lisp_data):
12410 * glyphs.c (pixmap_to_lisp_data):
12413 * glyphs.c (syms_of_glyphs):
12417 * gui-x.c (print_widget_value):
12418 * gui-x.c (menu_separator_style_and_to_external):
12419 * gui-x.c (add_accel_and_to_external):
12420 * gui-x.c (button_item_to_widget_value):
12421 * gui-x.c (gui_items_to_widget_values_1):
12422 * gui-x.c (gui_items_to_widget_values):
12423 * gui-x.c (syms_of_gui_x):
12424 * gui-x.c (vars_of_gui_x):
12425 Mule-ize entire file. Move menu-no-selection-hook to gui.c.
12429 Muleize, prototype changes matching gui-x.c.
12432 * gui.c (separator_string_p):
12433 * gui.c (gui_item_add_keyval_pair):
12434 * gui.c (make_gui_item_from_keywords_internal):
12435 * gui.c (signal_too_long_error):
12436 * gui.c (parse_gui_item_tree_item):
12437 * gui.c (syms_of_gui):
12438 * gui.c (vars_of_gui):
12440 menu-no-selection-hook moved here (used by MSWin).
12441 Move some symbols to general-slots.h.
12445 * insdel.c (get_buffer_pos_char):
12446 * insdel.c (get_buffer_range_char):
12449 * keymap.c (keymap_lookup_directly):
12450 * keymap.c (keymap_store):
12451 * keymap.c (ensure_meta_prefix_char_keymapp):
12452 * keymap.c (describe_map):
12454 Support new button modifiers.
12456 * lisp-disunion.h (wrap_object):
12457 * lisp-disunion.h (XSETOBJ):
12458 Rename make_obj to wrap_object.
12461 * lisp-union.h (make_int):
12462 * lisp-union.h (make_char):
12463 Support wrap_object.
12466 * lisp.h (LIST_LOOP):
12467 * lisp.h (EXTERNAL_LIST_LOOP):
12468 * lisp.h (LIST_LOOP_2):
12469 * lisp.h (EXTERNAL_LIST_LOOP_1):
12470 * lisp.h (EXTERNAL_LIST_LOOP_2):
12471 * lisp.h (EXTERNAL_LIST_LOOP_3):
12472 * lisp.h (EXTERNAL_LIST_LOOP_4_NO_DECLARE):
12473 * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
12474 * lisp.h (GET_EXTERNAL_LIST_LENGTH):
12475 * lisp.h (EXTERNAL_ALIST_LOOP_5):
12476 * lisp.h (EXTERNAL_ALIST_LOOP_6):
12477 * lisp.h (EXTERNAL_ALIST_LOOP_6_NO_DECLARE):
12478 * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_5_NO_DECLARE):
12479 * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_7):
12480 * lisp.h (struct Lisp_Symbol):
12481 * lisp.h (maybe_continuable_error_with_frob):
12482 Fix up section comments.
12483 Add new types for char to indicate usage.
12484 Delete symbols auto-generated from general-slots.h.
12485 Add prototypes for structured error functions.
12486 Add long comments describing looping macros and change interface
12487 so that lvalues are automatically declared.
12488 Add NO_DECLARE macro in case callers want to declare lvalues
12491 * lread.c (read_syntax_error):
12492 * lread.c (continuable_read_syntax_error):
12493 * lread.c (read_structure):
12494 * lread.c (sequence_reader):
12495 * lread.c (read_list_conser):
12496 * lread.c (read_compiled_function):
12497 Rename syntax_error and continuable_syntax_error to avoid clash
12498 with same-named structured error functions.
12500 * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
12501 * menubar-msw.c (populate_menu_add_item):
12502 * menubar-msw.c (populate_or_checksum_helper):
12507 * menubar-x.c (menu_item_descriptor_to_widget_value_1):
12508 Mule-ize whole file.
12510 * menubar.c (Fnormalize_menu_item_name): Add optimization.
12512 * mule-charset.c (Fmake_charset):
12513 * mule-wnnfns.c (Fwnn_set_param):
12516 * ntproc.c (create_child):
12517 * ntproc.c (Fwin32_set_current_locale):
12518 Add comments portending doom.
12521 * objects-msw.c (old_font_enum_callback_2):
12522 * objects-msw.c (font_enum_callback_1):
12523 * objects-msw.c (mswindows_enumerate_fonts):
12527 * objects-x.c (allocate_nearest_color):
12528 * objects-x.c (x_parse_nearest_color):
12529 * objects-x.c (x_initialize_color_instance):
12530 * objects-x.c (x_print_color_instance):
12531 * objects-x.c (x_finalize_color_instance):
12532 * objects-x.c (x_valid_color_name_p):
12533 * objects-x.c (x_initialize_font_instance):
12534 * objects-x.c (x_print_font_instance):
12535 * objects-x.c (valid_x_font_name_p):
12536 * objects-x.c (truename_via_FONT_prop):
12537 * objects-x.c (truename_via_random_props):
12538 * objects-x.c (truename_via_XListFonts):
12539 * objects-x.c (x_font_truename):
12540 * objects-x.c (x_font_instance_truename):
12541 * objects-x.c (x_font_instance_properties):
12542 * objects-x.c (x_list_fonts):
12543 * objects-x.c (x_find_charset_font):
12544 Mule-ize entire file.
12551 * print.c (std_handle_out_external):
12552 * print.c (debug_print_no_newline):
12553 * print.c (syms_of_print):
12554 Output to all debugger kinds in debug-print.
12555 Fix console-output code under MSWin to actually work.
12557 * process-nt.c (send_signal):
12558 * process-nt.c (nt_create_process):
12559 Use newer Unicode macros.
12561 * process-unix.c (unix_create_process):
12562 * process-unix.c (unix_canonicalize_host_name):
12563 * process-unix.c (unix_open_network_stream):
12569 * search.c (syms_of_search):
12572 * select-msw.c (mswindows_destroy_selection):
12575 * select-x.c (symbol_to_x_atom):
12578 * select.c (syms_of_select):
12581 * sound.c (Fplay_sound_file):
12585 * specifier.c (decode_specifier_type):
12586 * specifier.c (Fvalid_specifier_locale_type_p):
12587 * specifier.c (check_valid_locale_or_locale_type):
12588 * specifier.c (decode_locale):
12589 * specifier.c (decode_locale_type):
12590 * specifier.c (decode_locale_list):
12591 * specifier.c (check_valid_domain):
12592 * specifier.c (decode_specifier_tag_set):
12593 * specifier.c (Fcanonicalize_tag_set):
12594 * specifier.c (Fdefine_specifier_tag):
12595 * specifier.c (Fspecifier_tag_predicate):
12596 * specifier.c (check_valid_inst_list):
12597 * specifier.c (check_valid_spec_list):
12598 * specifier.c (decode_how_to_add_specification):
12599 * specifier.c (check_modifiable_specifier):
12600 * specifier.c (specifier_add_spec):
12601 * specifier.c (boolean_validate):
12602 * specifier.c (display_table_validate):
12605 * specifier.c (syms_of_specifier):
12606 Move some symbols to general-slots.h.
12610 * symbols.c (Fmapatoms):
12611 * symbols.c (Fapropos_internal):
12614 * symbols.c (set_default_buffer_slot_variable):
12615 * symbols.c (set_default_console_slot_variable):
12618 * symbols.c (defsymbol_massage_name_1):
12619 * symbols.c (defkeyword_massage_name):
12620 * symbols.c (deferror_1):
12621 * symbols.c (deferror):
12622 * symbols.c (deferror_massage_name_and_message):
12624 * symeval.h (DEFSYMBOL):
12625 Support DEFSYMBOL*, DEFKEYWORD, DEFERROR
12627 * symbols.c (syms_of_symbols):
12631 * symsinit.h (init_win32): New.
12632 Also new is syms_of_dialog_mswindows.
12635 Add new Unicode macros, missing Cygwin wide-char functions,
12636 convenience conversion macros for Qmswindows_tstr, macros for
12637 encapsulating required MSWin <-> Cygwin filename conversions,
12638 prototype for dynamically-extracted (not in NT 3.51) functions.
12643 * tooltalk.c (Fadd_tooltalk_message_arg):
12644 * tooltalk.c (Fadd_tooltalk_pattern_attribute):
12645 * tooltalk.c (Fadd_tooltalk_pattern_arg):
12648 * tooltalk.c (syms_of_tooltalk):
12652 * unexnt.c (unexec):
12653 Fix up headers, declaration of unexec() to be more standard.
12655 2000-07-20 Martin Buchholz <martin@xemacs.org>
12657 * offix.h: Revert change to guard macros - they're used in offix.c!
12659 2000-07-18 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
12661 * lisp.h: Defsubred Fdelete.
12663 * console-msw.h: (msprinter_default_printer): Added.
12665 * console-msw.c (msprinter_canonicalize_console_connection):
12666 (msprinter_canonicalize_device_connection): Added.
12668 * device-msw.c (msprinter_default_printer):
12669 (Fmswingows_get_default_printer):
12670 (signal_enum_priner_error):
12671 (Fmswingows_printer_list): Added.
12673 2000-07-19 Martin Buchholz <martin@xemacs.org>
12675 * XEmacs 21.2.35 is released.
12677 2000-07-19 Martin Buchholz <martin@xemacs.org>
12679 * select-x.c (x_handle_selection_request):
12680 Text selected in xemacs and pasted into xterm failed to appear.
12681 Spelling fixes and cosmetic changes.
12683 2000-07-18 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
12685 * event-msw.c (mswindows_drain_windows_queue): Correctly check for
12686 XEmacs frame (fix for doubling chars in dialog boxes).
12688 2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
12690 * select.c (select_convert_in, select_convert_out):
12691 Don't call intern() every time.
12693 * select.c (Qselect_convert_in, Qselect_convert_out): New.
12694 * select.c (vars_of_select): Initialise them.
12696 2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
12698 * select.c (selection-coercible-types): New.
12700 * select.c (own-selection-internal):
12701 * select.c (get-selection-internal):
12702 MULE bug fix - these should default to COMPOUND_TEXT and not
12703 STRING for MULE. I think.
12705 * select.c (select_convert_out): Use selection-coercible-types
12706 to find types that we can attempt to perform coercions on.
12708 2000-07-18 Martin Buchholz <martin@xemacs.org>
12712 Add coding: cookie to identify encoding.
12714 * mule-canna.c (CANNA_mode_keys): make static.
12715 Use proper prototypes, even for functions of no arguments.
12716 Remove external prototype for Fding().
12718 * symsinit.h: Add missing prototype for reinit_vars_of_mule_wnn.
12720 * select.c (syms_of_select): Add missing DEFSUBR.
12722 2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
12724 * select.c (get_selection_internal, own_selection_internal):
12725 Make the type default to STRING, rather than placing a nil type
12726 into Vselection_alist.
12728 2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
12730 * gpmevent.c (tty_selection_exists_p):
12731 * gpmevent.c (tty_own_selection):
12732 Updated parameter lists.
12734 2000-07-15 Alastair J. Houghton <ajhoughton@lineone.net>
12736 * select.h (selection-alist): Removed declaration.
12738 * select.h (get_local_selection):
12739 * select.c (get_local_selection):
12742 * select.h (convert_selection): Removed declaration.
12743 * select.c (convert_selection): Removed.
12744 This function belongs in Lisp.
12746 * select.h (select_convert_in): Declare.
12747 * select.h (select_convert_out): Declare.
12748 * select.c (select_convert_in): New.
12749 * select.c (select_convert_out): New.
12750 New conversion functions for other files to call.
12752 * select.h (select_notify_buffer_kill): Declare.
12753 * select.c (select_notify_buffer_kill): New.
12754 New functions that get called from kill-buffer.
12756 * buffer.c (kill-buffer): Call select_notify_buffer_kill, rather than
12757 X-specific lisp code.
12759 * select.h: Declare some of the lisp-visible functions for
12762 * select.c (clean_local_selection_data): Removed. This was
12763 a disgusting function, and previously should have been in
12764 select-x.c in any case. The functionality is now provided
12765 in select-convert-from-integer (select.el).
12767 * select.c (available-selection-types): Fixed stupidity where
12768 INTEGER and ATOM got added twice. Also add STRING when we see an
12771 * select.c (get-selection-internal): Removed symbol stripping. No
12772 longer causes conversion when data comes from the internal cache.
12774 * select.c (syms_of_select): Added new functions.
12776 * select-x.c (motif_clipboard_cb): Use select_convert_out. Rewrote
12777 error checking - previously this called abort!
12779 * select-x.c (x_own_selection): Changed comment.
12781 * select-x.c (x_handle_selection_request): Use select_convert_out.
12782 Don't mess with selection-alist; it's an internal variable of select.c.
12784 * select-x.c (x_get_foreign_selection): Use select_convert_in.
12786 * select-x.c (x_handle_selection_clear): Use get-selection-timestamp,
12787 rather than messing with selection-alist.
12789 * select-msw.c (mswindows_get_foreign_selection):
12790 Use TO_INTERNAL_FORMAT rather than hacking.
12792 2000-07-14 Martin Buchholz <martin@xemacs.org>
12794 * process-unix.c (unix_open_multicast_group):
12795 (unix_open_multicast_group): Remove useless casts.
12797 2000-07-13 Martin Buchholz <martin@xemacs.org>
12799 * sound.c (Fplay_sound): Fix `unused variable' warning.
12801 * emacs.c (main): Use correct type for _environ on SCO5.
12803 2000-07-12 Alastair J. Houghton <ajhoughton@lineone.net>
12805 * console.h (own_selection_method):
12806 * console.h (selection_exists_p_method):
12807 * console.h (available_selection_types_method): New.
12808 * console.h (register_selection_data_type_method): New.
12809 * console.h (selection_data_type_name): New.
12811 * console-msw.h (mswindows_destroy_selection): Declare it. New
12812 function & alist to track GlobalAlloc()'d handles that need
12813 releasing when the clipboard data gets replaced or emptied.
12815 * event-msw.c (mswindows_wnd_proc): Call it.
12817 * lisp.h, general.c (Qappend): New symbol representing a
12820 * select.c (own-selection-internal):
12821 * select.c (selection-exists-p):
12822 * select.c (available-selection-types): New.
12823 * select.c (register-selection-data-type): New.
12824 * select.c (selection-data-type-name): New. New functions to deal
12825 with device-specific selection data formats.
12826 * select.c (selection-converter-out-alist): Renamed.
12827 * select.c (selection-converter-in-alist): New.
12828 * select.c (selection-appender-alist): New. Added new alists.
12829 * select.c (syms_of_select, vars_of_select): Added new symbols &
12831 * select.c (get_local_selection): Split.
12832 * select.c: Removed spurious type checking - selections may now be
12833 of any type, not just strings.
12834 * select.c (own-selection-internal):
12836 * select.h, select.c (convert_selection): New. Created
12837 convert_selection() function based on get_local_selection().
12838 * select.h, select.c (QCF_*): New symbols representing mswindows
12840 * select.h, select.c (Qreplace_all, Qreplace_existing): New
12841 symbols representing `how-to-add' modes.
12843 * select-msw.c (x_sym_p): New.
12844 * select-msw.c (symbol_to_ms_cf): New.
12845 * select-msw.c (ms_cf_to_symbol): New. New functions to deal with
12846 symbols & clipboard formats. Can also handle string names.
12847 * select-msw.c (mswindows_own_selection):
12848 * select-msw.c (mswindows_selection_exists_p):
12849 Added `data-type' parameter. Use it.
12850 * select-msw.c (mswindows_available_selection_types): New.
12851 * select-msw.c (mswindows_register_selection_data_type): New.
12852 * select-msw.c (mswindows_selection_data_type_name): New.
12853 * select-msw.c (mswindows_own_selection):
12854 * select-msw.c (mswindows_get_foreign_selection):
12855 * select-msw.c (mswindows_selection_exists_p): Rewrote.
12856 * select-msw.c (console_create_select_mswindows): Added new methods.
12857 * select-msw.c (mswindows_destroy_selection): New.
12858 * select-msw.c (Vhandle_alist): New list.
12859 * select-msw.c (mswindows_own_selection):
12861 * select-x.c (x_own_selection):
12862 * select-x.c (x_selection_exists_p):
12863 * select-x.c: Added some comments about maybe using new
12865 * select-x.c (x_own_selection):
12867 * specifier.c: Remove definition of Qappend (now in general.c)
12868 * specifier.c (syms_of_specifier): Remove Qappend.
12870 2000-07-12 Martin Buchholz <martin@xemacs.org>
12872 * config.h.in: Add socklen_t.
12874 * s/decosf4-0.h: No special compiler flags needed or desired.
12875 In particular, undefine _BSD for DEC OSF 4.0.
12877 2000-07-07 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
12879 * redisplay-msw.c (msprinter_frame_output_end): Added.
12880 (console_type_create_redisplay_mswindows): Referred the above.
12882 * frame.c (setup_frame_without_minibuffer): Do not create a
12883 default minibuffer frame on a printer device.
12885 * frame-msw.c (apply_dc_geometry): Added.
12886 (msprinter_start_page):
12887 (msprinter_init_frame_3):
12888 (msprinter_eject_page): Use it.
12890 * console-msw.h (struct msprinter_frame): Added pix_left and top,
12891 and removed residual duplex and orientation properties.
12893 2000-07-11 Martin Buchholz <martin@xemacs.org>
12895 * eval.c (function_argcount): Work around a DEC CC compiler bug.
12897 * unexalpha.c: Remove system prototypes from C sources!
12899 2000-07-09 Adrian Aichner <aichner@ecf.teradyne.com>
12901 * eval.c: Remove references to M-x edit-options in DEFUNs for
12902 `defvar' and `defconst'.
12904 2000-07-09 Martin Buchholz <martin@xemacs.org>
12906 * config.h.in: Remove SMART_INCLUDE hackery.
12908 PostgreSQL hacking:
12909 * config.h.in: Don't use SMART_INCLUDE.
12911 * postgresql.h: Include libpq-fe.h here. Fix typo.
12912 * inline.c: Simply #include "postgresql.h"
12914 - Don't use SMART_INCLUDE
12915 - Use simply "const".
12916 - Use standard doc string conventions.
12917 - Use correct type for result of PQstatus.
12919 2000-07-09 Martin Buchholz <martin@xemacs.org>
12921 * glyphs-x.c (x_xface_instantiate): Fix C++ compilation warnings.
12923 C++ compilation changes.
12924 * config.h.in (EXTERN_C): Define.
12925 * config.h.in (not): This is also a C++ keyword.
12926 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Enable C++ compilation.
12927 * cm.c: Use EXTERN_C.
12928 * redisplay-tty.c: Use EXTERN_C.
12929 * sysdep.c: Use EXTERN_C. Remove Gould support.
12931 2000-07-09 Martin Buchholz <martin@xemacs.org>
12933 * general.c: Remove duplicate definition for Qfunction.
12935 2000-07-08 Ben Wing <ben@xemacs.org>
12937 * device-msw.c (msprinter_init_device):
12938 * device-msw.c (sync_printer_with_devmode):
12939 * device-msw.c (handle_devmode_changes):
12940 * device-msw.c (print_dialog_worker):
12941 * device-msw.c (Fmsprinter_apply_settings):
12942 * device-msw.c (hash_devmode):
12943 * device-msw.c (Fmsprinter_settings_despecialize):
12944 use Qmswindows_tstr, not Qctext.
12946 * vm-limit.c (check_memory_limits):
12947 avoid infinite loop printing warning messages.
12949 2000-07-05 Craig Lanning <lanning@scra.org>
12951 * Makefile.in.in: Add support for including the Windows resources
12952 when building with the cygwin and mingw targets.
12954 * buffer.c: from Dan Holmsand, on Windows $PWD is most likely either
12955 not set or not correct.
12956 (directory_is_current_directory): Don't compile for WIN32_NATIVE.
12957 (init_initial_directory): Don't try to use $PWD on the
12958 WIN32_NATIVE target.
12961 [[Add -mwindows to eliminate console window.]] not required --ben
12962 (HAVE_NATIVE_SOUND): removed; now handled by configure.
12963 (MAIL_USE_POP): removed; now handled by configure.
12965 * s\mingw32.h: [[Add -mwindows to eliminate console window.]] not in
12966 C_SWITCH_SYSTEM or it will affect lib-src progs. --ben
12967 (HAVE_NATIVE_SOUND): removed; now handled by configure.
12968 (MAIL_USE_POP): removed; now handled by configure.
12969 (ENCAPSULATE_STAT): from Dan Holmsand, added.
12970 (ENCAPSULATE_FSTAT): from Dan Holmsand, added.
12971 (DIRECTORY_SEP): from Dan Holmsand, use lisp variable instead of
12973 (HAVE_TIMEVAL): from Dan Holmsand, added; struct timeval is picked
12974 up from <winsock.h> via systime.h.
12975 (HAVE_GETPAGESIZE): from Dan Holmsand, added.
12976 (getpagesize): from Dan Holmsand, added.
12977 Added #endif which was left dangling by Ben's mega patch; added
12978 comment to help prevent this in the future.
12980 * sysdll.c: added #include <windows.h> for WIN32_NATIVE case.
12982 2000-07-05 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
12984 * console-msw.h (struct mswindows_device): Removed unnecessary
12985 cached device geometry values.
12986 Added update_tick and an accessor macro.
12987 (Lisp_Devmode): Added lrecord declaration.
12988 (struct msprinter_device): Contain devmode as a Lisp object.
12989 Added mswindows_get_selected_frame_hwnd();
12991 * console.h (struct console_methods): Indentation nitpicking.
12993 * device-msw.c (mswindows_init_device): Do not initialize geometry
12994 cache. Initialize update tick.
12995 (mswindows_device_system_metrics): Ask the device for its geometry.
12996 (global_free_2_maybe):
12997 (devmode_to_hglobal):
12998 (handle_printer_changes):
12999 (ensure_not_printing):
13000 (print_dialog_worker):
13001 (Fmsprinter_print_setup_dialog):
13002 (Fmsprinter_print_dialog):
13003 (plist_get_margin):
13004 (plist_set_margin):
13005 (Fmsprinter_page_setup_dialog): Added functions.
13006 (sync_printer_with_devmode):
13007 (handle_devmode_changes):
13008 (Fmsprinter_get_settings):
13009 (Fmsprinter_select_settings):
13010 (Fmsprinter_apply_settings):
13011 (allocate_devmode):
13012 (Fmsprinter_settings_copy):
13013 (Fmsprinter_settings_despecialize):
13015 (finalize_devmode):
13017 (hash_devmode): Added functions
13018 (syms_of_device_mswindows): Init devmode lrecord class.
13020 * device.h: Added an exfun for find-device.
13022 * event-msw.c (mswindows_wnd_proc): Do not update the cached
13023 geometry; although, recreate the device compatible DC.
13025 * frame-msw.c (mswindows_get_selected_frame_hwnd): Added.
13026 (msprinter_init_frame_3):
13027 (msprinter_frame_property):
13028 (msprinter_internal_frame_property_p):
13029 (msprinter_frame_properties):
13030 (msprinter_set_frame_properties): Removed 'orientation and 'duplex
13031 print job properties (will move to device settings).
13033 * lisp.h: Added symbols.
13035 * general.c (syms_of_general): Declared them.
13037 * hash.c (string_hash): Added.
13039 * lrecord.h (lrecord_type): Added devmode lrecord type.
13041 2000-07-02 Mike Sperber <mike@xemacs.org>
13043 * s/freebsd.h (INTERRUPTIBLE_OPEN): open *is* interruptible on
13046 2000-06-07 MORIOKA Tomohiko <tomo@etl.go.jp>
13048 * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
13051 2000-06-07 MORIOKA Tomohiko <tomo@urania.m17n.org>
13053 * data.c (Fstring_to_number): Don't recognize floating point if
13056 2000-06-22 Martin Buchholz <martin@xemacs.org>
13058 * glyphs-widget.c (tab_control_query_geometry):
13059 (widget_query_geometry):
13060 (button_query_geometry):
13061 * glyphs.c (text_query_geometry):
13062 Enforce type correctness.
13064 2000-06-18 Martin Buchholz <martin@xemacs.org>
13066 * s/decosf4-0.h (_etext): Use portable _etext instead of etext.
13067 * s/decosf4-0.h (_edata): Use portable _edata instead of edata.
13069 2000-06-17 Martin Buchholz <martin@xemacs.org>
13071 * s/decosf4-0.h: Never #include "/usr/include/FOO.h" because this
13072 conflicts with gcc's fixincluded version of FOO.h.
13074 * glyphs.h (image_instance_geometry): Remove trailing `,'
13076 2000-06-08 Mike Alexander <mta@arbortext.com>
13078 (MAX_SHOVE_BUFFER_SIZE): Change to 512 to match stream buffer size
13079 (shove_thread): Don't write the same output twice
13080 (make_ntpipe_output_stream): Increase priority of shove thread
13081 (ntpipe_shove_writer): Call SwitchToThread to give shove thread a
13083 (ntpipe_shove_closer): Don't delete the pipe until we're done with
13086 2000-06-12 Ben Wing <ben@xemacs.org>
13088 * s\mingw32.h (sigset):
13089 * s\windowsnt.h (sigset):
13090 rename msw_ to mswindows_ for consistency with general convention.
13092 2000-06-12 Ben Wing <ben@xemacs.org>
13095 * console-msw.c (mswindows_get_console_hwnd):
13096 * console-msw.c (mswindows_ensure_console_allocated):
13097 * console-msw.c (mswindows_hide_console):
13098 * console-msw.c (mswindows_show_console):
13099 * console-msw.c (mswindows_ensure_console_buffered):
13100 * console-msw.c (mswindows_output_console_string):
13101 * console-msw.c (mswindows_windows9x_p):
13103 * device-msw.c (mswindows_get_workspace_coords):
13104 * device-msw.c (mswindows_device_system_metrics):
13105 * dialog-msw.c (mswindows_popup_dialog_box):
13106 * event-msw.c (mswindows_wnd_proc):
13107 * frame-msw.c (mswindows_size_frame_internal):
13108 * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
13109 * menubar-msw.c (displayable_menu_item):
13110 * menubar-msw.c (mswindows_char_is_accelerator):
13112 * nt.c (mswindows_sigset):
13113 * nt.c (mswindows_sigrelse):
13114 * nt.c (mswindows_sigpause):
13115 * nt.c (mswindows_raise):
13116 * nt.c (timer_proc):
13118 * ntproc.c (find_child_console):
13119 * ntproc.c (sys_kill):
13121 * print.c (std_handle_out_external):
13122 * process-nt.c (find_child_console):
13123 * process-nt.c (send_signal_the_95_way):
13124 * process-nt.c (ensure_console_window_exists):
13125 * process-nt.c (nt_create_process):
13127 rename msw_ to mswindows_ for consistency with general convention.
13131 include nt.h, not syswindows.h.
13133 * nt.c (mswindows_fstat):
13134 * nt.c (mswindows_stat):
13135 prefix mswindows_ instead of attempting to directly override the
13136 library functions. fix declarations.
13139 include syswindows.h. move some sysdep.h stuff here.
13142 include syswindows.h, not <windows.h>.
13150 * sysdep.c (sys_fstat):
13151 * sysdep.c (sys_stat):
13152 call mswindows versions when appropriate.
13155 move mswin decls to nt.h.
13158 add long comment describing appropriate use of the various windows
13161 2000-06-11 Ben Wing <ben@xemacs.org>
13163 * device-x.c: Correct doc string for sixth arg of x-get-resource.
13165 2000-06-10 Ben Wing <ben@xemacs.org>
13167 * Makefile.in.in (release):
13168 Correction to make sure xemacs.exe always dumped when correct.
13172 [[[[3]]]]: Conditionalize on actual problem, not WINDOWSNT.
13174 * buffer.c (set_buffer_internal):
13175 [[[[2]]]]: Remove HAVE_FEP code.
13177 * buffer.c (init_initial_directory):
13181 [[[[4]]]]: limits.h standardly included in lisp.h; remove from
13185 * callproc.c (call_process_cleanup):
13186 * callproc.c (Fold_call_process_internal):
13187 * callproc.c (child_setup):
13188 * callproc.c (getenv_internal):
13189 * callproc.c (init_callproc):
13190 * callproc.c (vars_of_callproc):
13191 [[[[1]]]]: WINDOWSNT -> WIN32_NATIVE.
13192 __CYGWIN32__ -> CYGWIN.
13193 DOS_NT -> WIN32_NATIVE.
13194 Remove MSDOS support/references, converting to WIN32_NATIVE
13196 __MINGW32__ -> MINGW.
13197 Fix windows.h includes.
13198 Remove bogus HAVE_NTGUI.
13204 mswindows_message_outputted added for use in allowing startup
13205 errors on the console to be seen.
13207 * console-msw.c (msw_ensure_console_allocated):
13208 * console-msw.c (msw_output_console_string):
13209 * console-msw.c (DHEADER):
13210 * console-msw.c (DOPAQUE_DATA):
13211 * console-msw.c (DEVENT):
13212 * console-msw.c (DCONS):
13213 * console-msw.c (DCONSCDR):
13214 * console-msw.c (DSTRING):
13215 * console-msw.c (DVECTOR):
13216 * console-msw.c (DSYMBOL):
13217 * console-msw.c (DSYMNAME):
13220 * console-stream.c (stream_init_console):
13221 Fix text/binary problems.
13224 * device-msw.c (mswindows_finish_init_device):
13225 * device-msw.c (mswindows_delete_device):
13228 * device.c (handle_asynch_device_change):
13232 * dgif_lib.c (DGifOpenFileName):
13233 * dgif_lib.c (DGifOpenFileHandle):
13234 * dgif_lib.c (DGifGetLine):
13235 * dgif_lib.c (DGifGetPixel):
13236 Added config.h/lisp.h, fix up includes.
13243 * dired.c (file_name_completion):
13244 * dired.c (Ffile_attributes):
13245 * dired.c (syms_of_dired):
13249 * dumper.c (pdump_file_unmap):
13250 * dumper.c (pdump_load):
13254 * editfns.c (Ftemp_directory):
13255 * editfns.c (user_login_name):
13256 * editfns.c (Fuser_real_login_name):
13257 * editfns.c (get_home_directory):
13260 * elhash.c (finish_marking_weak_hash_tables):
13261 [[[[5]]]]: Fix GCC warnings.
13264 * emacs.c (mswindows_handle_hardware_exceptions):
13265 * emacs.c (make_arg_list_1):
13266 * emacs.c (main_1):
13267 * emacs.c (Fkill_emacs):
13268 * emacs.c (Fdump_emacs):
13270 Fix problems with nested crashes, add long comment.
13272 * event-Xt.c (init_event_Xt_late):
13276 * event-msw.c (mswindows_dde_callback):
13277 * event-msw.c (mswindows_handle_sticky_modifiers):
13278 * event-msw.c (mswindows_wnd_proc):
13282 * events.c (character_to_event):
13286 * fileio.c (Ffile_name_directory):
13287 * fileio.c (Ffile_name_nondirectory):
13288 * fileio.c (directory_file_name):
13289 * fileio.c (Fexpand_file_name):
13290 * fileio.c (Fsubstitute_in_file_name):
13291 * fileio.c (Ffile_name_absolute_p):
13292 * fileio.c (check_executable):
13293 * fileio.c (Ffile_readable_p):
13294 * fileio.c (Ffile_accessible_directory_p):
13295 * fileio.c (Ffile_modes):
13296 * fileio.c (Funix_sync):
13297 * fileio.c (vars_of_fileio):
13300 [[[[7]]]]: Move CORRECT_DIR_SEPS to s\windowsnt.h.
13302 Expand getdefdir defn.
13303 Fix bogus rename() comment.
13305 [[[[6]]]]: Fix Windows includes w.r.t. removed nt\inc. Attempt
13306 to use standard XEmacs include files, e.g. sysfile.h, rather
13307 than system-specific includes.
13313 * frame.c (vars_of_frame):
13317 * getloadavg.c (getloadavg):
13319 #ifdef XEMACS not defined on Cygwin. Remove this; no need for it.
13320 (We don't use it elsewhere in the code; just add a comment.)
13327 * glyphs-msw.c (mswindows_resource_instantiate):
13330 * glyphs-x.c (x_native_layout_instantiate):
13333 * gui-msw.c (Fmswindows_shell_execute):
13342 * lread.c (locate_file_in_directory_mapper):
13349 * mem-limits.h (get_lim_data):
13361 * nt.c (rva_to_section):
13362 * nt.c (mswindows_executable_type):
13364 Fix closedir() defn.
13367 [[[[8]]]]: *_OK defs moved to sysfile.h.
13376 * print.c (std_handle_out_external):
13380 * process-nt.c (nt_create_process):
13382 try to fix process quoting somewhat.
13384 * process-unix.c (unix_create_process):
13388 * process.c (vars_of_process):
13395 * realpath.c (xrealpath):
13398 * redisplay-tty.c (init_tty_for_redisplay):
13408 * sheap.c (more_static_core):
13409 * sheap.c (report_sheap_usage):
13413 * signal.c (alarm_signal):
13420 * strftime.c (zone_name):
13423 * symsinit.h (init_sunpro):
13427 commctrl.h not in Cygwin b20.1.
13430 * sysdep.c (endif):
13431 * sysdep.c (sys_subshell):
13432 * sysdep.c (init_baud_rate):
13433 * sysdep.c (emacs_get_tty):
13434 * sysdep.c (emacs_set_tty):
13435 * sysdep.c (tty_init_sys_modes_on_device):
13436 * sysdep.c (init_system_name):
13437 * sysdep.c (sys_open):
13438 * sysdep.c (interruptible_open):
13439 * sysdep.c (sys_fopen):
13440 * sysdep.c (sys_mkdir):
13441 * sysdep.c (sys_rename):
13442 * sysdep.c (get_process_times_1):
13449 * sysdir.h (DIRENTRY_NONEMPTY):
13452 * sysdll.c (dll_init):
13458 added text/binary defs.
13464 * sysproc.h (EDESTADDRREQ):
13465 * sysproc.h (poll_fds_for_input):
13482 Always define WIN32_LEAN_AND_MEAN.
13484 * unexcw.c (unexec):
13488 * unexec.c (copy_text_and_data):
13489 * unexec.c (adjust_lnnoptrs):
13493 * unexnt.c (_start):
13496 2000-06-07 Ben Wing <ben@xemacs.org>
13498 * mule-mcpath.c, mule-mcpath.h: Removed. Old, crufty code that
13499 was used only as a model. We've long since extracted any useful
13500 logic or code out of this. (I just did an exhaustive search.)
13502 * s\msdos.h: Removed.
13504 * s\windows95.h: Removed.
13506 2000-06-10 Ben Wing <ben@xemacs.org>
13510 Don't use extern with fun defs.
13514 Remove nt\inc include.
13515 Remove getdisk, getdefdir. (The former is unused, the latter
13516 expanded in fileio.h.)
13519 * s\windowsnt.h (WIN32_NATIVE):
13520 * s\windowsnt.h (HAVE_STRCASECMP):
13522 Add long comment about preprocessor changes.
13523 Remove getdisk, getdefdir. (The former is unused, the latter
13524 expanded in fileio.h.)
13526 2000-06-10 Ben Wing <ben@xemacs.org>
13535 Remove bogus/unused NO_SOCK_SIGIO.
13537 2000-06-08 Hrvoje Niksic <hniksic@iskon.hr>
13539 * lisp.h (set_string_char): Call set_string_byte with a Bufbyte,
13542 2000-06-04 Mike Sperber <mike@xemacs.org>
13544 * casetab.c (set_case_table): For `set-standard-case-table',
13545 actually deposit the new case tables where the rest of XEmacs can
13548 2000-06-05 Yoshiki Hayashi <yoshiki@xemacs.org>
13550 * data.c (Faset): Don't cast XCHAR() to unsigned char.
13552 2000-06-05 Ben Wing <ben@xemacs.org>
13554 * callproc.c (child_setup): Don't do close_load_descs() under
13555 MS Windows. Put in a comment explaining why.
13557 2000-05-28 Adrian Aichner <aichner@ecf.teradyne.com>
13559 * process-nt.c: Reverting patch "Fixing nt_create_process for MKS
13560 Toolkit shell" which breaks `kill-compilation' on Windows NT
13561 native, retaining STDERR handling improvements.
13563 2000-06-01 Andreas Jaeger <aj@suse.de>
13565 * s/s390.h: Support for S390, based on a patch by Martin
13566 Schwidefsky <schwidefsky@de.ibm.com>.
13568 2000-05-30 Andy Piper <andy@xemacs.org>
13570 * window.c (allocate_window):
13571 (make_dummy_parent):
13572 (Fset_window_configuration): use new hashtable type.
13574 * glyphs.h (IMAGE_UNSPECIFIED_GEOMETRY):
13575 (struct image_instantiator_methods):
13576 (struct Lisp_Image_Instance): make instance geometry signed.
13578 * glyphs.c (instantiate_image_instantiator):
13579 (image_instance_query_geometry):
13580 (image_instance_layout):
13581 (image_instance_layout):
13582 (query_string_geometry):
13583 (text_query_geometry):
13584 (image_instantiate):
13585 (image_instantiate):
13586 (cache_subwindow_instance_in_frame_maybe):
13587 (subwindow_query_geometry): make instance geometry signed.
13589 * glyphs-widget.c (widget_query_geometry):
13591 (button_query_geometry):
13592 (tree_view_query_geometry):
13593 (tab_control_query_geometry):
13594 (layout_query_geometry):
13596 (native_layout_layout): make instance geometry signed.
13598 2000-05-29 Olivier Galibert <galibert@pobox.com>
13600 * lisp.h: Add Qfull_assoc symbol and WEAK_LIST_FULL_ASSOC
13603 * general.c (syms_of_general): Add Qfull_assoc symbol.
13605 * data.c (finish_marking_weak_lists): Mark full-assoc lists
13607 (decode_weak_list_type): Decode full-assoc type.
13608 (encode_weak_list_type): Encode full-assoc type.
13609 (Fmake_weak_list): Update doc string.
13611 2000-05-30 Andy Piper <andy@xemacs.org>
13613 * elhash.h (hash_table_weakness): new KEY_VALUE weak hashtable.
13615 * elhash.c (print_hash_table): new KEY_VALUE weak hashtable.
13616 (decode_hash_table_weakness): ditto.
13617 (Fhash_table_weakness): ditto.
13618 (Fhash_table_type): ditto.
13619 (finish_marking_weak_hash_tables): ditto.
13620 (hash_table_weakness_validate): ditto.
13621 (syms_of_elhash): ditto.
13623 2000-05-28 Martin Buchholz <martin@xemacs.org>
13625 * XEmacs 21.2.34 is released.
13627 2000-05-22 Jan Vroonhof <vroonhof@math.ethz.ch>
13629 * redisplay.c (VERTICAL_CLIP): No longer reset when updating line
13631 (updating_line_start_cache): Gone.
13632 (regenerate_window): Replace resetting of VERTICAL_CLIP by
13633 generic code to force a minimum of 1 line laid out in the
13636 2000-05-22 Jan Vroonhof <vroonhof@math.ethz.ch>
13638 * glyphs.c (instantiate_image_instantiator): Check for initialized
13639 height & width no longer special cases IMAGE_NOTHING.
13640 (nothing_instantiate): Set height and width of instance.
13642 2000-05-24 Yoshiki Hayashi <yoshiki@xemacs.org>
13644 * unexelf.c (unexec): Search for ".data" section.
13645 Initialize new_data2_offset from old_data_index.
13646 Remove redundant check for ElfW.
13648 2000-05-23 Andy Piper <andy@xemacs.org>
13650 * glyphs.c (get_image_instantiator_governing_domain): allow more
13651 specific domains as the governing domain rather than expecting an
13652 exact match. This fixes problems with layouts.
13654 2000-05-22 Andy Piper <andy@xemacs.org>
13656 * redisplay-output.c (compare_runes): check for non-images
13658 * glyphs.c (set_glyph_dirty_p): ditto.
13659 (update_glyph_cachel_data): ditto.
13661 * glyphs-widget.c (layout_post_instantiate): ditto.
13662 (layout_post_instantiate): ditto.
13664 * event-msw.c (mswindows_wnd_proc): warning removal.
13666 2000-05-12 Craig Lanning <CraigL@DyCon.com>
13668 * s\mingw32.h: Added #undef for CLASH_DETECTION.
13670 * syswindows.h: Moved PBS_SMOOTH definition to syscommctrl.h.
13672 * syscommctrl.h (PBS_SMOOTH): Moved from syswindows.h.
13674 * nt.c (rva_to_section): mingw32 needs rva_to_section.
13675 (mswindows_executable_type): mingw32 now has enough headers for
13678 2000-05-20 Andy Piper <andy@xemacs.org>
13680 * console-msw.c (mswindows_output_last_error): ; -> ,
13682 2000-05-12 Andy Piper <andy@xemacs.org>
13684 * console-msw.c (FROB): compare ints with ints.
13686 2000-05-11 Andy Piper <andy@xemacs.org>
13688 * glyphs-x.c (x_finalize_image_instance): make minimal build
13691 2000-05-20 Ben Wing <ben@xemacs.org>
13694 * event-Xt.c (vars_of_event_Xt):
13695 move modifier-keys-are-sticky to event-stream.c.
13698 * event-msw.c (mswindows_enqueue_mouse_button_event):
13699 * event-msw.c (key_needs_default_processing_p):
13700 * event-msw.c (XEMSW_LCONTROL):
13701 * event-msw.c (mswindows_handle_sticky_modifiers):
13702 * event-msw.c (FROB):
13703 * event-msw.c (clear_sticky_modifiers):
13704 * event-msw.c (output_modifier_keyboard_state):
13705 * event-msw.c (output_alt_keyboard_state):
13706 * event-msw.c (mswindows_wnd_proc):
13707 * event-msw.c (mswindows_modifier_state):
13708 * event-msw.c (emacs_mswindows_handle_magic_event):
13709 implement sticky modifiers.
13712 * event-stream.c (vars_of_event_stream):
13713 move modifier-keys-are-sticky here.
13716 add CHECK_FUNCTION.
13719 implement map-range-table.
13722 2000-05-17 Yoshiki Hayashi <yoshiki@xemacs.org>
13724 * redisplay-tty.c (reset_tty_modes):
13725 (tty_redisplay_shutdown): Adjust argument type to
13726 tty_frame_output_end.
13728 2000-05-11 Yoshiki Hayashi <yoshiki@xemacs.org>
13730 * eval.c (Fbacktrace): Don't output a line with only right
13733 2000-05-17 Kenji Itoh <keit@tpj.co.jp>
13735 * postgresql.c (Fpq_connect_poll): Replace `PS' with `polling_status'.
13736 (Fpq_reset_poll): Ditto.
13738 2000-05-16 Katsumi Yamaoka <yamaoka@jpl.org>
13740 * redisplay-tty.c: Replace tty_output_end with tty_frame_output_end.
13742 2000-05-16 Ben Wing <ben@xemacs.org>
13745 * buffer.c (dfc_convert_to/from_internal_format):
13746 * buffer.c (reinit_vars_of_buffer):
13747 Fix conversion functions to allow reentrancy.
13750 * console-msw.c (mswindows_output_last_error):
13751 New fun, generally useful -- output a human-readable
13752 version of GetLastError() on the console.
13755 * console-msw.h (struct mswindows_frame):
13756 Changes for DeferWindowPos. Declare mswindows_output_last_error().
13758 * console-stream.c (stream_output_begin):
13759 * console-stream.c (stream_output_end):
13760 * console-stream.c (stream_output_vertical_divider):
13761 * console-stream.c (stream_clear_region):
13762 * console-stream.c (stream_flash):
13763 * console-stream.c (console_type_create_stream):
13764 Delete blank stream methods, not needed.
13766 * console.h (struct console_methods):
13767 Split begin/end methods into window and frame.
13770 * event-msw.c (mswindows_handle_paint):
13771 * event-msw.c (output_alt_keyboard_state):
13772 * event-msw.c (mswindows_wnd_proc):
13773 * event-msw.c (vars_of_event_mswindows):
13774 Comment about problems with ignored-expose.
13775 Define mswindows-debug-events; not really implemented.
13777 * frame-msw.c (mswindows_init_frame_1):
13781 * glyphs-msw.c (begin_defer_window_pos):
13782 * glyphs-msw.c (mswindows_unmap_subwindow):
13783 * glyphs-msw.c (mswindows_map_subwindow):
13784 * glyphs-msw.c (mswindows_resize_subwindow):
13785 Use DeferWindowPos to reduce flashing when mapping/unmapping.
13787 * glyphs.c (make_image_instance_1):
13790 * gutter.c (Fredisplay_gutter_area):
13791 Use new begin/end methods.
13793 * lisp.h (Dynarr_new2):
13797 * redisplay-msw.c (mswindows_frame_output_begin):
13798 * redisplay-msw.c (mswindows_frame_output_end):
13799 * redisplay-msw.c (console_type_create_redisplay_mswindows):
13800 New begin/end methods -- handle DeferWindowPos.
13802 * redisplay-output.c (redisplay_move_cursor):
13803 * redisplay-output.c (redraw_cursor_in_window):
13804 * redisplay-output.c (redisplay_update_line):
13805 * redisplay-output.c (redisplay_output_window):
13806 New begin/end methods.
13809 * redisplay-tty.c (tty_frame_output_begin):
13810 * redisplay-tty.c (tty_frame_output_end):
13811 * redisplay-tty.c (console_type_create_redisplay_tty):
13812 New begin/end methods.
13815 * redisplay-x.c (x_window_output_begin):
13816 * redisplay-x.c (x_window_output_end):
13817 * redisplay-x.c (console_type_create_redisplay_x):
13818 New begin/end methods.
13820 * redisplay.c (redisplay_frame):
13821 * redisplay.c (Fredisplay_echo_area):
13822 New begin/end methods.
13823 use MAYBE_DEVMETH for clear_frame; it may not exist.
13825 * window.h (WINDOW_XFRAME):
13826 WINDOW_XFOO macros -- get locale and decode struct pointer.
13829 2000-05-12 Ben Wing <ben@xemacs.org>
13832 * emacs.c (ensure_no_quitting_from_now_on):
13833 * emacs.c (fatal_error_signal):
13834 * emacs.c (mswindows_handle_hardware_exceptions):
13836 * emacs.c (Fkill_emacs):
13837 * emacs.c (shut_down_emacs):
13838 * emacs.c (assert_failed):
13839 various improvements in fatal error handling.
13842 move preparing_for_armageddon to emacs.c.
13845 declare fatal_error_in_progress.
13848 * print.c (std_handle_out_external):
13849 * print.c (std_handle_out_va):
13850 * print.c (stderr_out):
13851 * print.c (stdout_out):
13852 use console under mswin when no standard output.
13853 don't do code conversion during fatal error.
13855 * scrollbar.c (Fscrollbar_page_up):
13856 * scrollbar.c (Fscrollbar_page_down):
13857 fix missing else. reindent.
13859 2000-05-11 Jan Vroonhof <vroonhof@math.ethz.ch>
13863 * glyphs.h (GLYPH_CACHEL_DESCENT):
13864 (GLYPH_CACHEL_DESCENT):
13865 (GLYPH_CACHEL_DESCENT):
13866 * glyphs.h (GLYPH_CACHEL_ASCENT): Match parameters to variables
13867 used in case these are inline functions.
13868 Use more absurd values to error check.
13870 include window.h for error check functions.
13872 2000-05-11 Ben Wing <ben@xemacs.org>
13874 * cmdloop.c (Freally_early_error_handler):
13875 Display message box under windows; otherwise, message will disappear
13876 before it can be viewed.
13879 * console-msw.c (Fmswindows_message_box):
13880 * console-msw.c (FROB):
13881 * console-msw.c (syms_of_console_mswindows):
13882 Define new fun `mswindows-message-box'.
13883 #### I will merge this into `popup-dialog-box'; just give me
13887 * general.c (syms_of_general):
13888 Some new symbols used in `mswindows-message-box'.
13891 * glyphs.c (Fset_image_instance_property):
13892 put warning in this fun.
13895 * glyphs.h (GLYPH_CACHEL_WIDTH):
13896 * glyphs.h (GLYPH_CACHEL_ASCENT):
13897 * glyphs.h (GLYPH_CACHEL):
13898 * glyphs.h (GLYPH_CACHEL_GLYPH):
13899 define error-checking versions to try to catch a bug i've seen --
13900 redisplay gets in an infinite loop because the glyph width of the
13901 continuation glyph is 65535.
13904 Extern message-box stuff.
13906 * window.c (allocate_window):
13907 * window.c (make_dummy_parent):
13908 * window.c (Fset_window_configuration):
13909 Use EQUAL not EQ for subwindow caches to make them work a bit
13910 better. (Something is still very broken.)
13913 2000-05-11 Yoshiki Hayashi <yoshiki@xemacs.org>
13915 * glyphs.c (image_instantiate): Suppress gcc warnings.
13916 (Fmake_image_instance): Fix doc string.
13917 * specifier.c (Fmake_specifier): Ditto.
13919 2000-05-02 Yoshiki Hayashi <yoshiki@xemacs.org>
13921 * paths.h.in (PATH_LOCK): Removed.
13922 * config.h.in (LOCKDIR_USER_DEFINED): Removed.
13923 * emacs.c (complex_vars_of_emacs): Remove configure-lock-directory.
13925 2000-05-08 Yoshiki Hayashi <yoshiki@xemacs.org>
13927 * fns.c (Ffeaturep): Update e-mail address in doc-string.
13928 Document (featurep '(and xemacs 21.02)).
13930 2000-05-09 Ben Wing <ben@xemacs.org>
13932 * buffer.c (complex_vars_of_buffer):
13933 update modeline-format doc.
13936 comment about how DFW_DEVICE should be merged with DOMAIN_DEVICE.
13939 timeline of all released versions of Emacs, for use in creating
13940 authorship comments and in synching up.
13942 * glyphs-widget.c (image_instantiator_buttons):
13943 * glyphs-widget.c (image_instantiator_edit_fields):
13944 * glyphs-widget.c (image_instantiator_combo_box):
13945 * glyphs-widget.c (image_instantiator_scrollbar):
13946 * glyphs-widget.c (image_instantiator_progress_guage):
13947 * glyphs-widget.c (image_instantiator_tree_view):
13948 * glyphs-widget.c (image_instantiator_tab_control):
13949 * glyphs-widget.c (image_instantiator_labels):
13950 * glyphs-widget.c (image_instantiator_layout):
13951 * glyphs-widget.c (image_instantiator_native_layout):
13952 rename decode_domain method to governing_domain.
13955 * glyphs.c (Fvalid_image_instantiator_format_p): doc update.
13956 * glyphs.c (add_entry_to_device_ii_format_list):
13957 make sure we don't put an entry more than once into the list.
13958 * glyphs.c (check_instance_cache_mapper):
13959 *************************************************************
13960 allow for nil. THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
13962 *************************************************************
13963 * glyphs.c (get_image_instantiator_governing_domain):
13964 clean up, expand on new concept of governing domain.
13965 * glyphs.c (instantiate_image_instantiator):
13966 * glyphs.c (allocate_image_instance):
13967 use governing_domain instead of cache_domain in naming.
13968 * glyphs.c (Fvalid_image_instance_type_p): fix docs.
13969 * glyphs.c (make_image_instance_1):
13970 * glyphs.c (Fmake_image_instance):
13971 allow for any domain (not just device), and process the
13972 governing domain correctly. very big doc fix.
13973 * glyphs.c (Fimage_instance_domain):
13974 new primitive, to retrieve the governing domain of an image instance.
13975 * glyphs.c (image_instantiate):
13976 use new governing_domain stuff. this fixes a crash you could get
13977 by instantiating certain widget glyphs in frame locales. (should
13978 signal an error instead of crashing.)
13979 * glyphs.c (Fimage_specifier_p): move doc to make-image-specifier.
13980 * glyphs.c (Fglyphp): clean up doc.
13981 * glyphs.c (subwindow_governing_domain): renamed from *_decode_domain.
13982 * glyphs.c (syms_of_glyphs):
13983 declare Fimage_instance_domain, remove unused Qlayout_image_instance_p.
13984 * glyphs.c (image_instantiator_format_create): add some comments about
13986 * glyphs.c (specifier_vars_of_glyphs): totally rewrite the doc string
13987 for current-display-table. (Apparently Hrjove implemented in 1998 a
13988 design I wrote up in 1996, but didn't update the doc string.)
13990 * glyphs.h: clean up a doc string.
13991 * glyphs.h (governing_domain):
13992 * glyphs.h (struct image_instantiator_methods):
13993 changes for governing_domain stuff.
13996 * gutter.c (Fgutter_specifier_p):
13997 * gutter.c (Fgutter_size_specifier_p):
13998 * gutter.c (Fgutter_visible_specifier_p):
14000 * objects.c (Fcolor_specifier_p):
14001 * objects.c (Ffont_specifier_p):
14002 * objects.c (Fface_boolean_specifier_p):
14003 doc strings moved to make-*-specifier.
14005 * redisplay.c (add_disp_table_entry_runes_1):
14006 * redisplay.c (generate_fstring_runes):
14007 * redisplay.c (screen):
14008 add random comments and doc strings.
14011 * specifier.c (Fmake_specifier):
14012 major overhaul of this doc string.
14014 * specifier.c (Fvalid_specifier_domain_p):
14015 comment about the bogosity of image instances being domains.
14016 * specifier.c (decode_domain):
14017 now non-static, used in glyphs.c.
14018 * specifier.c (specifier_instance):
14019 comment about the bogosity of image instances being domains.
14020 * specifier.c (Fgeneric_specifier_p):
14021 move doc string to make-generic-specifier.
14022 * specifier.c (VALID_SINGLE_DISPTABLE_INSTANTIATOR_P):
14026 * specifier.h (DOMAIN_FRAME):
14027 * specifier.h (DOMAIN_LIVE_P):
14028 * specifier.h (DOMAIN_XDEVICE):
14030 add comments about problems with these macros.
14031 prototype for decode_domain.
14034 * toolbar.c (Ftoolbar_specifier_p):
14035 move doc string to `make-toolbar-specifier'.
14037 * window.c (window_unmap_subwindows_cache_mapper):
14038 *************************************************************
14039 allow for nil. THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
14041 *************************************************************
14043 2000-05-09 Andy Piper <andy@xemacs.org>
14045 * glyphs.h: declare reset_frame_subwindow_instance_cache.
14047 * window.c (Fset_window_configuration): reset the frame subwindow
14048 cache and re-initialize the window subwindow caches.
14050 * glyphs.c (reset_frame_subwindow_instance_cache): new function.
14052 2000-05-09 Ben Wing <ben@xemacs.org>
14054 * ntheap.c (recreate_heap): Changed unknown (VC6 only?) SIZE_T to
14057 2000-04-26 Mike Woolley <mike@bulsara.com>
14059 * ntheap.c: Changed recreate_heap to limit the amount reserved
14060 for the heap to that which is actually available. Also now
14061 displays a message box (with some dignostics) in the event that
14062 it still can't start.
14064 2000-05-07 Jan Vroonhof <vroonhof@math.ethz.ch>
14066 * callproc.c (Fold_call_process_internal): GCPRO path
14068 2000-05-08 Jan Vroonhof <jan@xemacs.org>
14070 Patch by Bill Perry.
14072 * scrollbar.c (Fscrollbar_page_up): Conditionalize on type of call
14073 back data instead of #ifdef.
14074 (Fscrollbar_page_down): ditto.
14076 2000-05-07 Ben Wing <ben@xemacs.org>
14079 Kludge for defining Qmswindows_tstr.
14082 * nt.c (open_input_file):
14083 * nt.c (open_output_file):
14084 * nt.c (rva_to_section):
14085 * nt.c (mswindows_executable_type):
14086 Move all memory-mapped-file routines here (some were in unexnt.c,
14087 which is bad because they are used by process-nt.c, and unexnt
14088 won't be around when portable dumping). Synched the above routines
14092 Removed ifdef'd out bogus code.
14093 Fixed some prototypes.
14095 * nt.h (file_data):
14096 * nt.h (OFFSET_TO_RVA):
14097 * nt.h (RVA_TO_OFFSET):
14098 * nt.h (RVA_TO_PTR):
14099 Moved the memory-mapped-file structures, macros and prototypes
14100 here, to parallel nt.c. ntheap.h should really be removed
14101 entirely, and it's a non-portable-dumper specific file.
14103 * ntheap.h (round_to_next):
14104 Moved the memory-mapped-file structures, macros and prototypes
14107 * ntproc.c (compare_env):
14108 Moved rva_to_section and mswindows_executable_type to nt.c.
14109 Moved compare_env to process-nt.c.
14110 ntproc.c will die, one day.
14112 * ntproc.c (sys_spawnve):
14113 Account for win32_ -> mswindows_.
14116 * process-nt.c (struct nt_process_data):
14117 * process-nt.c (ensure_console_window_exists):
14118 * process-nt.c (compare_env):
14119 * process-nt.c (nt_create_process):
14120 * process-nt.c (nt_kill_process_by_pid):
14121 * process-nt.c (syms_of_process_nt):
14122 * process-nt.c (vars_of_process_nt):
14123 Introduce variable `mswindows-quote-process-args', from FSF 20.6.
14124 Copy argument quoting code from FSF 20.6 (with appropriate Mule-ization
14125 changes). Eliminate our old `nt-quote-process-args' mechanism.
14126 Synch up nt_create_process with FSF 20.6 sys_spawnve.
14127 Move compare_env here from ntproc.c.
14129 * process.c (Fprocess_send_region):
14130 Takes an optional fourth argument, BUFFER, which should fix some
14131 problems with call-process.
14134 Move ICC_BAR_CLASSES here from syswindows.h, to avoid a warning.
14137 Move ICC_BAR_CLASSES to syscommctrl.h.
14138 Add preliminary macros for MSWindows/Mule. More to come.
14141 * unexnt.c (unexec):
14142 open_output_file moved to nt.c.
14145 2000-05-05 Andy Piper <andy@xemacs.org>
14147 * window.c (window_unmap_subwindows_cache_mapper): remove the dead
14148 instance from the frame cache also since GC may catch up too late
14149 to make frame deletion sane.
14151 2000-05-04 Andy Piper <andy@xemacs.org>
14153 * glyphs-x.c (x_widget_instantiate): gcpro widget callbacks.
14154 (x_finalize_image_instance): ungcpro on deletion.
14156 * glyphs.c (image_instantiator_format_create): give pointers a
14157 query geometry method so that the geometry is at least set.
14159 * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
14160 initialize layouts if using widgets.
14162 2000-05-03 Andy Piper <andy@xemacs.org>
14164 * nt.c: remove bogus reference to sysmmsystem.h
14166 * gui-x.c (popup_selection_callback): fix no selection abort.
14168 2000-05-02 Andy Piper <andy@xemacs.org>
14170 * glyphs-msw.c (mswindows_update_widget): cope with nil text.
14171 (mswindows_widget_instantiate): ditto.
14173 * glyphs-widget.c (initialize_widget_image_instance): initialize
14174 children correctly.
14175 (widget_instantiate): cope with children and items in the same
14178 * glyphs.c (mark_image_instance): cope with children as a first
14180 (image_instance_equal): ditto.
14181 (image_instance_hash): ditto.
14182 (image_instance_changed): ditto.
14184 2000-04-30 Andy Piper <andy@xemacs.org>
14186 * glyphs.c (subwindow_query_geometry): new function. Return some
14188 (subwindow_instantiate): don't assign dimensions if none have been
14190 (image_instantiator_format_create): add subwindow_query_geometry.
14191 (print_image_instance): cope with layouts as widgets.
14193 2000-04-29 Andy Piper <andy@xemacs.org>
14195 * frame.c (delete_frame_internal): call
14196 free_frame_subwindow_instance_cache so that all subwindows are
14197 finalized before their parent.
14198 (mark_frame): remove subwindow_cachels.
14199 (Fmake_frame): remove subwindow_cachel manipulation.
14200 (allocate_frame_core): subwindow_instance_cache is a weak list.
14201 (delete_frame_internal): set subwindow_instance_cache to nil.
14203 * glyphs-msw.c (mswindows_finalize_image_instance): make double
14205 (mswindows_finalize_image_instance): use the device
14206 not the domain as the domain may have died already.
14208 * glyphs-x.c (x_finalize_image_instance): ditto.
14209 (x_subwindow_instantiate): remove SUBWINDOW_WIDTH &
14212 * redisplay-output.c (redisplay_unmap_subwindows): update for
14213 subwindow instance cache as a weak list.
14214 (redisplay_unmap_subwindows_maybe): ditto.
14215 (redisplay_unmap_subwindows_except_us): ditto.
14217 * glyphs.c (unmap_subwindow): error checking will check the domain
14218 so don't deal with it here. Don't use cachels anymore.
14219 (map_subwindow): ditto.
14220 (update_subwindow_cachel_data): remove old accessor names.
14221 (subwindow_instantiate): remove SUBWINDOW_WIDTH & HEIGHT.
14222 (Fresize_subwindow): don't update cachel.
14223 (mark_subwindow_cachels):
14224 (update_subwindow_cachel_data):
14225 (add_subwindow_cachel):
14226 (get_subwindow_cachel_index):
14227 (update_subwindow_cachel):
14228 (reset_subwindow_cachels):
14229 (mark_subwindow_cachels_as_not_updated): deleted.
14230 (cache_subwindow_instance_in_frame_maybe): new function. Add a
14231 subwindow instance to the frame cache.
14232 (find_matching_subwindow): update for subwindow instance cache as
14234 (update_widget_instances): ditto.
14235 (image_instance_type_to_mask):inlined.
14236 (free_frame_subwindow_instance_cache): new function. finalize all
14237 subwindows that are instantiated.
14239 * glyphs.h (struct Lisp_Image_Instance): add display_data instead
14240 of cachel information.
14241 (IMAGE_INSTANCE_DISPLAY_X):
14242 (IMAGE_INSTANCE_DISPLAY_Y):
14243 (IMAGE_INSTANCE_DISPLAY_WIDTH):
14244 (IMAGE_INSTANCE_DISPLAY_HEIGHT):
14245 (XIMAGE_INSTANCE_DISPLAY_X):
14246 (XIMAGE_INSTANCE_DISPLAY_Y):
14247 (XIMAGE_INSTANCE_DISPLAY_WIDTH):
14248 (XIMAGE_INSTANCE_DISPLAY_HEIGHT): new accessors.
14249 remove subwindow_cachel structure and function references.
14250 (image_instance_type_to_mask): inline from glyphs.c
14252 * redisplay.c (redisplay_frame): remove subwindow_cachel
14255 * frame.h (struct frame): remove subwindow_cachels.
14256 (FRAME_SUBWINDOW_CACHE): access subwindow_instance_cache.
14258 * frameslots.h: add subwindow_instance_cache.
14260 * window.c (replace_window): check subwindow cache of replacement.
14261 (window_unmap_subwindows_cache_mapper):
14262 (window_unmap_subwindows): new functions. Unmap all subwindows
14263 cached on this window.
14264 (mark_window_as_deleted): unmap all subwindows.
14266 2000-04-27 Andy Piper <andy@xemacs.org>
14268 * glyphs.h (IIFORMAT_METH_OR_GIVEN): cope with null meths.
14270 * glyphs-widget.c (widget_layout): return something.
14271 (layout_layout): return something. Fail if not initialized.
14272 (layout_query_geometry): ditto.
14273 (image_instantiator_native_layout): new function. Initialized the
14274 native layout type.
14275 (widget_instantiate): don't do layout stuff here.
14277 * glyphs.c (instantiate_image_instantiator): reorded calling or
14278 instantiate and post_instantiate with layout in between.
14279 (image_instance_layout): be more selective about deciding whether
14280 the layout has been done or not.
14282 * glyphs.h (struct image_instantiator_methods): return a value
14283 from layout_method.
14285 2000-04-26 Andy Piper <andy@xemacs.org>
14287 * glyphs.c (allocate_image_instance): make initial width and
14288 height unspecified. Set initialized to 0.
14290 * syscommctrl.h new file. Encapsulates commctrl.h.
14292 * syswindows.h new file. Encapsulates windows.h.
14294 * ntplay.c: use new syswindows.h and syscommctrl.h header.
14296 * console-msw.h: ditto.
14298 * redisplay-tty.c (tty_output_display_block): remove layout references.
14300 * glyphs-msw.c (mswindows_widget_instantiate): use the domain
14301 window handle rather than just the frame.
14303 * glyphs.c (mark_image_instance): remove layout references.
14304 (print_image_instance): ditto.
14305 (image_instance_equal): ditto.
14306 (image_instance_hash): ditto.
14307 (decode_image_instance_type): ditto.
14308 (encode_image_instance_type): ditto.
14309 (image_instantiate): ditto.
14310 (allocate_glyph): ditto.
14311 (Fimage_instance_height): ditto.
14312 (Fimage_instance_width): ditto.
14313 (update_subwindow): ditto.
14315 * redisplay-x.c (x_output_display_block): recode for layouts as
14318 * redisplay-output.c (redisplay_output_layout): recode for layouts
14320 (compare_runes): remove layout references.
14322 * redisplay-msw.c (mswindows_output_display_block): recode for
14323 layouts as widgets.
14325 * glyphs-widget.c (image_instantiator_layout): remove
14326 layout_possible_dest_types.
14327 (layout_possible_dest_types): deleted.
14329 * glyphs.h (image_instance_type): remove layout references.
14330 (struct Lisp_Image_Instance): ditto. Add initialized flag.
14331 (IMAGE_INSTANCE_INITIALIZED): new accessor.
14332 (XIMAGE_INSTANCE_INITIALIZED): ditto.
14334 2000-04-25 Andy Piper <andy@xemacs.org>
14336 * glyphs-widget.c (image_instantiator_buttons):
14337 (image_instantiator_edit_fields):
14338 (image_instantiator_combo_box):
14339 (image_instantiator_scrollbar):
14340 (image_instantiator_progress_guage):
14341 (image_instantiator_tree_view):
14342 (image_instantiator_tab_control):
14343 (image_instantiator_labels):
14344 (image_instantiator_layout): call default post_instantiate method.
14345 (widget_post_instantiate): new function. Simply lays out the
14348 * glyphs.h (struct image_instantiator_methods): add
14349 post_instantiate method.
14351 * glyphs.c (instantiate_image_instantiator): add post_instantiate
14354 2000-04-23 Andy Piper <andy@xemacs.org>
14356 * glyphs.h (struct image_instantiator_methods): add
14357 decode_domain_method.
14358 (struct Lisp_Image_Instance): remove subwindow frame - it can be
14359 derived from the domain.
14360 (IMAGE_INSTANCE_FRAME): new accessor.
14361 (XIMAGE_INSTANCE_FRAME): ditto.
14363 * glyphs.c (print_image_instance): use IMAGE_INSTANCE_FRAME
14364 instead of _SUBWINDOW_FRAME.
14365 (finalize_image_instance): ditto.
14366 (Fimage_instance_foreground): ditto.
14367 (Fimage_instance_background): ditto.
14368 (image_instantiate): ditto.
14369 (update_subwindow_cachel): ditto.
14370 (update_subwindow): ditto.
14371 (unmap_subwindow): ditto.
14372 (map_subwindow): ditto
14373 (subwindow_instantiate): ditto.
14374 * glyphs-msw.c (mswindows_update_widget): ditto.
14375 (mswindows_progress_gauge_instantiate): ditto.
14376 (mswindows_tab_control_update): ditto.
14377 * glyphs-x.c (x_update_widget): ditto.
14378 (x_widget_instantiate): ditto.
14379 (x_tab_control_instantiate): ditto.
14380 (x_tab_control_update): ditto.
14381 * event-msw.c (mswindows_wnd_proc): ditto
14383 * glyphs-widget.c (image_instantiator_layout): use
14384 subwindow_decode_domain.
14385 (image_instantiator_buttons): ditto.
14386 (image_instantiator_edit_fields): ditto.
14387 (image_instantiator_combo_box): ditto.
14388 (image_instantiator_scrollbar): ditto.
14389 (image_instantiator_progress_guage): ditto.
14390 (image_instantiator_tree_view): ditto.
14391 (image_instantiator_tab_control): ditto.
14392 (image_instantiator_labels): ditto.
14393 (image_instantiator_layout): ditto.
14395 * glyphs.c: add instance error checking to many functions.
14396 (instantiate_image_instantiator): decode device from cache_domain.
14397 (image_instantiate): partially rewrite by using
14398 decode_image_instantiator_domain to determine what domain the
14399 instance needs to be cached in.
14400 (decode_image_instantiator_domain): new function. Determine what
14401 domain the image needs to be cached in.
14402 (check_window_subwindow_cache): new error checking function.
14403 (check_instance_cache_mapper): ditto.
14404 (check_image_instance_structure): ditto.
14405 (subwindow_decode_domain): new function. Encodes a window as a
14406 subwindow's cache domain.
14407 (image_instantiator_format_create): use it for text and
14410 2000-04-21 Andy Piper <andy@xemacs.org>
14412 * glyphs.c (image_instance_device): new function.
14413 (image_instance_frame): new function.
14414 (image_instance_window): new function.
14415 (image_instance_live_p): new function.
14417 * window.c (mark_window_as_deleted): reset the subwindow_instance_
14420 * glyphs.h (struct Lisp_Image_Instance): device->domain.
14421 (IMAGE_INSTANCE_DOMAIN): new accessor.
14422 (XIMAGE_INSTANCE_DOMAIN): ditto.
14424 * glyphs-x.c (x_finalize_image_instance): device->domain.
14426 * glyphs-msw.c (init_image_instance_geometry): device->domain.
14427 (mswindows_finalize_image_instance): ditto.
14429 * glyphs-eimage.c (jpeg_instantiate): device->domain.
14430 (gif_instantiate): ditto.
14431 (png_instantiate): ditto.
14432 (tiff_instantiate): ditto.
14434 * glyphs.c (instantiate_image_instantiator): use domain rather
14436 (mark_image_instance): device -> domain.
14437 (print_image_instance): ditto.
14438 (finalize_image_instance): ditto.
14439 (image_instance_equal): ditto.
14440 (allocate_image_instance): ditto.
14441 (Fcolorize_image_instance): ditto.
14442 (query_string_geometry): ditto.
14443 (image_instantiate): ditto
14444 (query_string_font): ditto.
14445 (image_instantiate): ditto.
14446 (update_subwindow): ditto.
14447 (unmap_subwindow): ditto.
14448 (map_subwindow): ditto.
14449 (subwindow_instantiate): ditto.
14451 * specifier.h (DOMAIN_DEVICE): new, semantically correct, decoder.
14452 (DOMAIN_FRAME): ditto.
14453 (DOMAIN_WINDOW): ditto.
14454 (DOMAIN_LIVE_P): ditto.
14455 (XDOMAIN_DEVICE): ditto.
14456 (XDOMAIN_FRAME): ditto.
14457 (XDOMAIN_WINDOW): ditto.
14459 * specifier.c (Fvalid_specifier_domain_p): add image instances as
14460 a valid specifier domain.
14462 2000-04-19 Andy Piper <andy@xemacs.org>
14464 * glyphs-widget.c (syms_of_glyphs_widget): remove
14465 widget-callback-current-channel.
14466 (vars_of_glyphs_widget): ditto.
14469 * gui.c (get_gui_callback): revert to previous behaviour.
14471 2000-04-18 Andy Piper <andy@xemacs.org>
14473 * glyphs.h (struct Lisp_Image_Instance): add margin_width.
14474 (IMAGE_INSTANCE_MARGIN_WIDTH): new.
14475 (XIMAGE_INSTANCE_MARGIN_WIDTH): new.
14477 * glyphs.c (image_instance_equal): add margin_width.
14478 (image_instance_hash): ditto.
14480 * glyphs-widget.c (widget_instantiate): deal with margin-width.
14481 (layout_query_geometry): ditto.
14482 (layout_layout): ditto.
14483 (syms_of_glyphs_widget): add margin-width.
14484 (image_instantiator_layout): allow margin-width.
14486 * glyphs.c (update_widget_instances): make a normal function.
14487 (syms_of_glyphs): remove Qupdate_widget_instances.
14490 * gui-x.c (popup_selection_callback): use enqueue_magic_eval_event
14491 so that we don't corrupt ideas about the last event or
14492 command. Remove widget-callback-current-channel fiddling.
14493 * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
14495 2000-05-01 Martin Buchholz <martin@xemacs.org>
14497 * XEmacs 21.2.33 is released.
14499 2000-05-01 Yoshiki Hayashi <yoshiki@xemacs.org>
14501 * make-src-depend: Allow dots in header file name.
14503 2000-05-01 Yoshiki Hayashi <yoshiki@xmacs.org>
14505 * mule-charset.h (struct charset_lookup): Add
14506 next_allocated_1_byte_leading_byte and
14507 next_allocated_2_byte_leading_byte.
14508 * mule-charset.c: Move above two variables so that those values
14511 2000-04-26 Yoshiki Hayashi <yoshiki@xemacs.org>
14513 * insdel.c (find_charsets_in_bufbyte_string): Add Vcharset_ascii
14514 when string length is zero.
14515 (find_charsets_in_emchar_string): Ditto.
14517 2000-04-29 Bjrn Torkelsson <torkel@hpc2n.umu.se>
14519 * lisp.h: extern Qdialog and Qmenubar.
14521 * gui-x.c: added events.h.
14522 also fixed typo which made the file uncompilable.
14524 * general.c: Added Qmenubar and Qdialog
14526 2000-04-28 Ben Wing <ben@xemacs.org>
14528 * frame-msw.c (mswindows_init_frame_1):
14529 * frame-msw.c (mswindows_mark_frame):
14530 * event-msw.c (mswindows_enqueue_dispatch_event):
14532 * console-msw.h (struct mswindows_frame):
14533 * console-msw.h (FRAME_MSWINDOWS_WIDGET_HASH_TABLE1):
14534 there are now three hash tables for callbacks.
14535 mswindows_enqueue_dispatch_event is no longer static.
14537 * dialog-x.c (maybe_run_dbox_text_callback):
14538 * dialog-x.c (dbox_descriptor_to_widget_value):
14539 switch to new cons3 form for callbacks.
14541 * glyphs-msw.c (mswindows_register_gui_item):
14542 * glyphs-msw.c (mswindows_widget_instantiate):
14543 * glyphs-msw.c (add_tree_item):
14544 * glyphs-msw.c (add_tab_item):
14545 new image instance parameter, so it can be passed to callback-ex.
14546 respect :callback-ex as well as :callback.
14548 * glyphs-widget.c (VALID_GUI_KEYWORDS):
14551 * glyphs.c (print_image_instance):
14552 prettify, e.g. now prints widget type.
14555 certain funs have new image instance parameter.
14558 * gui.c (get_gui_callback):
14559 * gui.c (gui_item_add_keyval_pair):
14560 * gui.c (gui_item_init):
14561 * gui.c (gui_add_item_keywords_to_plist):
14562 * gui.c (mark_gui_item):
14563 * gui.c (gui_item_hash):
14564 * gui.c (gui_item_equal):
14565 * gui.c (copy_gui_item):
14566 * gui.c (syms_of_gui):
14567 recognize callback-ex in a number of places.
14568 also, fix the annoying "can't get out of yes-no dialog" bug.
14571 * gui.h (struct Lisp_Gui_Item):
14572 recognize callback-ex in a number of places.
14574 * menubar-x.c (menu_item_descriptor_to_widget_value_1):
14575 new parameter in button_item_to_widget_value.
14577 * glyphs-x.c (x_update_widget):
14578 * glyphs-x.c (x_button_instantiate):
14579 * glyphs-x.c (x_button_update):
14580 * glyphs-x.c (x_progress_gauge_instantiate):
14581 * glyphs-x.c (x_edit_field_instantiate):
14582 * glyphs-x.c (x_combo_box_instantiate):
14583 * glyphs-x.c (x_tab_control_instantiate):
14584 * glyphs-x.c (x_label_instantiate):
14585 new image instance parameter in various places.
14588 * event-Xt.c (enqueue_Xt_dispatch_event):
14589 this fun gets exported.
14592 * gui-msw.c (mswindows_handle_gui_wm_command):
14593 handle both :callback and :callback-ex, and generate our own
14594 event because it's one of the callback-ex arguments.
14597 * gui-x.c (popup_selection_callback):
14598 handle both :callback and :callback-ex, and generate our own
14599 event because it's one of the callback-ex arguments.
14600 * gui-x.c (button_item_to_widget_value):
14601 * gui-x.c (gui_items_to_widget_values_1):
14602 * gui-x.c (gui_item_children_to_widget_values):
14603 * gui-x.c (gui_items_to_widget_values):
14604 new image instance parameter in various places.
14606 * fns.c (Freplace_list):
14607 fix small typo in doc string.
14610 declare enqueue_Xt_dispatch_event.
14612 2000-04-28 Ben Wing <ben@xemacs.org>
14615 * buffer.c (Frecord_buffer):
14616 * buffer.c (syms_of_buffer):
14617 delete record-buffer-hook.
14620 * fns.c (Freplace_list):
14621 * fns.c (syms_of_fns):
14622 new primitive replace-list.
14625 slot for old buffer-alist.
14628 exfun replace-list.
14631 * redisplay.c (redisplay_frame):
14632 * redisplay.c (syms_of_redisplay):
14633 * redisplay.c (vars_of_redisplay):
14634 new hook buffer-list-changed-hook.
14637 2000-04-27 Ben Wing <ben@xemacs.org>
14639 * extents.h: extern in_modeline_generation.
14641 * redisplay.c (generate_formatted_string_db): set
14642 in_modeline_generation.
14644 * extents.c (extent_changed_for_redisplay): don't mark redisplay
14645 flags if in modeline generation. otherwise frame-modified-tick
14646 is ticked far too often.
14647 Declare in_modeline_generation.
14649 2000-04-26 Ben Wing <ben@xemacs.org>
14651 * emacs.c (vars_of_emacs): document quick-build "error-checking"
14653 (vars_of_emacs): add quick-build as an error-checking option.
14654 A bit kludgy, but there doesn't seem much point in creating
14655 a real var for this.
14657 * config.h.in: put in an entry for QUICK_BUILD; remove NO_DOC_FILE.
14659 2000-04-14 IKEYAMA Tomonori <tomonori@suiyokai.org>
14661 * redisplay.h (struct display_line): Add a new variable,
14664 * redisplay.c (create_text_block): Set dl->line_continuation if
14665 the line continues.
14666 (create_string_text_block): Ditto.
14667 (regenerate_window_incrementally): Use line_continuation instead
14668 of searching continuation glyph.
14669 (add_margin_runes): Call add_glyph_rune.
14670 (add_glyph_rune): Handle margin glyph.
14672 2000-04-20 Martin Buchholz <martin@xemacs.org>
14674 * filelock.c (fill_in_lock_file_name):
14676 Check for IS_ANY_SEP instead of '/'.
14678 Avoid generating gratuitous garbage. Call user_login_name() directly.
14679 Never check errno without first seeing that system call failed.
14680 (unlock_file): Add GCPRO.
14681 (Flock_buffer): Fix docstring.
14682 (Ffile_locked_p): Fix docstring. Add GCPRO.
14684 2000-04-19 Martin Buchholz <martin@xemacs.org>
14686 * sysdep.c (get_pty_max_bytes):
14687 Fix hangs on DEC OSF 4.0 when (process-send-string) sends
14688 strings longer than 252 bytes.
14690 * md5.c: Unconditionally include ANSI header <limits.h>
14692 * glyphs-x.c (convert_EImage_to_XImage):
14693 * lisp-union.h (union Lisp_Object):
14694 Use consistently the syntax #ifdef FEATURE, not #if FEATURE.
14696 2000-04-13 Yoshiki Hayashi <yoshiki@xemacs.org>
14698 * filelock.c (current_lock_owner): Remove unused variable o, p.
14700 2000-04-17 Norbert Koch <n.koch@eai-delta.de>
14702 * callint.c: Remove multiply defined symbol Qlet
14703 (syms_of_callint): ditto.
14705 2000-04-14 Andy Piper <andy@xemacs.org>
14707 * general.c (syms_of_general): add last-command, this-command, let
14710 * lisp.h: declare various symbols.
14712 * glyphs.h: declare Qwidget_callback_current_channel;
14714 * glyphs-widget.c (syms_of_glyphs_widget): add
14715 Qgui_callback_current_channel.
14716 (vars_of_glyphs_widget): add Vgui_callback_current_channel.
14718 * gui-msw.c (mswindows_handle_gui_wm_command): bind
14719 widget-callback-current-channel when invoking the interactive
14720 arg. Also bind last-command and next-command when invoking the
14722 * gui-x.c (popup_selection_callback): ditto.
14724 * gui.c (get_gui_callback): massage args so that we are always
14725 calling eval. This allows us to add our own variable bindings
14728 * glyphs-x.c (x_button_instantiate): use
14729 gui_items_to_widget_values since this is GC safe.
14730 (x_progress_gauge_instantiate): ditto.
14731 (x_edit_field_instantiate): ditto.
14732 (x_label_instantiate): ditto.
14734 * event-Xt.c (emacs_Xt_handle_magic_event): remove old printfs.
14735 (emacs_Xt_event_widget_focus_out): new function
14736 (emacs_Xt_event_widget_focus_in): new function. Set the keyboard
14738 (emacs_Xt_event_add_widget_actions): new function. add focus
14739 functions as actions.
14740 (init_event_Xt_late): use it.
14742 2000-04-14 Hrvoje Niksic <hniksic@iskon.hr>
14744 * event-stream.c (Fdispatch_event): Doc fix.
14746 2000-03-29 SL Baur <steve@musashimaru.m17n.org>
14748 * postgresql.c: Remove all references to PQsetenv*.
14750 * postgresql.h: Remove references to PGsetenvHandler object.
14751 * lrecord.h (lrecord_type): Ditto.
14753 2000-04-11 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
14755 * glyphs-msw.h (struct mswindows_image_instance_data): Added
14756 real_heigh and real_width members, and accessor macros for these.
14758 * glyphs-msw.c (init_image_instance_geometry): New function.
14759 (init_image_instance_from_dibitmap): Use it.
14760 (mswindows_resource_instantiate): Use it.
14761 (init_image_instance_from_xbm_inline): Use it.
14762 (mswindows_initialize_image_instance_mask): Use real bitmap
14764 (mswindows_create_resized_bitmap): Ditto.
14765 (mswindows_create_resized_mask): Ditto.
14767 * redisplay-msw.c (mswindows_output_dibitmap): Stretch real mask
14768 and bitmap to their surface size.
14770 2000-04-11 Jan Vroonhof <jan@xemacs.org>
14772 * process-unix.c (unix_send_process): Guard against process MIA
14773 after Faccept_process_output.
14775 2000-04-11 Ben Wing <ben@xemacs.org>
14777 * eval.c (unbind_to_hairy): fix brokenness introduced by
14778 nanosecond speed improvements.
14780 2000-04-07 Raymond Toy <toy@rtp.ericsson.se>
14782 * sunplay.c (init_device): To play sounds correctly, the device
14783 apparently needs to be initialized at least once by XEmacs. Make
14786 2000-04-10 IKEYAMA Tomonori <tomonori@suiyokai.org>
14788 * redisplay.c (add_margin_runes): Add text image glyph
14791 2000-04-06 Yoshiki Hayashi <yoshiki@xemacs.org>
14793 * lisp.h (DOESNT_RETURN): Don't declare as volatile when
14794 gcc is newer than 2.5.
14796 2000-04-06 Colin Rafferty <colin@xemacs.org>
14798 * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF): Created.
14800 * fns.c (size_bit_vector):
14801 * alloc.c (size_vector):
14802 (make_vector_internal):
14803 (make_bit_vector_internal):
14804 (sweep_bit_vectors_1):
14805 Replace calls to offsetof with FLEXIBLE_ARRAY_STRUCT_SIZEOF macro.
14807 2000-04-06 Andy Piper <andy@xemacs.org>
14809 * gmalloc.c (malloc): undo previous change.
14814 2000-04-06 IKEYAMA Tomonori <tomonori@suiyokai.org>
14816 * line-number.c (buffer_line_number): Revert to former version.
14818 2000-04-06 Andy Piper <andy@xemacs.org>
14820 * gmalloc.c (malloc): add error checking.
14825 * dialog-x.c (dbox_descriptor_to_widget_value): add extra
14826 button_item_to_widget_value arg.
14828 * glyphs-x.c (x_button_instantiate): add extra
14829 button_item_to_widget_value arg.
14830 (x_progress_gauge_instantiate): ditto.
14831 (x_edit_field_instantiate): ditto.
14832 (x_label_instantiate): ditto.
14834 * gui-x.c (gui_items_to_widget_values_1): add extra
14835 button_item_to_widget_value arg.
14836 (button_item_to_widget_value): add extra menu_item_p arg.
14838 * gui-x.h: change signature of button_item_to_widget_value.
14840 * menubar-x.c (menu_item_descriptor_to_widget_value_1): add extra
14841 button_item_to_widget_value arg.
14843 2000-04-03 Yoshiki Hayashi <yoshiki@xemacs.org>
14845 * buffer.h (struct buffer): auto_save_modified should be long.
14847 2000-04-05 Andy Piper <andy@xemacs.org>
14849 * glyphs-widget.c (widget_instantiate): pixwidth != pixheight
14851 (button_query_geometry): give a little more room so that athena
14854 2000-04-05 Andy Piper <andy@xemacs.org>
14856 * faces.c (complex_vars_of_faces): The widget face should inherit
14857 the font of the gui-element face.
14859 2000-04-04 Andy Piper <andy@xemacs.org>
14861 * glyphs-x.c (x_button_update): new function. unconditionally
14862 update a button's state when the instance is dirty.
14863 (image_instantiator_format_create_glyphs_x): add x_button_update.
14864 (x_widget_instantiate): remove old resize cruft.
14866 2000-04-02 Andy Piper <andy@xemacs.org>
14868 * frame.c (change_frame_size_1): The introduction of gutters means
14869 that we need to allow 0 as a potential frame dimension.
14871 2000-04-02 IKEYAMA Tomonori <tomonori@suiyokai.org>
14873 * redisplay.c (add_glyph_rune): Don't set 0 to bufpos for text
14874 image glyph if allow_cursor.
14875 (add_hscroll_rune): Don't allow cursor to border glyph.
14876 (create_text_block): Ditto.
14878 * redisplay-output.c (redisplay_move_cursor): Do nothing even if
14879 text not in buffer.
14880 (redisplay_output_layout): Call ensure_face_cachel_complete for
14884 2000-03-16 IKEYAMA Tomonori <tomonori@suiyokai.org>
14886 * redisplay.c (add_glyph_rune): Adding text image as text runes.
14888 * redisplay-output.c (redisplay_move_cursor): NO_CURSOR if text
14891 * redisplay-tty.c (tty_output_display_block): Delete the routine
14892 for text image glyph
14893 * redisplay-x.c (x_output_display_block): ditto
14894 * redisplay-msw.c (mswindows_output_display_block): ditto
14896 2000-02-02 Mike Alexander <mta@arbortext.com>
14898 Note: Some of these were committed by accident as part of other
14901 * regex.c (regex_compile): Avoid compiler warnings.
14903 * ntproc.c (sys_spawnve): Avoid compiler warnings.
14905 * nt.h: Declare term_ntproc correctly.
14907 * nt.c: Remove incorrect declaration of get_home_directory which
14908 is declared correctly in lisp.h.
14910 * keymap.c (get_keyelt): Avoid compiler warnings.
14911 (raw_lookup_key_mapper): Avoid compiler warnings.
14913 * gutter.c (gutter_was_visible): Add return statement to avoid warning.
14915 * glyphs-eimage.c (png_instantiate): Avoid compiler warnings.
14917 * filemode.c (mode_string): Avoid compiler warnings.
14919 * file-coding.c (Fcoding_system_aliasee): Add return statement to
14922 * events-mod.h: Undef some things that winuser.h defines differently.
14924 * data.c (Faset): Avoid compiler warnings.
14926 * alloc.c (Fmake_byte_code): Avoid compiler warnings.
14928 2000-03-03 Jan Vroonhof <vroonhof@math.ethz.ch>
14930 * sound.c (Fplay_sound_file): Wrap ESD in start/stop_interrupts.
14931 Fall through to simple beep on error.
14932 Replace "extern" by real header file.
14934 * linuxplay.c: Use nativesound.h
14935 (play_sound_data): Return error code. Be less verbose on error.
14937 * sunplay.c: Use nativesound.h
14938 (play_sound_data): Return error code. Be less verbose on error.
14940 * ntplay.c: Use nativesound.h
14941 (play_sound_data): Return fake error code
14943 * sgiplay.c: Use nativesound.h
14944 (play_sound_data): Return error code
14946 * hpplay.c: Use nativesound.h, partially implement
14947 new error code. Break compilation until finished.
14948 (play_sound_data): error code.
14950 * nativesound.h (play_sound_file):
14951 (play_sound_data): Prototype in new header.
14953 2000-03-31 Andy Piper <andy@xemacs.org>
14955 * glyphs-widget.c: (button_query_geometry): new function. Adjust
14956 for toggle and radio buttons.
14957 (image_instantiator_buttons): use it.
14959 2000-03-03 Jan Vroonhof <vroonhof@math.ethz.ch>
14961 * scrollbar-x.c (x_update_vertical_scrollbar_callback):
14962 (x_update_horizontal_scrollbar_callback): Return if no mirror was
14963 found. Scrollbar event probably belonged to some old config.
14965 2000-03-31 Andy Piper <andy@xemacs.org>
14967 * glyphs-widget.c (widget_instantiate): use LAYOUT_VERTICAL rather
14969 (initialize_widget_image_instance): default layout to
14970 LAYOUT_HORIZONTAL rather than 0.
14971 (widget_instantiate): reverse the item list at the end rather than
14973 (layout_layout): re-code for the border text at the front of the
14974 item list rather than at the end.
14975 (layout_query_geometry): ditto. Pick up fixed and dynamic sizes
14976 provided by the user.
14977 (widget_query_geometry): comment.
14979 2000-03-30 Andy Piper <andy@xemacs.org>
14981 * glyphs-widget.c (image_instantiator_layout): allow standard
14982 widget keywords in layouts.
14984 * gutter.c (output_gutter): cope with nil gutter contents.
14986 * frame.c (Fset_frame_properties): add gutter docs.
14988 2000-03-29 Andy Piper <andy@xemacs.org>
14990 * toolbar-msw.c (TBSTYLE_FLAT): add.
14991 (mswindows_output_toolbar): minor fiddling.
14993 2000-03-29 Andy Piper <andy@xemacs.org>
14995 * gutter.c (output_gutter): force gutter size recalculation if
14996 what we are trying to display won't fit.
14997 (update_gutter_geometry): new function. A per-gutter version of
14998 update_frame_gutter_geometry.
14999 (update_frame_gutter_geometry): use it.
15000 (redraw_exposed_gutter): add extra debugging output.
15002 2000-03-28 Mike Alexander <mta@arbortext.com>
15004 * dumper.c: Declare pdump_hFile and pdump_hMap (Windows only)
15005 (pdump_file_unmap): Implement it on Windows
15006 (pdump_file_get): Save alocated handles for pdump_file_unmap
15008 2000-03-28 Andy Piper <andy@xemacs.org>
15010 * gui.c (get_gui_callback): treat Quit specially.
15012 2000-03-27 Andy Piper <andy@xemacs.org>
15014 * glyphs.c (image_instantiate): be careful to check in the same
15017 2000-03-27 Didier Verna <didier@xemacs.org>
15019 * config.h.in: define the proper SMART_INCLUDE macro.
15020 handle renaming of `foo_h_path' to `foo_h_file'.
15022 * database.c: ditto.
15026 * linuxplay.c: ditto.
15028 * terminfo.c: ditto.
15030 * tooltalk.h: ditto.
15032 2000-03-27 Andy Piper <andy@xemacs.org>
15034 * glyphs-msw.c (mswindows_update_widget): make sure the widget
15035 gets updated whenever the face might have changed.
15037 2000-03-26 Mike Alexander <mta@arbortext.com>
15039 * dumper.c (pdump_resource_free): Fix the comment.
15041 2000-03-21 Olivier Galibert <galibert@pobox.com>
15043 * input-method-xlib.c (XIM_init_frame): Remove painful warning.
15045 2000-03-22 Mike Alexander <mta@arbortext.com>
15047 * dumper.c: Include Windows headers on Windows
15048 (pdump_resource_free): Add a body to the function
15049 (pdump_load): exe_name -> exe_path and add some comments.
15051 2000-03-25 Mike Alexander <mta@arbortext.com>
15053 * gui.c (copy_gui_item_tree): Return a value in all cases
15055 2000-03-21 Didier Verna <didier@xemacs.org>
15057 * config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 here from
15059 (SMART_INCLUDE): new macro.
15060 (POSTGRES_INCLUDE): new macro to include postgresql headers from
15061 the proper location.
15063 * postgresql.c: use it.
15067 2000-03-24 Andy Piper <andy@xemacs.org>
15069 * gutter.c (redraw_exposed_gutters): must be "in display" when we
15072 2000-03-24 Andy Piper <andy@xemacs.org>
15074 * redisplay-output.c (compare_runes): use image_instance_changed
15075 to detect changes. Do not depend on glyphs_changed, only depend on
15077 (redisplay_output_layout): add debug messages.
15078 (compare_runes): ditto.
15080 * glyphs.h: declare new functions.
15081 (struct Lisp_Image_Instance): remove percent and associated
15084 * gui.h: declare new copying functions.
15086 * gui.c (copy_gui_item_tree): new function.
15087 (copy_gui_item): new function.
15088 (gui_item_id_hash): revert to standard hash.
15089 (gui_item_hash): ditto.
15090 (gui_item_hash_internal): deleted.
15091 (mark_gui_item): mark value.
15092 (gui_item_add_keyval_pair): add value.
15093 (gui_item_init): ditto.
15094 (gui_add_item_keywords_to_plist): ditto.
15095 (gui_item_equal): ditto.
15096 (syms_of_gui): add Q_value.
15098 * glyphs-x.c (x_progress_gauge_update): use pending items and
15099 value for setting the state.
15100 (x_update_widget): don't set items from pending here.
15102 * glyphs-widget.c (update_widget): update items here.
15103 (progress_gauge_set_property): use items for storing value. Put
15104 new value in pending items.
15106 * glyphs-msw.c (mswindows_progress_gauge_update): use pending
15107 items for new value. Convert percent -> value.
15108 (mswindows_tab_control_update): don't update items here.
15110 * glyphs.c (Fupdate_widget_instances): use image_instance_changed.
15111 (update_subwindow): ditto.
15112 (image_instance_changed): new function. Compare hash values and
15113 past and present widget items.
15114 (image_instantiate): We more careful about where we instantiate
15116 (image_instantiate): add error checking.
15118 * gutter.c (syms_of_gutter): use -hook.
15120 2000-03-20 Yoshiki Hayashi <yoshiki@xemacs.org>
15122 * console-tty.c (Fset_console_tty_input_coding_system): Use
15124 (Fset_console_tty_output_coding_system): Use Qterminal.
15125 (tty_init_console): Use Qkeyboard and Qterminal.
15127 2000-03-21 Ben Wing <ben@xemacs.org>
15129 * ntproc.c (create_child): remove bogus HAVE_NTGUI's.
15130 From Mike Alexander <mta@arbortext.com>.
15132 2000-03-21 Ben Wing <ben@xemacs.org>
15134 * event-msw.c (mswindows_need_event): Horrible kludge to fix
15135 process brokenness. Proper implementation to come.
15137 Rename call-process-internal to old-call-process-internal.
15138 New impl. in process.el.
15140 2000-03-21 Martin Buchholz <martin@xemacs.org>
15142 * Makefile.in.in: Coalesce HAVE_NATIVE_SOUND code fragments.
15144 2000-03-20 Andy Piper <andy@xemacs.org>
15146 * glyphs.c (full_list_hash): make hashes of the same elements in
15147 different orders return different values.
15149 2000-03-20 Martin Buchholz <martin@xemacs.org>
15151 * XEmacs 21.2.32 is released.
15153 2000-03-20 Martin Buchholz <martin@xemacs.org>
15155 * buffer.h (DFC_ALLOCA_USE_CONVERTED_DATA):
15156 (DFC_MALLOC_USE_CONVERTED_DATA):
15157 Add aliasing-safe casts to allow use with char* or unsigned char*
15160 * eldap.c (Fldap_open):
15161 (Fldap_search_basic):
15164 Make C++-compilable.
15165 Make sure GCPRO'ed variables are initialized.
15166 Use temp variables to avoid repeated calls to Flength.
15168 2000-03-16 Martin Buchholz <martin@xemacs.org>
15171 Make sure PATH_MAX is always defined.
15172 Include limits.h for PATH_MAX.
15173 Deprecate use of MAXPATHLEN.
15175 2000-03-10 Martin Buchholz <martin@xemacs.org>
15177 * emacs.c: Add reinit_vars_of_fileio.
15178 * symsinit.h: Add reinit_vars_of_fileio.
15179 * fileio.c (reinit_vars_of_fileio): New.
15180 * fileio.c (Fmake_temp_name):
15181 Initialize temp_name random number from microseconds to make
15182 collisions even less likely. Initialize always at process startup
15183 time. (make-temp-name) used to return the same file name twice in
15185 Random stylistic fiddling.
15188 2000-03-20 Andy Piper <andy@xemacs.org>
15190 * glyphs.c (image_instantiate): allow text glyphs to be
15191 instantiated in the minibuffer window.
15193 2000-03-19 Andy Piper <andy@xemacs.org>
15195 * glyphs.c (image_instance_hash): be careful about which items we
15198 * glyphs-widget.c (tab_control_set_property): record into pending
15199 items rather than the actual items.
15201 * glyphs-x.c (x_update_widget): use pending items to update with.
15203 * glyphs-msw.c (mswindows_tab_control_update): use pending items
15206 * glyphs.c (mark_image_instance): mark pending items.
15208 * window.c (Fset_window_configuration): record the buffer.
15209 (Fselect_window): totally revert previous change which breaks many
15212 2000-03-18 Andy Piper <andy@xemacs.org>
15214 * glyphs-msw.c (mswindows_tab_control_update): force selected
15217 * glyphs.c (image_instantiate): don't allow the minibuffer as a
15218 window domain cache, otherwise we get inconsistencies at
15219 startup. There is something fishy at startup which can lead to the
15220 minibuffer being the selected window when the gutter content is
15223 * gui.c (parse_gui_item_tree_list): add probably unnecessary
15225 (parse_gui_item_tree_children): ditto.
15226 (parse_gui_item_tree_item): ditto.
15228 * glyphs.c (Fupdate_widget_instances): return something.
15230 2000-03-18 Yoshiki Hayashi <yoshiki@xemacs.org>
15232 * window.c (Fselect_window): Undo 2000-03-17 change.
15234 2000-03-17 SL Baur <steve@musashimaru.m17n.org>
15236 * postgresql.c (Fpq_setenv): Remove this turkey when linking
15237 against v7.0 libraries. Insta-coredump city until the postgres
15240 2000-03-17 Andy Piper <andy@xemacs.org>
15242 * faces.c (complex_vars_of_faces): don't give the widget face an
15243 inherited background pixmap.
15245 * glyphs-msw.c (mswindows_tab_control_instantiate): select the
15248 * event-stream.c (Fdispatch_non_command_events): return something.
15250 * gutter.c (output_gutter): use widget face.
15251 (clear_gutter): ditto.
15253 * NEWS: adjust again.
15255 * window.c (Fselect_window): make sure this runs to completion to
15256 avoid oddities with Fset_window_configuration.
15257 (Fcurrent_window_configuration): in general do not save the
15258 minibuffer as the selected window.
15260 * glyphs.h (IMAGE_INSTANCE_HASH_DEPTH): increase.
15262 2000-03-16 Olivier Galibert <galibert@pobox.com>
15264 * emacs.c (Frunning_temacs_p): Revert previous patch.
15265 (main_1): Reinitialize running_temacs_argc if pdump_load succeeds.
15267 2000-03-16 Andy Piper <andy@xemacs.org>
15269 * glyphs-x.c (x_tab_control_update): if no widget values then
15272 * NEWS: update for new features.
15274 * event-Xt.c (emacs_Xt_force_event_pending): new function. Post a
15275 synthetic event to the native system.
15276 (reinit_vars_of_event_Xt): set force_event_pending to
15277 emacs_Xt_force_event_pending.
15279 * events.h (struct event_stream): add force_event_pending.
15281 * specifier.c (recompute_one_cached_specifier_in_window): add
15284 * redisplay.c (redisplay_frame): don't call
15285 update_frame_subwindows. Reset subwindow cachels when
15286 subwindows_changed, removing this was an optimization too far.
15288 * redisplay-output.c (compare_runes): reorganize so that we catch
15289 glyph changes when we want them. Set optimize_output when this
15290 would help layouts.
15291 (redisplay_output_layout): remove frame_really_changed, use
15292 optimize_output instead.
15294 * redisplay-msw.c (mswindows_output_display_block): reset
15295 optimize_output after outputting a glyph.
15296 * redisplay-x.c (x_output_display_block): ditto.
15297 * redisplay-tty.c (tty_output_display_block): ditto.
15299 * gutter.c: (specifier_vars_of_gutter): use new spec changed
15301 (gutter_specs_changed): do specific gutter positions.
15302 (top_gutter_specs_changed): new function. Only update the
15303 specified gutter specs.
15304 (bottom_gutter_specs_changed): ditto.
15305 (left_gutter_specs_changed): ditto.
15306 (right_gutter_specs_changed): ditto.
15308 * gui.c (gui_item_hash_internal): new function, does a real hash.
15309 (gui_item_id_hash): use it.
15310 (gui_item_hash): hash the eval'ed gui_item.
15312 * gui-x.c (popup_selection_callback): send an eval event to call
15313 Fupdate_widget_instances.
15315 * gui-msw.c (mswindows_handle_gui_wm_command): send an eval event
15316 to call Fupdate_widget_instances.
15318 * glyphs.h (struct Lisp_Image_Instance): add optimize_output flag.
15319 (IMAGE_INSTANCE_OPTIMIZE_OUTPUT): access it.
15321 * glyphs.c: (update_frame_subwindows): deleted.
15322 (Fupdate_widget_instances): new function for updating the dirty
15323 state of widgets that might have changed.
15324 (syms_of_glyphs): add Qupdate_widget_instances.
15325 (full_list_hash): hash a list completely.
15326 (image_instance_hash): use it for items and properties.
15328 * frame-msw.c (mswindows_size_frame_internal): remove unused
15331 * faces.h (struct face_cachel): fix comment.
15333 * event-stream.c (Fdispatch_non_command_events): new
15334 function. Process non-command events, forcing an event cycle
15336 (syms_of_event_stream): declare.
15337 (event_stream_force_event_pending): new function. Force an event
15338 on the native event queue so that an event cycle will occur next
15342 (struct ntpipe_shove_stream):
15343 (mswindows_enqueue_dispatch_event):
15344 (mswindows_dequeue_dispatch_event):
15345 (mswindows_cancel_dispatch_event):
15346 (mswindows_pump_outstanding_events):
15347 (mswindows_drain_windows_queue):
15348 (mswindows_handle_paint):
15349 (mswindows_wnd_proc):
15350 (mswindows_key_to_emacs_keysym):
15351 (get_process_input_waitable):
15352 (emacs_mswindows_delete_stream_pair): re-indent file.
15353 (mswindows_need_event): do not process further fds if the windows
15354 fd is set, otherwise you get endless XM_BUMPQUEUE cycles. This
15355 fixes the 100% cpu problem.
15356 (reinit_vars_of_event_mswindows): set force_event_pending to 0.
15358 2000-03-15 Olivier Galibert <galibert@pobox.com>
15364 * emacs.c: Moved dump file searching to dumper.c.
15365 (Frunning_temacs_p): Fixed.
15367 * alloc.c: Moved everything pdump-related to dumper.c. Removed
15368 last_lrecord_type_index_assigned.
15370 2000-02-20 Olivier Galibert <galibert@pobox.com>
15372 * symsinit.h: Added reinit parameter to init_console_stream
15375 * lisp.h: Added file parameter to pdump_load declaration.
15377 * emacs.c (main_1): Added -nd/--nodump-file and -sd/--show-dump-id
15378 support. Added dump file searching.
15380 * config.h.in: Added EMACS_PROGNAME.
15382 * console-stream.c (init_console_stream): Fix reinitialisation
15383 when running from temacs.
15385 * alloc.c (pdump): Add id support.
15386 (pdump_load): Add file parameter and signature/id support.
15388 * Makefile.in.in: Add full pdump support.
15390 2000-03-15 SL Baur <steve@musashimaru.m17n.org>
15392 * postgresql.c: Update documentation to reflect latest code
15394 (print_result): Show tuple counts in printed representation when
15396 (Fpq_put_nbytes): MULE-ize.
15397 (Fpq_get_line_async): Ditto.
15399 2000-03-14 SL Baur <steve@musashimaru.m17n.org>
15401 * postgresql.c (Fpq_lo_import): Fix return value.
15402 Suggested by: Kenji Itoh <keit@tpj.co.jp>.
15404 2000-03-13 Ben Wing <ben@xemacs.org>
15406 * alloc.c (pdump_load):
15407 Fix compile warning under mswin.
15409 2000-03-14 SL Baur <steve@musashimaru.m17n.org>
15411 * postgresql.c: Mule-ization, bug fixes.
15412 Use PG_CODING to encapsulate coding system name changes.
15413 Backport a version of TO_EXTERNAL format for 21.1/InfoDock.
15414 (pg-coding-system): Create.
15416 (Fpq_conn_defaults): Mule-ize.
15417 (Fpq_connectdb): Mule-ize & bug fix.
15418 (Fpq_connect_start): Mule-ize.
15419 (Fpq_set_client_encoding): Mule-ize.
15420 (Fpq_finish): Document `DEAD' connection status.
15421 (Fpq_clear): Ditto.
15422 (Fpq_pgconn): Mule-ize.
15423 (Fpq_exec): Mule-ize & bug fix.
15424 (Fpq_send_query): Ditto.
15425 (Fpq_get_result): Ditto.
15426 (Fpq_res_status): Mule-ize.
15427 (Fpq_result_error_message): Mule-ize.
15428 (Fpq_ntuples): fix comments.
15429 (Fpq_fname): Mule-ize.
15430 (Fpq_fnumber): Mule-ize.
15431 (Fpq_ftype): fix comments.
15432 (Fpq_get_value): Mule-ize.
15433 (Fpq_cmd_status): Ditto.
15434 (Fpq_cmd_tuples): Ditto.
15435 (Fpq_oid_value): Ditto.
15436 (Fpq_notifies): Ditto.
15437 (Fpq_lo_import): Ditto.
15438 (Fpq_lo_export): Ditto.
15439 (Fpq_get_line): Ditto.
15440 (Fpq_put_line): Mule-ize and bug fix.
15441 (syms_of_postgresql): Fix ifdef'ing, add pg-coding-system.
15443 2000-03-10 SL Baur <steve@musashimaru.m17n.org>
15445 * postgresql.c (vars_of_postgresql): Mule-ize.
15446 (Fpq_conn_defaults): Ditto.
15448 2000-03-12 Ben Wing <ben@xemacs.org>
15450 * alloc.c (Fmake_byte_code):
15451 * alloc.c (debug_string_purity_print):
15452 * alloc.c (pdump_backtrace):
15453 * alloc.c (pdump_get_indirect_count):
15454 * alloc.c (pdump_register_sub):
15455 * alloc.c (pdump_register_object):
15456 * alloc.c (pdump_register_struct):
15457 * alloc.c (pdump_dump_data):
15458 * alloc.c (pdump_reloc_one):
15462 * console-msw.c (GetConsoleHwnd):
15463 * console-msw.c (msw_hide_console):
15464 * console-msw.c (msw_show_console):
15465 * console-msw.c (msw_ensure_console_buffered):
15466 * console-msw.c (msw_output_console_string):
15467 * console-msw.c (console_type_create_mswindows):
15469 a) Added functions to manipulate the console window for use with
15472 b) Added support for writing text to the console, which is now
15473 used under Windows when xemacs is not being run non-interactively,
15474 to write text that would otherwise be destined for stdout because
15475 under these circumstances, text written to stdout tends to
15476 disappear and not be seen.
15480 * event-Xt.c (x_event_to_emacs_event):
15481 * event-Xt.c (describe_event_window):
15482 * events-mod.h (XEMACS_MOD_CONTROL):
15484 * events.c (Fmake_event):
15485 * events.c (character_to_event):
15486 * events.c (event_to_character):
15487 * events.c (format_event_object):
15488 * events.c (Fevent_modifiers):
15490 * events.h (struct key_data):
15491 * events.h (struct button_data):
15492 * events.h (struct misc_user_data):
15493 * frame-x.c (Fcde_start_drag_internal):
15494 * frame-x.c (Foffix_start_drag_internal):
15495 * gpmevent.c (Freceive_gpm_event):
15497 * keymap.c (bucky_sym_to_bucky_bit):
15498 * keymap.c (control_meta_superify):
15499 * keymap.c (make_key_description):
15500 * keymap.c (keymap_lookup_directly):
15501 * keymap.c (create_bucky_submap):
15502 * keymap.c (keymap_store):
15503 * keymap.c (define_key_check_and_coerce_keysym):
15504 * keymap.c (define_key_parser):
15505 * keymap.c (define_key_alternate_name):
15506 * keymap.c (Fdefine_key):
15507 * keymap.c (raw_lookup_key_mapper):
15508 * keymap.c (struct map_keymap_unsorted_closure):
15509 * keymap.c (map_keymap_unsorted_mapper):
15510 * keymap.c (map_keymap_sort_predicate):
15511 * keymap.c (map_keymap_sorted):
15512 * keymap.c (accessible_keymaps_mapper_1):
15513 * keymap.c (where_is_recursive_mapper):
15514 * keymap.c (describe_map_mapper):
15515 * keymap.c (describe_map_sort_predicate):
15516 * keymap.c (describe_map):
15517 * keymap.c (complex_vars_of_keymap):
15518 And a number of other files, the key modifier preprocessor
15519 constants that xemacs uses have names that conflict with constants
15520 defined under MS Windows for other purposes, so they were renamed
15521 to begin with the prefix XEMACS_. The variables that hold such
15522 modifiers were changed to consistently be of type int to fix
15523 various compile warnings.
15525 * console.c (complex_vars_of_console):
15528 * device-msw.c (mswindows_finish_init_device):
15529 * device-msw.c (msw_get_workspace_coords):
15530 * device-msw.c (mswindows_device_system_metrics):
15531 and various other files, added support for a new
15532 device property called offset-workspace which returns the position
15533 of the upper left corner of the workspace area and goes along with
15534 the existing size-workspace property.
15537 * dialog-msw.c (push_bufbyte_string_as_unicode):
15538 * dialog-msw.c (mswindows_popup_dialog_box):
15539 Added support for XEmacs-style accelerator specifications in
15540 button text. Note: I didn't add support for this under X Windows,
15541 and somebody needs to do this.
15544 * dialog.c (Fpopup_dialog_box):
15545 Documented the support for accelerators that was just mentioned.
15547 editfns.c (get_home_directory): Changed behavior under Windows
15548 when HOME not defined; former behavior was irretrievably broken.
15551 * emacs.c (main_1):
15553 * minibuf.c (clear_echo_area_internal):
15554 * minibuf.c (echo_area_append):
15556 * print.c (std_handle_out_external):
15557 * print.c (std_handle_out_va):
15559 * print.c (write_string_to_stdio_stream):
15560 * print.c (output_string):
15561 * print.c (debug_print):
15562 * print.c (debug_backtrace):
15563 * print.c (debug_short_backtrace):
15564 Cleaned up the code that prints text to stdout so that this can be
15565 changed to output into a console window instead under MS Windows,
15566 as described above.
15569 * eval.c (DEFEND_AGAINST_THROW_RECURSION):
15570 * eval.c (internal_catch):
15571 * eval.c (unwind_to_catch):
15572 * eval.c (throw_or_bomb_out):
15573 * eval.c (condition_case_1):
15574 * eval.c (signal_1):
15575 * eval.c (check_error_state_sanity):
15576 * eval.c (call_with_suspended_errors_1):
15577 * eval.c (call_with_suspended_errors):
15578 * eval.c (reinit_vars_of_eval):
15579 Added code to catch throw loops and check for a pesky bug that may
15583 * event-msw.c (key_needs_default_processing_p):
15584 * event-msw.c (mswindows_wnd_proc):
15585 * event-msw.c (mswindows_modifier_state):
15586 * event-msw.c (emacs_mswindows_quit_p):
15587 * event-msw.c (vars_of_event_mswindows):
15588 a) Added support for using the alt key to select menu items as is
15589 standard under MS Windows. This is controlled using the variable
15590 menu-accelerator-enabled, just like under X Windows. There is an
15591 option on the options menu to turn this support on. I really
15592 think that it should be on by default under Windows, but I'm not
15593 going to make this change yet.
15595 b) Added support for dynamic display size changes under Windows.
15598 * event-stream.c (maybe_echo_keys):
15599 * event-stream.c (Fnext_event):
15600 * event-stream.c (command_builder_find_leaf):
15601 * event-stream.c (lookup_command_event):
15602 * event-stream.c (execute_command_event):
15603 * event-stream.c (pre_command_hook):
15604 * event-stream.c (post_command_hook):
15605 * event-stream.c (syms_of_event_stream):
15606 * event-stream.c (vars_of_event_stream):
15607 * event-stream.c (complex_vars_of_event_stream):
15608 * events.h (struct command_builder):
15610 a) Tried to clean up a little bit the horribly written x-specific
15611 accelerator code that crept into this file. I moved this code
15612 into menubar-x.c where it belongs. I also needed to move the
15613 command builder structure into the file events.h because it is
15614 accessed directly by this accelerator code. What I didn't do, but
15615 which should be done at some point, is to properly abstract this
15616 code using device methods instead of the kludgy way that it
15617 currently hooks into the event code.
15619 b) Added the lisp variables this-command-properties and
15620 last-command- properties, which should be used to synchronize two
15621 adjacent commands in preference to playing games with the variable
15622 this-command, which is typically what happens.
15624 c) Added some slightly nasty code to hook into the lisp support
15625 for shifted- motion-key selection. This is actually necessary for
15626 somewhat complicated reasons, which are described in
15627 simple.el. (NB: I think the proper thing would be to have the code
15628 that calls the pre and post command hooks also call out to generic
15629 lisp functions in simple.el, where all built-in stuff could be
15630 added. I will think about this more.)
15632 * event-unixoid.c (poll_fds_for_input):
15633 * lread.c (readchar):
15634 * redisplay-tty.c (tty_clear_frame):
15635 * redisplay-x.c (x_get_gc):
15636 * signal.c (interrupt_signal):
15637 And a whole bunch of other files: fixed up places that printed
15638 directly to stderr to instead call the function stderr_out so that
15639 the changes I made under Windows work correctly.
15641 * filemode.c (mode_string):
15645 * frame-msw.c (mswindows_size_frame_internal):
15646 Fixed the computation of frame size and position to keep the frame
15647 within the workspace area, rather than within the physical
15648 dimensions of the screen, so that the frame doesn't overlap window
15649 manager decorations, such as the start menu and toolbar, typically
15650 at the bottom of the screen.
15652 * frame.c (vars_of_frame):
15653 Changed the default frame title format under MS Windows to consist
15654 of buffername-XEmacs, which is standard under MS Windows. I think
15655 it might be a good idea to change this everywhere because I think
15656 it is superior to the current frame title format, but this is the
15657 kind of change that is likely to cause some people to get annoyed,
15658 so I'm not making it.
15660 * glyphs-eimage.c (png_instantiate): Fixed some compile warnings.
15662 * gui-msw.c (mswindows_handle_gui_wm_command):
15663 Fixed compile warnings.
15666 * gui-x.c (strdup_and_add_accel):
15667 * gui-x.c (button_item_to_widget_value):
15669 Added code to automatically put an accelerator onto the beginning
15670 of menu items that don't have one as is now the standard, and is
15671 described more later. Also fixed things so that the menu item
15672 name can be an evaluated expression, again a new standard.
15675 * gui.c (gui_item_add_keyval_pair):
15676 * gui.c (make_gui_item_from_keywords_internal):
15677 * gui.c (gui_add_item_keywords_to_plist):
15678 * gui.c (gui_item_accelerator):
15679 * gui.c (gui_name_accelerator):
15680 * gui.c (gui_item_included_p):
15681 * gui.c (gui_item_display_flush_left):
15682 * gui.c (gui_item_display_flush_right):
15683 * gui.c (parse_gui_item_tree_item):
15684 * gui.c (parse_gui_item_tree_children):
15685 * gui.c (parse_gui_item_tree_list):
15686 Mule-ized. Cleanup. GCPRO addition.
15688 * line-number.c (buffer_line_number):
15690 * lisp.h (EMACS_INT_MAX):
15691 Added the manifest constant EMACS_INT_MIN corresponding to the
15692 existing constant EMACS_INT_MAX. This is partially to fix compile
15693 warnings under Windows, and partly for cleanliness.
15696 * menubar-msw.c (REPLACE_ME_WITH_GLOBAL_VARIABLE_WHICH_CONTROLS_RIGHT_FLUSH):
15697 * menubar-msw.c (msw_translate_menu_or_dialog_item):
15698 * menubar-msw.c (displayable_menu_item):
15699 * menubar-msw.c (populate_menu_add_item):
15700 * menubar-msw.c (populate_or_checksum_helper):
15701 * menubar-msw.c (populate_menu):
15702 * menubar-msw.c (update_frame_menubar_maybe):
15703 * menubar-msw.c (prune_menubar):
15704 * menubar-msw.c (msw_char_is_accelerator):
15705 * menubar-msw.c (unsafe_handle_wm_initmenu_1):
15706 * menubar-msw.c (mswindows_handle_wm_command):
15707 * menubar-msw.c (mswindows_handle_wm_initmenupopup):
15708 * menubar-msw.c (mswindows_handle_wm_initmenu):
15709 * menubar-msw.c (mswindows_update_frame_menubars):
15710 * menubar-msw.c (mswindows_free_frame_menubars):
15711 * menubar-msw.c (mswindows_popup_menu):
15712 Fixed a bug in handling accelerators where an extra character
15713 would be displayed in the menu item. Also generalized the
15714 function displayable_menu_item because it is now used by the
15715 dialog box code as well. And finally, added code in the functions
15716 that create the menubar to extract a list of accelerators for the
15717 top level menubar, which is used in the event code to determine
15718 whether a particular alt-key combination should be used to invoke
15719 a menu item, or should be passed through to access the standard
15720 XEmacs keymap binding for this key combination.
15722 Much needed GCPROing.
15725 * menubar-x.c (menu_item_descriptor_to_widget_value_1):
15726 * menubar-x.c (menu_item_descriptor_to_widget_value):
15727 * menubar-x.c (restore_in_menu_callback):
15728 * menubar-x.c (x_popup_menu):
15729 * menubar-x.c (menu_move_up):
15730 * menubar-x.c (menu_move_down):
15731 * menubar-x.c (menu_move_left):
15732 * menubar-x.c (menu_move_right):
15733 * menubar-x.c (menu_select_item):
15734 * menubar-x.c (command_builder_operate_menu_accelerator):
15735 * menubar-x.c (menu_accelerator_junk_on_error):
15736 * menubar-x.c (command_builder_find_menu_accelerator):
15737 * menubar-x.c (Faccelerate_menu):
15739 Moved a whole bunch of code here that was previously in
15740 event-stream.c as described above. There is also code connected
15741 to the new standard of adding an accelerator to the beginning of
15742 menu items that don't have one as described above and below.
15745 * menubar.c (menu_parse_submenu_keywords):
15746 * menubar.c (Fmenu_find_real_submenu):
15747 * menubar.c (Fnormalize_menu_item_name):
15748 * menubar.c (syms_of_menubar):
15749 * menubar.c (vars_of_menubar):
15750 * menubar.c (complex_vars_of_menubar):
15752 a) Cleaned up a bunch of documentation and improved it.
15754 b) XEmacs now automatically adds an accelerator onto the beginning
15755 of any menu items that don't have one. I did this because there
15756 will inevitably be some menu items on the main menubar that don't
15757 have accelerators on them because the package that adds that
15758 particular menu item hasn't yet been fixed up to have accelerators
15759 in them and it looked rather strange to have some items with and
15760 some items without accelerators, especially since even in items
15761 without accelerators, you can, at least under windows, still
15762 access the item through an accelerator corresponding to the first
15763 character in the item's name. If people don't like this behavior,
15764 I can add a variable to turn it off optionally, but I'm not sure
15765 this is a good idea because we really do need to have accelerators
15766 on all of the menu items, and if a package doesn't like the
15767 accelerators being put on the first character, then it should put
15768 the accelerators where they belong.
15770 c) I made a behavior change, which is that the descriptor that
15771 specifies the text of the menu item, which formerly was just a
15772 string, can now also be an evaluated expression. This makes this
15773 descriptor parallel with all of the others, which could also be
15774 evaluated expressions. This also obviates the need for the
15775 keyword :label, which was previously listed in the documentation
15776 as unimplemented, and which was for the same purpose.
15781 * ntproc.c (new_child):
15782 * ntproc.c (sys_spawnve):
15783 * ntproc.c (find_child_console):
15784 * ntproc.c (sys_kill):
15785 Fixed compile warnings. By the way, this file should really go
15786 away entirely, and this will happen as soon as Kirill makes his
15787 final round of process cleanups, which affect the function
15791 * process-nt.c (struct nt_process_data):
15792 * process-nt.c (find_process_from_pid):
15793 * process-nt.c (send_signal_the_nt_way):
15794 * process-nt.c (enable_child_signals):
15795 * process-nt.c (find_child_console):
15796 * process-nt.c (send_signal_the_95_way):
15797 * process-nt.c (nt_finalize_process_data):
15798 * process-nt.c (ensure_console_window_exists):
15799 * process-nt.c (nt_create_process):
15800 * process-nt.c (nt_kill_child_process):
15801 * process-nt.c (nt_kill_process_by_pid):
15802 * process-nt.c (nt_open_network_stream):
15803 * process-nt.c (vars_of_process_nt):
15804 Copied over code from Emacs 20.5 to correctly send signals to sub-
15805 processes under Windows 95. Also added code to automatically
15806 create and hide console window when a sub-process is created under
15807 Windows 95, which obviates the need for the separate runemacs.exe
15808 executable, and finally implemented some variables that were
15809 implemented in Emacs 20.5, but previously not in XEmacs. These
15810 include mswindows- start-process-share-console and
15811 mswindows-start-process-inherit-error-mode. (Both of these only
15812 apply to Windows 95.)
15814 * regex.c (regex_compile): Fixed a compile warning.
15817 * select-msw.c (mswindows_own_selection):
15818 * select-msw.c (mswindows_get_foreign_selection):
15819 * select-msw.c (mswindows_disown_selection):
15820 * select-msw.c (console_type_create_select_mswindows):
15821 * select-msw.c (syms_of_select_mswindows):
15822 Cleaned up the file and implemented the device method
15823 selection_exists_p, which had accidentally been left out. Also
15824 removed four lisp functions that were remnants from before the
15825 time when the selection code was properly device abstracted.
15826 These functions are no longer needed because there are generic
15827 equivalents, and because they were added recently and don't exist
15828 in FSF Emacs, I don't think there's any problem with just deleting
15832 * sysdep.c (sys_subshell):
15833 Fixed a compile warning, although in this case there's probably
15834 something wrong with this code, and it ought to be looked into
15835 more thoroughly by somebody who understands it.
15838 * window.c (Fwindow_text_area_height):
15839 * window.c (Fwindow_width):
15840 * window.c (Fwindow_full_width):
15841 * window.c (Fwindow_pixel_width):
15842 * window.c (debug_print_window):
15843 * window.c (syms_of_window):
15844 Added functions window-text-area-height and window-full-width,
15845 which are functions for returning various width and height
15846 characteristics of a window. (One of these functions is necessary
15847 for making the file dialog box work correctly, and the other one
15848 was added for completeness.) Also added a table to the
15849 documentation for window-height which describes the entire scheme
15850 for accessing width and height characteristics of a window.
15852 2000-03-12 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
15854 * nt.c (fstat): Added a comment for another problem with
15855 non-encapsulated [f]stat(), reported by Adrian Aichner
15856 <aichner@ecf.teradyne.com>.
15858 2000-03-11 Andy Piper <andy@xemacs.org>
15860 * window.c (make_dummy_parent): initialize subwindow instance
15862 (Fset_window_configuration): zero extent_modiff.
15864 2000-03-10 Andy Piper <andy@xemacs.org>
15866 * redisplay.c (Fredraw_frame): reset the changed_set flags so that
15867 more changes can be triggered.
15868 (Fredisplay_frame): ditto.
15869 (Fredraw_device): ditto.
15870 (Fredisplay_device): ditto.
15871 (redisplay_frame): make non-static.
15872 (redisplay_frame): call update_frame_gutter_geometry outside of
15875 * gutter.h: declare update_frame_gutter_geometry.
15877 * redisplay.h: declare redisplay_frame.
15879 * gutter.c (update_frame_gutter_geometry): move geometry changes
15880 in update_frame_gutters here. Geometry changes can only occur
15881 outside of redisplay.
15882 (update_frame_gutters): remove geometry change code.
15883 (Fredisplay_gutter_area): make sure that we are in display when we
15884 update and that we have flushed any size changes.
15886 2000-03-11 Andy Piper <andy@xemacs.org>
15888 * alloc.c (pdump_dump_data): remove i & count shadows.
15890 2000-02-27 Mike Alexander <mta@arbortext.com>
15892 * sysdep.h: Declare pdump_read_file
15894 * sysdep.c (pdump_read_file): New function
15896 * alloc.c (pdump_load): Call pdump_read_file to get the portable
15899 2000-03-10 SL Baur <steve@musashimaru.m17n.org>
15901 * lrecord.h: add `lrecord_type_pgsetenv'.
15903 2000-03-08 SL Baur <steve@musashimaru.m17n.org>
15905 * symsinit.h: declare (vars|syms)_of* functions.
15906 * lrecord.h: add `lrecord_type_pgconn' and 'lrecord_type_pgresult'.
15908 2000-03-06 SL Baur <steve@musashimaru.m17n.org>
15910 * config.h.in: Add symbols HAVE_POSTGRESQL and HAVE_POSTGRESQLV7
15912 * inline.c: Include postgresql.h lrecord stuffs to placate buggy
15915 * emacs.c (main_1): Call postgres initialization code.
15917 * postgresql.h: New file. PostgreSQL RDBMS support.
15918 * postgresql.c: New file.
15920 2000-03-08 Yoshiki Hayashi <yoshiki@xemacs.org>
15922 * redisplay-output.c (redisplay_output_display_block): Disable
15925 2000-03-09 Yoshiki Hayashi <yoshiki@xemacs.org>
15927 * mule-canna.c (Fcanna_henkan_region): Translate doc-string.
15928 (Fcanna_henkan_next): Ditto.
15929 (Fcanna_bunsetu_henkou): Ditto.
15930 (Fcanna_henkan_kakutei): Ditto.
15931 (Fcanna_henkan_end): Ditto.
15932 (Fcanna_henkan_quit): Ditto.
15933 (Fcanna_henkan_next): Set retun value correctly.
15934 (c2mu): Use unsigned char instead of signed char.
15936 2000-03-09 Yoshiki Hayashi <yoshiki@xemacs.org>
15938 * emacs.c (main_1): Always call syms_of_gui.
15939 * inline.c: include gui.h
15941 2000-03-09 Yoshiki Hayashi <yoshiki@xemacs.org>
15943 * redisplay.c (Vvisible_bell): Renamed from visible_bell and
15944 converted to Lisp_Object.
15945 (Qtop_bottom): New variable.
15946 (syms_of_redisplay): Initialize it.
15947 * redisplay.h (Vvisible_bell): Ditto.
15948 * sound.c (ding): Ditto and check if Vvisible_bell is nil.
15949 * redisplay-x.c (x_flash): When Vvisible_bell is top-bottom,
15950 only flash top and bottom.
15952 2000-03-08 Andy Piper <andy@xemacs.org>
15954 * buffer.c (Frename_buffer): record new buffer name the right way.
15956 2000-03-08 Andy Piper <andy@xemacs.org>
15958 * glyphs.c (update_subwindow): increase hash depth so that widget
15959 items get picked up properly.
15961 * redisplay-output.c (compare_runes): increase hash depth so that
15962 widget items get picked up properly.
15964 2000-03-08 Andy Piper <andy@xemacs.org>
15966 * gutter.c (output_gutter): add some debug.
15968 * glyphs.h (struct Lisp_Image_Instance): add display_hash.
15969 (IMAGE_INSTANCE_DISPLAY_HASH): new macro.
15970 (XIMAGE_INSTANCE_DISPLAY_HASH): ditto.
15972 * redisplay-output.c (compare_runes): use display_hash to
15973 determine if glyphs really are not the same.
15975 * glyphs.c (update_subwindow): check display_hash to see if
15976 anything really needs to be updated. If not then do
15977 nothing. Record the display_hash after updating.
15978 (image_instance_equal): compare the image_instance face also.
15980 2000-03-07 Yoshiki Hayashi <yoshiki@xemacs.org>
15982 * redisplay.h: Fix comment style.
15984 2000-03-08 Jonathan Harris <jhar@tardis.ed.ac.uk>
15986 * consle-msw.h (struct mswindows_frame):
15987 Added new member paint_pending to indicate whether a WM_PAINT
15988 magic event has been queued for this frame.
15990 * event-msw.c (mswindows_drain_windows_queue):
15991 Don't queue a WM_PAINT magic event if one is already queued.
15992 (emacs_mswindows_handle_magic_event): clear paint_pending flag.
15994 * frame-msw.c (mswindows_init_frame_1): initialise paint_pending flag.
15996 2000-03-07 Didier Verna <didier@xemacs.org>
15998 * dired.c: #include `regex.h' after `sysfile.h'.
16000 2000-03-06 Martin Buchholz <martin@xemacs.org>
16002 * sound.c (init_nas_sound): Fix compiler warning.
16004 * alloc.c (ALIASING_VOIDPP_DEREFERENCE): New.
16006 (MARK_STRUCT_AS_FREE):
16007 (MARK_STRUCT_AS_NOT_FREE):
16008 Make `gcc -fstrict-aliasing' work properly.
16010 2000-03-07 Jonathan Harris <jhar@tardis.ed.ac.uk>
16012 * device-msw.c (mswindows_finish_init_device): Call CoInitialize().
16013 (mswindows_delete_device): Call CoUnnitialize().
16015 * event-msw.c (mswindows_wnd_proc): WM_DROPFILES: Decode Shortcuts.
16017 2000-02-25 <CraigL@DyCon.com>
16019 * process-nt.c: MinGW now has <shellapi.h>, but still needs
16022 * sysdep.c: This extern declaration for environ prevents MinGW
16023 from finding the variable in CRTDLL.DLL.
16025 * s\mingw32.h (PBS_SMOOTH): Removed, now defined in cygwin's
16027 (SHGFI_EXETYPE): ..
16028 (WM_MOUSEWHEEL): ..
16029 (_WIN32_IE): Added, needed to get the TCS_BOTTOM and TCS_VERTICAL
16031 (MMRESULT): Removed, now defined in cygwin's windows headers.
16033 (uid_t,gid_t,pid_t,ssize_t): ..
16034 (_timeb): Removed, MinGW defines both _timeb and timeb.
16035 (HAVE_H_ERRNO): Added.
16036 (HAVE_TZNAME): Added, configure is not detecting this.
16038 2000-02-03 IKEYAMA Tomonori <tomonori@suiyokai.org>
16040 * chartab.h (XCHAR_TABLE_VALUE_UNSAFE): New macro.
16041 * syntax.c (syntax_match): Use it.
16043 * cmds.c: Import auto-fill-chars from FSF Emacs.
16044 (Vauto_fill_chars): New variables.
16045 (internal_self_insert): Check Vauto_fill_chars.
16047 Declare auto-fill-chars as a Lisp variable and initialize it.
16049 2000-03-05 Jonathan Harris <jhar@tardis.ed.ac.uk>
16051 * fileio.c (Fmake_symbolic_link):
16053 Run handlers even if local machine doesn't have symlinks.
16055 2000-03-05 Jonathan Harris <jhar@tardis.ed.ac.uk>
16057 * event-msw.c (mswindows_drain_windows_queue):
16058 Don't generate paint magic events for non-XEmacs frames.
16060 2000-03-05 Andy Piper <andy@xemacs.org>
16062 * redisplay.c (redisplay_frame): generate_displayable_area and
16063 friends assumes that we are not in GC, we therefore have to make
16064 sure that this doesn't happen.
16066 * gutter.c (calculate_gutter_size): generate_displayable_area
16067 assumes that we are not in GC, we therefore have to make sure that
16068 this doesn't happen.
16070 2000-03-05 Martin Buchholz <martin@xemacs.org>
16072 * opaque.c (DEFINE_LRECORD_IMPLEMENTATION): opaque_ptr ==> opaque-ptr
16074 2000-03-03 Jan Vroonhof <vroonhof@math.ethz.ch>
16076 * redisplay.c (regenerate_window): Make sure we set a sane value
16077 for end_pos even if we jump out of the loop.
16078 (regenerate_window): Answer Ben's question :-).
16079 (start_end_of_last_line): Add may_error argument.
16080 (start_of_last_line):
16081 (end_of_last_line): Pass may_error = 0.
16082 (end_of_last_line_may_error): New function.
16083 (pixel_to_glyph_translation): Use it, so we don't crash in
16086 2000-03-04 Andy Piper <andy@xemacs.org>
16088 * window.h (struct window): add gutter_extent_modiff.
16090 * window.c (allocate_window): zero out gutter_extent_modiff.
16092 * redisplay.h: declare sync_display_line_structs.
16094 * redisplay.c (add_glyph_rune): add a better comment.
16096 * redisplay-output.c (sync_display_line_structs): made non-static.
16097 (compare_runes): remove unneccesary glyph cachel access.
16099 * gutter.h: declare gutter_extent_signal_changed_region_maybe.
16101 * gutter.c (output_gutter): don't output the gutter if extent
16102 changes only involve extents in buffers. use 4 sets of display
16104 (gutter_extent_signal_changed_region_maybe): new function. Mark
16105 extents in gutters as changed.
16106 (update_frame_gutters): use 4 sets of display lines.
16107 (reset_gutter_display_lines): ditto.
16108 (free_frame_gutters): ditto.
16109 (redraw_exposed_gutter): force output of gutters.
16111 * frame.h (struct frame): add 4 sets of gutter display lines.
16113 * extents.c: (extent_changed_for_redisplay): signal changes to
16114 extents in strings in the gutter as well as extents in buffers.
16116 2000-03-02 Andy Piper <andy@xemacs.org>
16118 * gutter.c (specifier_vars_of_gutter): cosmetic changes.
16120 * frame.c (Fmake_frame): make sure the gutters get initialized
16121 after the frame is visible.
16122 (set_frame_selected_window): re-arrange compilation macros a
16124 (change_frame_size_1): mark gutters changed.
16126 * device.c (Fset_device_class): mark gutters changed.
16128 2000-03-01 Andy Piper <andy@xemacs.org>
16130 * window.c (window_top_frame_gutter_height): deleted.
16131 (window_bottom_frame_gutter_height): ditto.
16132 (window_left_frame_gutter_height): ditto.
16133 (window_right_frame_gutter_height): ditto.
16134 (window_top_gutter_height): don't use them.
16135 (window_bottom_gutter_height): ditto.
16136 (window_left_gutter_width): ditto.
16137 (window_right_gutter_width): ditto.
16138 (Fsplit_window): ditto.
16139 (Fwindow_pixel_edges): don't use border dimensions here.
16141 * scrollbar.c (update_scrollbar_instance): don't take gutters into account.
16142 (update_scrollbar_instance): ditto.
16144 * redisplay.c (generate_modeline): don't take gutters into account.
16145 (generate_modeline): ditto.
16146 (redisplay_frame): small gutter display optimization.
16148 * redisplay-x.c (x_output_vertical_divider): don't take gutters into account.
16150 * redisplay-msw.c (mswindows_output_vertical_divider): don't take
16151 gutters into account.
16153 * gutter.h (WINDOW_REAL_*_GUTTER_BOUNDS): remove bogus checks
16154 for window position and type.
16156 * gutter.c (get_gutter_coords): fix for frame gutters.
16157 (update_frame_gutters): update frame geometry if the gutters have
16159 (init_frame_gutters): record current gutter geometries.
16161 * glyphs-msw.c (mswindows_subwindow_instantiate): remove unused
16163 (mswindows_widget_instantiate): ditto.
16165 * frame.h (struct frame): add current_gutter_bounds.
16167 * frame.c (change_frame_size_1): position window and minibuffer
16168 appropriately taking into account the frame gutters.
16170 * frame-x.c: (x_initialize_frame_size): take into account the
16173 2000-02-29 Stephen J. Turnbull <stephen@xemacs.org>
16175 * emacs.c (data-directory): Xref `locate-data-file' in docstring.
16177 2000-02-29 Stephen J. Turnbull <stephen@xemacs.org>
16179 * alloc.c (dumpopaquevec): Increase dimension for --with-canna.
16181 1999-12-30 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
16183 * file-coding.c (reset_decoding_stream): Clear previous
16184 detection state when autodetect.
16186 2000-02-29 Didier Verna <didier@xemacs.org>
16188 * extents.c (set_extent_glyph_1): don't require extents to be
16191 2000-02-27 Andy Piper <andy@xemacs.org>
16193 * gutter.c (Fset_default_gutter_position): don't default left and
16194 right gutter visibility to t.
16195 (Fset_default_gutter_position): run
16196 default-gutter-position-changed-hook.
16197 (syms_of_gutter): add default-gutter-position-changed-hook.
16199 2000-02-26 Andy Piper <andy@xemacs.org>
16201 * specifier.c (Fmake_specifier): add gutter references.
16203 * gutter.h (RAW_WINDOW_GUTTER): new macro.
16205 * lisp.h: declare Fvalid_plist_p.
16207 * gutter.c (gutter_geometry_changed_in_window): mark the modeline
16209 (default_gutter_visible_p_changed_in_window): invalidate gutter as
16210 well as its visibility so that it gets reconstructed.
16211 (construct_window_gutter_spec): new function. Construct a string
16212 to be displayed in the gutter from a plist of strings. Take care
16213 to only use elements that are declared as visible.
16214 (calculate_gutter_size): use RAW_WINDOW_GUTTER instead of
16216 (gutter_validate): allow plists of strings in the specifier.
16217 (gutter_specs_changed): construct the real_gutter from the gutter
16218 specs using construct_window_gutter_spec.
16219 (gutter_visible_validate): gutter-visible is a new specifier type.
16220 (Fgutter_visible_specifier_p): new function for the new specifier.
16221 (syms_of_gutter): declare gutter-visible and
16222 Fgutter_visible_specifier_p.
16223 (specifier_type_create_gutter): intitalize new gutter-visible
16225 (reinit_specifier_type_create_gutter): ditto.
16226 (specifier_vars_of_gutter): use new specifier type for gutter
16228 (init_frame_gutters): construct real_gutter correctly.
16229 (Fgutter_specifier_p): beef up documentation.
16230 (Fgutter_size_specifier_p): ditto.
16232 * winslots.h: add real_gutter slots.
16234 2000-02-25 Andy Piper <andy@xemacs.org>
16236 * device-msw.c: Be kind to older cygwin versions. From Raymond
16237 Toy <toy@rtp.ericsson.se>.
16239 * gui-msw.c (Fmswindows_shell_execute): Remove things unknown to
16240 earlier cygwins. From Raymond Toy <toy@rtp.ericsson.se>.
16242 2000-02-25 Martin Buchholz <martin@xemacs.org>
16244 * elhash.c (MARK_OBJ): Practice macro hygiene.
16246 2000-02-24 Martin Buchholz <martin@xemacs.org>
16248 * miscplay.c: s/__inline__/inline/g;
16249 * glyphs-msw.c (set_mono_pixel): INLINE ==> static inline
16250 (get_device_compdc): INLINE ==> static inline
16251 * *.[ch]: Change INLINE to INLINE_HEADER globally.
16252 find -name '*.h' | \
16253 xargs global-replace \
16254 's/(^|(?<=[^A-Za-z0-9_]))INLINE((?=[^A-Za-z0-9_])|$)/INLINE_HEADER/g'
16256 2000-02-25 Andy Piper <andy@xemacs.org>
16258 * window.c (window_top_frame_gutter_height): new function.
16259 (window_top_window_gutter_height): ditto.
16260 (window_top_gutter_height): use them.
16261 (window_bottom_frame_gutter_height): new function.
16262 (window_bottom_window_gutter_height): ditto.
16263 (window_bottom_gutter_height): use them.
16264 (window_left_window_gutter_width): new function.
16265 (window_left_frame_gutter_width): ditto.
16266 (window_left_gutter_width): use them.
16267 (window_right_window_gutter_width): new function.
16268 (window_right_frame_gutter_width): ditto.
16269 (window_right_gutter_width): use them.
16270 (window_pixel_height): new function. calulate window pixel height
16271 with frame gutter involvement.
16272 (Fsplit_window): calculate new sizes taking frame gutters into
16274 (window_char_height_to_pixel_height): don't include frame gutters.
16275 (window_char_height): use window_pixel_height.
16276 (window_pixheight): rename from window_pixel_height.
16277 (change_window_height): use it.
16278 (window_pixel_height_to_char_height): don't include frame gutters.
16279 (window_char_width_to_pixel_width): ditto.
16281 2000-02-25 Andy Piper <andy@xemacs.org>
16283 * glyphs.h (IMAGE_INSTANCE_FACE): glyph might be nil, don't crash
16286 2000-02-24 Martin Buchholz <martin@xemacs.org>
16288 * alloc.c (staticpro):
16289 (staticpro_nodump):
16294 (compact_string_chars):
16295 (pdump_dump_wired):
16296 Convert: if (foo) abort(); ==> assert (! foo);
16298 * eldap.c (Fldap_search_basic):
16302 Fix compiler warnings, and possible crashes if (random) return
16303 value were to be used.
16305 2000-02-21 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
16307 * device-msw.c: Workaround ResetDC failure.
16309 * frame-msw.c (msprinter_init_frame_3): Added an assertion before
16310 applying a devmode.
16312 * redisplay-msw.c (get_frame_dc): Added start_page_p.
16313 (mswindows_text_width): Do not start printer page.
16315 * console-msw.h (CHECK_MSGDI_DEVICE): Added this and friends.
16317 * glyphs-msw.c: Added image methods to msprinter console and
16318 msprinter-specific image instantiation.
16320 2000-02-20 Mike Alexander <mta@arbortext.com>
16322 * select-msw.c (Fmswindows_set_clipboard): GC protect more things
16323 to avoid crashes when selection-sets-clipboard is on
16324 (mswindows_own_selection): ditto
16326 2000-02-19 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
16329 * redisplay-msw.c (get_frame_dc):
16330 (get_frame_compdc):
16332 * device-msw.c (mswindows_init_device):
16333 (mswindows_delete_device):
16334 (msprinter_init_device):
16335 (msprinter_delete_device):
16336 * frame-msw.c (mswindows_init_frame_1):
16337 (mswindows_delete_frame):
16338 (msprinter_init_frame_3):
16339 (msprinter_delete_frame): Move compatible DC to device object from
16340 frame object, for both mswindows and msprinter. Only one at a time
16341 is needed, it is a real waste to have one per frame!
16343 2000-02-23 Andy Piper <andy@xemacs.org>
16345 * glyphs.c: add dynamic width and height elements.
16346 (image_instance_equal): ditto.
16348 * glyphs-widget.c (widget_query_geometry): calculate width and
16349 height dynamically if required.
16350 (initialize_widget_image_instance): initialize dynamic dimensions.
16351 (widget_instantiate): pick-up dynamic dimensions.
16353 * glyphs.h (struct Lisp_Image_Instance): add width and height for
16354 dynamic determination. Add appropriate macros.
16356 * gutter.h (WINDOW_GUTTER_BORDER_WIDTH): make non-integer
16358 (WINDOW_GUTTER_SIZE): ditto.
16359 (WINDOW_GUTTER_SIZE_INTERNAL): ditto.
16361 * redisplay-msw.c (get_frame_compdc): gcc can't cope with this
16363 (get_frame_dc): ditto.
16365 * redisplay.h (GLOBAL_RESET_CHANGED_FLAGS): don't reset faces
16368 2000-02-23 Martin Buchholz <martin@xemacs.org>
16370 * XEmacs 21.2.31 is released.
16372 2000-02-22 Ben Wing <ben@xemacs.org>
16374 * ntheap.c (allocate_heap): Make sure `ptr' is initialized.
16376 2000-02-22 Andy Piper <andy@xemacs.org>
16378 * glyphs-x.c (x_widget_instantiate): don't explicitly resize here.
16380 2000-02-21 Mike Sperber <mike@xemacs.org>
16384 * Makefile.in.in: Remove obsolete EMACSBOOTSTRAP... environment
16387 2000-02-21 Mike Sperber <mike@xemacs.org>
16389 * s/aix4.h: Declare getaddrinfo broken for AIX 4, which it is.
16391 2000-02-21 Martin Buchholz <martin@xemacs.org>
16393 * XEmacs 21.2.30 is released.
16395 2000-02-20 Martin Buchholz <martin@xemacs.org>
16397 Performance hacking.
16399 Add INIT_LRECORD_IMPLEMENTATION macros, paired with
16400 DEFINE_LRECORD_IMPLEMENTATION macros in the same file.
16401 * emacs.c (main_1):
16403 * console.c (DEFVAR_CONSOLE_LOCAL_1):
16404 * buffer.c (DEFVAR_BUFFER_LOCAL_1):
16405 * symeval.h (DEFVAR_SYMVAL_FWD):
16406 * symbols.c (guts_of_unbound_marker):
16407 Make all c_readonly objects also lisp_readonly and marked for life.
16408 * lrecord.h (struct lrecord_implementation):
16409 Document flags better.
16410 * lrecord.h (DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION_WITH_PROPS):
16411 * lrecord.h (DECLARE_LRECORD):
16412 * lrecord.h (XSETRECORD):
16413 * lrecord.h (RECORDP):
16414 * lrecord.h (RECORD_TYPEP):
16415 * lrecord.h (RECORD_MARKER): New.
16416 * lrecord.h (error_check_*):
16417 * lrecord.h (CONCHECK_NONRECORD):
16418 * lrecord.h (MAKE_LRECORD_IMPLEMENTATION):
16419 * lrecord.h (INIT_LRECORD_IMPLEMENTATION): New.
16420 * lrecord.h (set_lheader_implementation):
16421 * lrecord.h (enum lrecord_type): New.
16422 * symeval.h (SYMBOL_VALUE_MAGIC_P):
16423 * alloc.c (disksave_object_finalization_1):
16424 * alloc.c (mark_object):
16425 * alloc.c (lrecord_type_index):
16426 * alloc.c (tick_lcrecord_stats):
16427 * alloc.c (Fgarbage_collect):
16428 * alloc.c (init_alloc_once_early):
16429 * alloc.c (pdump_load):
16430 * alloc.c (GC_CHECK_LHEADER_INVARIANTS): New.
16431 * alloc.c (lrecord_type_index): Delete.
16432 Make lisp object type indexes be constant.
16433 Makes (byte-compile) 5% faster.
16434 Put all marker functions into their own array.
16435 Makes (garbage-collect) 5% faster.
16436 Optimize SYMBOL_VALUE_MAGIC_P.
16437 Makes (byte-compile) 2-3% faster.
16438 * config.h.in (gc_checking_assert): New.
16439 * alloc.c: Use gc_checking_assert().
16440 * .dbxrc: Make compatible with new object type implementation.
16441 * .gdbinit: Make compatible with new object type implementation.
16442 * alloc.c: Delete all symbols defined only for debugging, such as
16443 Lisp_Type_Vector and lrecord_charset.
16445 2000-02-21 Andy Piper <andy@xemacs.org>
16447 * gui-msw.c (Fmswindows_shell_execute): fix file location
16450 * buffer.c (Fkill_buffer): remove buffer from alist buffer
16451 unshowing so that set_window_buffer doesn't undo
16452 kill_buffer_hook's hard work.
16454 * glyphs-widget.c (tab_control_query_geometry): don't count the
16455 first item when calculating geometry.
16457 * glyphs.c (map_subwindow): remove redundant code.
16458 (update_frame_subwindows): be more circumspect about when to
16461 * glyphs-x.c (x_update_widget): Properly fix sizing bug. Fix bug
16462 when items haven't changed. Update faces if faces have changed as
16463 well as just the widget face.
16464 (x_tab_control_update): Update faces if faces have changed as well
16465 as just the widget face.
16467 2000-02-21 Jonathan Harris <jhar@tardis.ed.ac.uk>
16469 * device-msw.c: (mswindows_delete_device): Remove redundant DDE
16471 (build_syscolor_string): Use mswindows_color_to_string to try to
16473 (mswindows_device_system_metrics): Reverse the foreground and
16474 background colors so that they match the documentation.
16476 * objects-msw.c: (mswindows_X_color_map): tweak some values so
16477 they match the default Windows palette.
16478 (mswindows_color_to_string): New function.
16480 2000-02-21 Jonathan Harris <jhar@tardis.ed.ac.uk>
16482 * s/windowsnt.h: Only use __declspec(noreturn) with MSVC>=6.
16484 2000-02-18 Olivier Galibert <galibert@pobox.com>
16486 * m/*, s/*: Removed obsolete DATA_SEG_BITS, PURE_SEG_BITS,
16487 WORD_MACHINE, SIGN_EXTEND_CHAR and EXPLICIT_SIGN_EXTEND.
16489 * symbols.c (init_symbols_once_early): Removed obsolete
16490 DATA_SEG_BITS related kludge.
16491 (defvar_magic): Ditto.
16493 * malloc.c: Removed obsolete DATA_SEG_BITS
16495 * mem-limits.h: Ditto.
16497 * Makefile.in.in: Removed obsolete HAVE_SHM
16500 2000-02-13 Jonathan Harris <jhar@tardis.ed.ac.uk>
16502 * device-msw.c (mswindows_delete_device): Free DDE string
16505 2000-02-16 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
16507 * keymap.c (get_keyelt):
16508 * unexnt.c (unexec):
16509 * vm-limit.c (memory_warnings):
16510 * ntheap.c (recreate_heap):
16511 * ntheap.h (UNINIT_PTR):
16512 * select-msw.c (Fmswindows_get_clipboard):
16513 (Fmswindows_set_clipboard):
16514 * objects-msw.h (MSWINDOWS_BAD_HFONT):
16516 * menubar-msw.c (displayable_menu_item):
16518 * glyphs-msw.h (IMAGE_INSTANCE_MSWINDOWS_MASK):
16519 * sysdep.c (sys_subshell):
16520 * process-nt.c (nt_create_process):
16521 * nt.c (normalize_filename):
16522 (dostounix_filename):
16523 (unixtodos_filename):
16524 * ntproc.c (win32_executable_type):
16525 * ntplay.c (play_sound_data_1):
16527 * editfns.c (get_home_directory):
16528 * event-msw.c (struct winsock_stream):
16529 (mswindows_dde_callback):
16530 * device-msw.c (msprinter_init_device):
16531 (msprinter_get_devmode_copy): Frobbed syntax frivolities.
16533 * toolbar-msw.c (mswindows_free_frame_toolbars): Paramters to
16534 mswindows_clear_toolbar were swapped!
16536 * objects-msw.c:(colormap_t):
16538 * emacs.c (struct standard_args): Fixed const jumble.
16540 * glyphs-widget.c (update_widget): Fixed comparison notation.
16542 * event-msw.c (mswindows_dde_callback): Removed extraneous ';'.
16544 * s\windowsnt.h (DOESNT_RETURN): Defined to support the MSVC
16545 __declspec(noreturn) syntax.
16547 2000-02-19 Martin Buchholz <martin@xemacs.org>
16549 * eldap.c (Fldap_open):
16550 (Fldap_search_basic):
16553 Use new coding system conversion macros.
16555 2000-01-06 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
16557 * console-tty.c (tty_init_console): Change MULE to FILE_CODING.
16559 1999-11-27 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
16561 * eldap.h (Fldap_search) Renamed from Fldap_search_internal:
16562 (Fldap_add, Fldap_modify, Fldap_delete): New functions
16564 * eldap.c (Qadd, Qreplace): New constant symbols
16565 (Fldap_open): Use the LDAP_OPT_RESTART option to avoid
16566 interruptions by XEmacs signals
16567 Remove unnecessary calls to slow_down_interrupts and
16568 speed_up_interrupts
16569 (Fldap_search_basic): Renamed from Fldap_search_internal
16570 Added new optional parameter VERBOSE that triggers the
16571 display of progress messages
16572 Remove unnecessary calls to slow_down_interrupts and
16573 speed_up_interrupts
16574 LDAP result code analysis rewritten
16575 (Fldap_add, Fldap_modify, Fldap_delete): New functions
16576 (syms_of_eldap): Define the new symbols and functions
16579 2000-02-17 Martin Buchholz <martin@xemacs.org>
16581 * realpath.c: Determine PATH_MAX maximally portably.
16583 * insdel.c (bytecount_to_charcount): Optimize.
16584 The function used to be optimized for entirely ASCII sequences.
16585 Now it is optimized for successive characters from the same
16586 charset. This also wins big for _mostly_ ASCII sequences.
16588 * fileio.c (Ffile_truename): convert return from realpath() using
16589 Qfile_name, not Qbinary. Fixes obvious bug with non-ASCII symlinks.
16590 - Rewrite GCPROing slightly.
16592 * sysdep.c (sys_open): Do filename conversion, like all other
16593 sys_* functions. Fixes bug:
16594 (let ((file-name-coding-system 'iso-8859-2))
16595 (write-region x y latin2-name))
16596 ==> writes filename using internal encoding.
16598 2000-02-18 Martin Buchholz <martin@xemacs.org>
16600 * buffer.c (DEFVAR_BUFFER_LOCAL_1): Turn on c_readonly. Always const.
16601 * console.c (DEFVAR_CONSOLE_LOCAL_1): Turn on c_readonly. Always const.
16602 * symeval.h (DEFVAR_SYMVAL_FWD): Turn on c_readonly. Always const.
16603 * eval.c (lrecord_subr): Remove this_one_is_unmarkable.
16604 * symbols.c (lrecord_symbol_value_forward): Remove this_one_is_unmarkable.
16605 * symbols.c (guts_of_unbound_marker): Turn on c_readonly.
16606 * lrecord.h (UNMARKABLE_LRECORD_HEADER_P): Delete.
16607 (CONST_IF_NOT_DEBUG): Delete.
16608 * alloc.c (this_one_is_unmarkable): Delete.
16609 (mark_object): Don't check for this_one_is_unmarkable. Use the
16610 c_readonly flag instead.
16611 * lisp.h (DEFUN): Define a Lisp_Subr as c_readonly.
16613 2000-02-18 Jonathan Harris <jhar@tardis.ed.ac.uk>
16615 * event-msw.c (mswindows_drain_windows_queue):
16616 (emacs_mswindows_handle_magic_event): Remove attempt to optimise
16617 away redundant repaint events.
16619 2000-02-17 Andy Piper <andy@xemacs.org>
16621 * redisplay.h: declare mark_redisplay_structs.
16623 * redisplay.c (redisplay_window):
16624 (redisplay_frame): don't check subwindows_state_changed.
16625 (mark_redisplay): mark gutters here.
16627 * glyphs.c: (instantiate_image_instantiator): always layout if we
16628 haven't done so already.
16629 (allocate_image_instance): don't mark as dirty.
16630 (update_subwindow): bind inhibit_quit.
16632 * gutter.c (mark_gutters): new function.
16634 * glyphs-x.c (x_update_widget): Always resize to get round a
16637 * glyphs-msw.c (mswindows_tab_control_update): remove `;' that was
16638 breaking absolutely everything.
16640 * gutter.h: declare mark_gutters.
16642 2000-02-16 Martin Buchholz <martin@xemacs.org>
16644 * XEmacs 21.2.29 is released.
16646 2000-02-15 Olivier Galibert <galibert@pobox.com>
16648 * fns.c (size_bit_vector): Fix computation of the size.
16650 2000-02-15 Martin Buchholz <martin@xemacs.org>
16652 * *.[ch]: Change CONST to const globally.
16653 find -name '*.[ch]' | \
16654 xargs global-replace \
16655 's/(^|(?<=[^A-Za-z0-9_]))CONST((?=[^A-Za-z0-9_])|$)/const/g'
16656 - Remove vestigial references to CONST_IS_LOSING
16658 2000-02-13 Jonathan Harris <jhar@tardis.ed.ac.uk>
16660 * event-msw.c (mswindows_drain_windows_queue): Remove hack to
16661 bailout early on quit. Enqueue WM_PAINT events as XEmacs magic
16662 events instead of dispatching them directly.
16663 (mswindows_handle_paint): New function to do repainting.
16664 (mswindows_wnd_proc):
16665 (emacs_mswindows_handle_magic_event): Call above function.
16667 2000-02-13 Jonathan Harris <jhar@tardis.ed.ac.uk>
16669 * objects-msw.c (mswindows_create_font_variant): Return the new
16671 (initialize_font_instance): Get font metrics from the underlined
16672 variant of the font to cope with the case where the underlined
16673 font has a bigger descent.
16675 2000-02-08 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
16677 * gui.c (gui_item_accelerator): Return the first underlined
16678 character in item name.
16680 2000-02-11 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
16682 * lisp.h: Added Qprinter.
16684 * general.c (syms_of_general): Initialized it.
16686 * redisplay-msw.c (get_frame_dc): Conditionally start a new page.
16688 (get_frame_compdc): Made inline.
16690 * console.h (struct console_methods): Added eject_page method.
16692 * frame.h: Added FRAME_DISPLAY_P and friends.
16693 Aligned backslahes in many macros in more readable fashion.
16694 Added page_number to struct frame, and an accessor macro
16697 * defice.h: Added DEVICE_DISPLAY_P and friends.
16699 * device.c (Fdevice_printer_p): Used these.
16701 * frame.c (allocate_frame_core): Initialize page number.
16702 (Fprint_job_page_number):
16703 (Fprint_job_eject_page): Implemented.
16705 * frame-msw.c (msprinter_eject_page): Added method.
16706 (msprinter_start_page): Added.
16708 * window.c (Fwindow_truncated_p): Fixed docstring.
16709 (Fwindow_last_line_visible_height): Implemented.
16711 2000-02-09 Yoshiki Hayashi <yoshiki@xemacs.org>
16713 * frame.c (change_frame_size_1): Undo 2000-02-03 change.
16715 1999-12-20 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
16717 * syntax.c (scan_words): Always advance at least one character.
16719 2000-02-13 Andy Piper <andy@xemacs.org>
16721 * redisplay.c (add_glyph_rune): call get_glyph_cachel_index here
16722 to make sure the glyph is in the cachels.
16724 * glyphs.h (struct Lisp_Image_Instance): make layout_changed a
16725 global image instance flag.
16726 (IMAGE_INSTANCE_NEEDS_LAYOUT): new macro.
16727 (XIMAGE_INSTANCE_NEEDS_LAYOUT): ditto.
16729 * glyphs.c (allocate_image_instance): set dirty bits correctly.
16730 (Fset_image_instance_property): mark layout as changed.
16731 (invalidate_glyph_geometry_maybe): mark layout as changed.
16732 (glyph_width): use new NEEDS_LAYOUT macro.
16733 (glyph_ascent): ditto.
16734 (glyph_descent): ditto.
16735 (glyph_height): ditto.
16736 (image_instance_layout): mark layout as clean after laying out.
16737 (update_subwindow): don't mark layout as clean here.
16739 * glyphs-x.h (IMAGE_INSTANCE_X_WIDGET_ID): undo C++ changes, they
16740 should no longer be needed.
16742 * glyphs-x.c (x_update_widget): sanitize asserts.
16743 (x_finalize_image_instance): sanitize assignment to widgets.
16745 * glyphs-widget.c (widget_instantiate): don't need to clear the
16748 2000-02-13 Martin Buchholz <martin@xemacs.org>
16750 * sysdep.c (getcwd): Use standard prototype.
16751 * sysdep.h (getcwd): Use standard prototype.
16753 * fns.c (Fsubseq): Change parameters to more natural ANSI Lisp
16754 (sequence, start, end).
16755 Remove redundant type checking.
16756 (Fmapconcat): Remove useless GCPRO, a wrong-headed attempt (in
16757 view of `caller-protects') to avoid a crash where the real fix was
16760 2000-02-12 Martin Buchholz <martin@xemacs.org>
16762 * glyphs-x.c (x_finalize_image_instance): Compile error fixes.
16764 * s/sol2.h: Remove feature macro initialization.
16766 * alloc.c (alloc_lcrecord): Add more type checking assertions.
16767 (vector_hash): New. Code from internal_hash.
16769 Fix up allocation subsystem comments.
16771 * config.h.in: Add __EXTENSIONS__ for Solaris.
16773 * systime.h (EMACS_GETTIMEOFDAY): New.
16774 (EMACS_GET_TIME): Use EMACS_GETTIMEOFDAY.
16775 Remove Solaris-specific code.
16776 Use void* for the (ignored) second arg for gettimeofday().
16778 * elhash.c (hash_table_hash): Implement it, finally.
16779 * elhash.c: Use hashcode_t.
16781 * linuxplay.c (sighandler): Fix prototypes to use SIGTYPE.
16782 * sunplay.c (sighandler): Fix prototype to use SIGTYPE.
16784 * lisp.h (STRETCHY_STRUCT_SIZEOF): Delete.
16785 * fns.c (size_bit_vector):
16786 * alloc.c (size_vector):
16787 (make_vector_internal):
16788 (make_bit_vector_internal):
16789 (sweep_bit_vectors_1):
16790 Replace calls to STRETCHY_STRUCT_SIZEOF with offsetof expression.
16792 2000-02-10 Martin Buchholz <martin@xemacs.org>
16794 * s/aix4.h: #define MAP_FAILED if sys/mman.h didn't.
16795 Include strings.h to avoid warnings for bzero and strcasecmp.
16797 2000-02-10 Olivier Galibert <galibert@pobox.com>
16799 * alloc.c: Move STRETCHY_STRUCT_SIZEOF from here...
16800 * lisp.h (STRETCHY_STRUCT_SIZEOF): ...to here
16802 * fns.c (size_bit_vector): New. Declare bit vectors as a
16805 2000-02-10 Olivier Galibert <galibert@pobox.com>
16807 * symeval.h (struct symbol_value_magic): Remove "next" kludge and
16808 use a value field instead.
16809 (symbol_value_forward_forward): Use value field.
16810 (DEFVAR_SYMVAL_FWD): Use value field.
16811 (DEFVAR_SYMVAL_FWD_INT): Added. Dumps the int with dumpopaque.
16812 (DEFVAR_INT): Use DEFVAR_SYMVAL_FWD_INT.
16813 (DEFVAR_CONST_INT): Ditto.
16814 (DEFVAR_BOOL): Ditto.
16815 (DEFVAR_CONST_BOOL): Ditto.
16816 (DEFVAR_INT_MAGIC): Ditto.
16817 (DEFVAR_BOOL_MAGIC): Ditto.
16819 * symbols.c (guts_of_unbound_marker): Use value field.
16820 * console.c (DEFVAR_CONSOLE_LOCAL_1): Ditto.
16821 * buffer.c (DEFVAR_BUFFER_LOCAL_1): Ditto.
16823 * lisp.h: Declare dumpopaque and noninteractive1.
16825 * alloc.c (dumpopaque): Added.
16826 (pdump_dump_opaquevec): Added.
16827 (pdump): Call pdump_dump_opaquevec to dump opaque data.
16828 (pdump_load): Reload opaque data. Sync noninteractive1 with
16831 2000-02-10 Andy Piper <andy@xemacs.org>
16833 * glyphs.c (image_instance_layout): if the size changes, mark it
16836 * redisplay-output.c (redisplay_output_layout): Update the
16838 (redisplay_output_subwindow): ditto.
16840 * glyphs.c (update_subwindow): make sure we reset flags for
16841 layouts as well as everything else.
16843 * glyphs-widget.c (layout_layout): don't need to set the instances
16846 2000-02-09 Martin Buchholz <martin@xemacs.org>
16848 * device-x.c (x_init_device): Wrap calls to dll_* in HAVE_SHLIB,
16849 not HAVE_DLOPEN, which is a lower-level thing.
16851 * .cvsignore: Ignore gmon.out
16853 2000-02-09 Hamish Macdonald <hamishm@lucent.com>
16855 * .cvsignore: Ignore portable dumper xemacs.dmp file
16857 2000-02-09 Andy Piper <andy@xemacs.org>
16859 * redisplay-output.c (redisplay_output_layout): be more clever
16860 about when we output based on the changed flags.
16862 * glyphs.h (struct image_instantiator_methods): add update_method.
16863 (struct Lisp_Image_Instance): add changed flags. Declare new
16864 macros for manipulating them.
16866 * glyphs.c (allocate_image_instance): renamed glyph -> parent.
16867 (image_instance_parent_glyph): find an image_instance's parent
16868 glyph or image_instance.
16869 (image_instance_layout): mark the size as changed.
16870 (set_image_instance_dirty_p): new function. mark an image
16871 instance, plus all of its parents, as dirty.
16872 (Fset_image_instance_property): use it.
16873 (Fglyph_animated_timeout_handler): use it.
16874 (update_subwindow): call update_widget and device methods for
16875 update_subwindow. Mark all changed flags as clean.
16876 (Fresize_subwindow): mark size as changed.
16878 * glyphs-x.c (x_finalize_image_instance): try and detect gc
16880 (x_update_subwindow): only resize subwindows here.
16881 (x_update_widget): new function. Update all changed properties of
16883 (x_resize_subwindow): deleted.
16884 (x_widget_set_property): deleted.
16885 (x_progress_gauge_set_property): deleted.
16886 (x_progress_gauge_update): new function. Implement recorded
16888 (x_tab_control_update): ditto.
16889 (x_tab_control_set_property): deleted.
16890 (console_type_create_glyphs_x): declare new functions.
16891 (image_instantiator_format_create_glyphs_x): ditto.
16893 * glyphs-widget.c (widget_set_property): mark text changed.
16894 (update_widget): new function. Update properties of a widget.
16895 (widget_instantiate): for layouts make sure we set their
16896 children's parent correctly.
16897 (tab_control_set_property): new function. Record changes that will
16898 take place under redisplay's control.
16899 (progress_gauge_set_property): ditto.
16900 (image_instantiator_progress_guage): declare new functions.
16901 (image_instantiator_tab_control): ditto.
16903 * glyphs-msw.c (mswindows_update_subwindow): just do resizing here
16905 (mswindows_update_widget): new function. Update all properties on
16906 a widget that have changed.
16907 (mswindows_button_update): new function. Update a button's set
16909 (mswindows_tab_control_update): new function. Update the items in
16911 (mswindows_tab_control_set_property): deleted.
16912 (mswindows_progress_gauge_update): new function. Update the
16913 progress gauge's progress.
16914 (mswindows_widget_set_property): deleted. This is all done
16915 asynchronously now.
16916 (mswindows_progress_gauge_set_property): ditto.
16917 (console_type_create_glyphs_mswindows): declare new methods.
16918 (image_instantiator_format_create_glyphs_mswindows): ditto.
16920 * frame-msw.c (msprinter_init_frame_1): Remove unused variables.
16921 (msprinter_set_frame_properties): ditto.
16923 * console.h (struct console_methods): Add update_widget_method.
16925 2000-02-09 Andy Piper <andy@xemacs.org>
16927 * gui-msw.c (Fmswindows_shell_execute): Make
16928 mswindows-shell-execute industrial strength.
16930 2000-02-08 Martin Buchholz <martin@xemacs.org>
16932 * lrecord.h: Make macro argument `props' match member function `plist'.
16935 * fns.c (Fremprop):
16936 * fns.c (Fobject_plist):
16939 Object property list frobbing cleanup.
16940 - Allow any lisp object (compared with `eq'), not just symbols, as
16941 keys in object plists.
16942 - Move symbol plist frobbing into symbols.c, where it belongs.
16943 - Move string plist frobbing into alloc.c, where it belongs.
16944 - Everything's an lrecord now, so no need to test for symbolp, etc.
16945 - Fix up doc strings to refer to PROPERTY, not PROPNAME.
16947 * extents.c: Reorder code to remove declarations.
16949 * frame.h (store_in_alist): Remove useless declaration.
16951 2000-02-07 Martin Buchholz <martin@xemacs.org>
16953 * event-Xt.c (x_has_keysym): Use XConvertCase only if available.
16954 * config.h.in: Add HAVE_XCONVERTCASE.
16956 2000-02-07 Andy Piper <andy@xemacs.org>
16958 * glyphs.c (image_instance_layout): undo 2000-01-29 change since
16959 it breaks many things.
16961 2000-02-07 Jan Vroonhof <vroonhof@math.ethz.ch>
16963 * src/syntax.h (SYNTAX_START_P): Check whether the two chars
16964 actually can start a common comment type.
16965 * src/syntax.h (SYNTAX_END_P): ditto for end.
16967 2000-02-07 Martin Buchholz <martin@xemacs.org>
16969 * XEmacs 21.2.28 is released.
16971 2000-02-06 Martin Buchholz <martin@xemacs.org>
16973 * event-Xt.c (x_keysym_to_character): New.
16974 (maybe_define_x_key_as_self_inserting_character): New.
16975 (x_has_keysym): New.
16976 Auto-define all keys on the keyboard as self-insert-key.
16978 2000-02-02 Martin Buchholz <martin@xemacs.org>
16980 * menubar.c (vars_of_menubar): A small code simplification.
16982 * minibuf.c (echo_area_append): Workaround egcs-20000131 c++ compiler bug
16985 * ExternalClient.c:
16986 * EmacsShell-sub.c:
16989 Use consistent style for specifying X resources.
16991 * symbols.c (Fset): Further implement SYMVAL_LISP_MAGIC.
16992 This makes (dontusethis-set-symbol-value-handler) actually usable.
16994 * lrecord.h (lrecord_decription_type):
16995 * alloc.c (pdump_register_sub):
16998 Add XD_LISP_OBJECT_ARRAY to describe multiple Lisp_Objects.
16999 Comply with XEmacs coding style.
17000 All lrecord descriptions updated to use XD_LISP_OBJECT with 2
17001 args, and XD_LISP_OBJECT_ARRAY with 3 args.
17003 * keymap.c (Faccessible_keymaps):
17004 Make (accessible-keymaps map "\C-h") do the Right Thing.
17005 Make (accessible-keymaps map []) do the Right Thing.
17006 Make (accessible-keymaps map "") do the Right Thing.
17007 (check_keymap_definition_loop): New function.
17008 (keymap_store_internal): Keep luser from shooting self in foot,
17009 via (define-key ctl-x-4-map "p" global-map).
17010 Remove fullness slot from struct Lisp_Keymap, since hash tables
17012 (print_keymap): Remove 'Yuck' factor by simply printing "size %d".
17014 2000-01-30 Martin Buchholz <martin@xemacs.org>
17016 * redisplay.c (init_redisplay): Fix small memory leak.
17018 * elhash.c (pdump_reorganize_hash_table):
17019 Rename from reorganize_hash_table. Change prototype.
17020 Reuse the original memory for hentries. Save 100k.
17021 * alloc.c (PDUMP_READ): new macro.
17022 * alloc.c (pdump_load): Replace LISP_TO_VOID with higher-level macros.
17023 * alloc.c: No need to #ifndef before #undef.
17025 * print.c: Allow debug_print() to print readably by modifying
17026 debug_print_readably. Use consistent variable names.
17028 * .dbxrc: Try to get things to work even if stopped in a function
17029 without source available by explicitly specifying source files.
17030 2000-02-03 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17032 * unexnt.c (_start): Removed bogus code which caused loading heap
17033 from differrent executable file.
17034 Removed bogus assignment to _fmode, which caused inconsistencies.
17036 2000-02-03 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17038 * s\windowsnt.h: Removed lots of #if 0 blocks of Emacs heritage.
17039 Have spawnve encapsulation regard DONT_ENCAPSULATE.
17040 Do not preliminary `#define signal sigset'.
17042 * systime.h: Do not prototype environ on windows nt and cygwin,
17043 this conflicts with system header.
17045 * syssignal.h: Use correct define for WINDOWSNT
17047 * sysdep.h: Do not prototype environ on windows nt, this conflicts
17048 with system header.
17050 * sysdep.c (near start of file): Fixed commentary and rearranged
17051 ifdefs in readable order.
17052 (NEED_STARTS): Do not force NEED_STARTS when PDUMPing.
17055 (end_of_data): Do not compile in if using PDUMP.
17057 * symsinit.h: Prototyped vars_of_nt().
17059 * ntproc.c (windows9x_p): Added, instead of os_subtype.
17060 (find_child_console): Use it.
17061 (sys_kill): Use it.
17063 * ntheap.h: Do not extern os_subtype.
17065 * ntheap.c (cache_system_info): Do not cache unneeded:
17066 nt_major_version, nt_minor_version and os_subtype.
17067 (recreate_heap): Do not compile in when PDUMPing.
17069 * nt.c (geteuid and friends): Use the new varibale
17070 nt_fake_unix_uid, instead of hashing fake uid out of NT RID.
17071 (init_user_info): Removed the above mentioned hackery.
17072 (fstat, stat): Do not compile in if using MSVC 5.0 and above -
17073 stat has been fixed in the C runtime.
17074 (vars_of_nt): Added, defined the nt_fake_unix_uid variable there.
17076 * file-coding.c (struct file_coding_dump): Do not define
17077 ucs_to_mule_table in the struct if not MULE.
17078 (struct struct lrecord_description fcd_description_1): Do not dump
17081 * emacs.c (main_1): Call vars_of_nt().
17082 (right before Fdump_emacs_data): Don't need lastfile if using both
17083 portabe dumper and system malloc.
17085 * alloc.c (Fmemory_limit): Conditionalized out.
17086 (pdump): Use OPEN_BINARY for the portable dump file.
17087 (pdump_load): Ditto.
17089 2000-02-02 Mike Alexander <mta@arbortext.com>
17091 * nt.c (convert_time): Set tm_isdst before calling mktime and
17092 avoid calling it at all if the compiler supports 64 bit integers.
17093 Also initialize utc_base_ft before using it.
17095 2000-02-03 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
17097 * frame.c (change_frame_size_1): Take f->internal_border_width
17098 into consideration when calculating the width of the frame.
17100 2000-02-01 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17102 * window.c (frame_min_height):
17103 (frame_size_valid_p):
17104 (frame_pixsize_valid_p): Added.
17105 (check_frame_size): Generalized.
17107 * window.h: Prototyped the above.
17110 * general.c: Added Qbottom_margin, Qduplex, Qlandscape,
17111 Qleft_margin, Qorientation, Qportrait, Qright_margin, Qtop_margin.
17112 Deleted Vwin32_* and Vbinary_process_* unused variables.
17114 * device-msw.c (msprinter_init_device): Do not get printer font
17115 list; Added DEVMODE functions.
17117 * frame-msw.c: Added lots of printer code.
17119 * faces.c: Moved 'left-margin and 'right-margin defsymbols to
17122 * console-msw.h: Added more msprinter device private slots.
17124 2000-02-01 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17126 * event-msw.c (key_needs_default_processing_p): Added.
17127 (mswindows_wnd_proc, WM_KEYUP, KEYDOWN): Call it.
17129 2000-01-29 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17131 * glyphs.c (image_instance_layout): Mark image instance as clean
17133 (glyph_dirty_p): Removed redundant function.
17134 (invalidate_glyph_geometry_maybe): Added.
17135 (update_glyph_cachel_data): Call it.
17137 * glyphs.h: Prototyped it.
17139 * redisplay.c (add_glyph_rune): Call it.
17140 (redisplay_window): Reset glyphs cachels when frame faces have
17141 changed, thus forcing recomputation of built-in border glyphs.
17143 2000-01-30 Martin Buchholz <martin@xemacs.org>
17145 * Makefile.in.in: Make portable dumper and purify play well together.
17146 Add imperfect, but better than nothing, support for pdump.
17147 Remove xemacs.dmp when temacs is re-generated.
17148 Don't ignore errors when dumping xemacs.
17150 * symbols.c (maybe_call_magic_handler): Remove one magic number.
17152 2000-01-28 Andy Piper <andy@xemacs.org>
17154 * frame.c (allocate_frame_core): Use new Fset_window_buffer signature.
17155 (setup_normal_frame): ditto.
17156 (setup_frame_without_minibuffer): ditto.
17157 (setup_minibuffer_frame): ditto.
17158 (delete_frame_internal): ditto.
17159 (Fmake_frame_invisible): ditto.
17160 (Ficonify_frame): ditto.
17162 * window.h: change Fset_window_buffer signature.
17164 * window.c (Fsplit_window): Use new Fset_window_buffer signature.
17165 (Fset_window_buffer): allow recording of buffer if the window is
17166 the selected window.
17167 (window_loop): Use new Fset_window signature.
17169 2000-01-23 Daniel Pittman <daniel@danann.net>
17171 * config.h.in: Added template for `HAVE_ATHENA_3D'
17173 2000-01-29 Andy Piper <andy@xemacs.org>
17175 * glyphs-x.c (x_resize_subwindow): Try and catch bogus resizes.
17177 * gutter.c (output_gutter): Don't output if the window isn't live.
17179 2000-01-28 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17181 * glyphs-msw.c (mswindows_unmap_subwindow): Fix of corrupted patch
17182 of 01/12/00: Moved SetFocus back here where it belongs.
17184 2000-01-23 Andy Piper <andy@xemacs.org>
17186 * s/cygwin32.h: declare printer things.
17188 2000-01-26 Andy Piper <andy@xemacs.org>
17190 * select.c (Fown_selection_internal): GCPRO bug fix from Mike
17193 2000-01-24 Andy Piper <andy@xemacs.org>
17195 * glyphs-msw.c (mswindows_locate_pixmap_file): Expand filename.
17196 (mswindows_button_instantiate): Make sure glyph is a pixmap.
17198 * glyphs-widget.c (widget_instantiate): Avoid shadows.
17200 * frame-msw.c (msprinter_init_frame_3): Nuke warning.
17202 * glyphs-msw.c: (mswindows_string_to_color): remove declaration.
17204 * redisplay-msw.c (mswindows_output_cursor): Avoid shadows.
17205 (mswindows_output_display_block): Avoid local shadows.
17207 * event-msw.c (mswindows_enqueue_magic_event): Avoid shadows.
17208 (mswindows_enqueue_mouse_button_event): ditto.
17209 (mswindows_handle_gui_wm_command): remove declaration.
17211 * console-msw.c (mswindows_canonicalize_console_connection): Avoid
17214 * console-msw.h: Avoid shadows.
17215 (mswindows_get_toolbar_button_text):
17216 (emacs_mswindows_create_stream_pair):
17217 (emacs_mswindows_delete_stream_pair):
17218 (mswindows_handle_toolbar_wm_command): declare.
17220 * device-msw.c (build_syscolor_string): Avoid shadows.
17222 2000-01-23 Andy Piper <andy@xemacs.org>
17224 * glyphs-widget.c (widget_instantiate): reverse the items for
17225 layouts so that children are in the expected order.
17227 2000-01-28 Martin Buchholz <martin@xemacs.org>
17229 * ralloc.c: safe_bcopy ==> memmove
17230 * gmalloc.c: Remove MEMMOVE_MISSING conditional code.
17231 * s/msdos.h: Remove BCOPY macros.
17232 * insdel.c (gap_right): Remove BCOPY conditional code.
17233 * insdel.c (gap_left): Remove BCOPY conditional code.
17234 XEmacs demands a working ANSI C compiler - hence memmove.
17236 * regex.c (regex_compile): Remove accidental use of trigraphs.
17238 2000-01-27 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17240 * event-msw.c (mswindows_enqueue_misc_user_event): Initialize
17243 2000-01-26 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17245 * event-msw.c (mswindows_drain_windows_queue): Added the
17247 (mswindows_need_event): Commented the call to
17248 mswindows_drain_windows_queue().
17249 (emacs_mswindows_quit_p): Lookup the windows for keyboard messages
17252 * console-msw.h: Moved a few function prototypes here from
17255 * gui-msw.c (mswindows_handle_gui_wm_command): Changed the ID
17256 parameter from unsigned short to unsigned long.
17257 (Fmswindows_shell_execute): Added return value.
17259 2000-01-27 URA Hiroshi <ura@hiru.aoba.yokohama.jp>
17261 * sysdep.c (init_system_name):
17262 process-unix.c (unix_canonicalized_host_name):
17263 Don't call freeaddrinfo() if getaddrinfo() fails.
17265 * process-unix.c (unix_open_unix_network_stream):
17266 Moved the code to get a port # into address loop.
17268 2000-01-27 Martin Buchholz <martin@xemacs.org>
17270 * buffer.c (reinit_vars_of_buffer):
17271 The right place to initialize conversion_in_dynarr and
17272 conversion_out_dynarr.
17274 * alloc.c (pdump): Use the real open() till sys_open() is functional.
17276 * process-unix.c (unix_canonicalize_host_name): Muleize.
17277 (unix_open_network_stream): Muleize.
17279 * buffer.h: Fix up prototypes for ralloc.c functions.
17281 2000-01-27 URA Hiroshi <ura@hiru.aoba.yokohama.jp>
17282 * config.h.in: added HAVE_GETADDRINFO and HAVE_GETNAMEINFO
17283 * sysdep.c: In init_system_name(), add code to use getaddrinfo()
17284 instead of gethostbyname()
17285 * process-unix.c: In unix_canonicalize_host_name() and
17286 unix_open_network_stream(), add code to use getaddrinfo()
17287 instead of gethostbyname().
17289 2000-01-27 Daniel Pittman <daniel@danann.net>
17291 * device-x.c (x_init_device): Warn at run-time if using Athena 3d
17292 libs when built with flat Athena.
17294 2000-01-27 Martin Buchholz <martin@xemacs.org>
17296 * ralloc.c: Replace SIZE (conflicts with Windows headers) with size_t.
17297 Use coding standards for function prototypes.
17299 2000-01-25 Martin Buchholz <martin@xemacs.org>
17301 * dialog-msw.c (push_lisp_string_as_unicode):
17302 * doc.c (unparesseuxify_doc_string):
17303 * dired.c (Fuser_name_completion_1):
17304 * dired.c (Fuser_name_all_completions):
17305 * dired.c (free_user_cache):
17306 * dired.c (user_name_completion):
17307 * console-x.c (get_display_arg_connection):
17308 * minibuf.c (clear_echo_area_internal):
17309 * minibuf.c (echo_area_append):
17310 * eldap.c (Fldap_open):
17311 * eldap.c (Fldap_search_internal):
17312 * frame-x.c (x_set_frame_text_value):
17313 * frame-x.c (x_set_frame_properties):
17314 * frame-x.c (x_create_widgets):
17315 * redisplay-tty.c (term_get_fkeys_1):
17316 * objects-x.c (x_parse_nearest_color):
17317 * objects-x.c (x_valid_color_name_p):
17318 * objects-x.c (x_initialize_font_instance):
17319 * objects-x.c (x_list_fonts):
17320 * objects-x.c (x_find_charset_font):
17321 * tooltalk.c (Fadd_tooltalk_message_arg):
17322 * tooltalk.c (Fadd_tooltalk_pattern_attribute):
17323 * tooltalk.c (Fadd_tooltalk_pattern_arg):
17324 * process-unix.c (unix_create_process):
17325 * ntproc.c (sys_spawnve):
17326 * sound.c (Fplay_sound_file):
17327 * sound.c (Fplay_sound):
17328 * buffer.c (init_initial_directory):
17329 * buffer.c (init_buffer):
17330 * editfns.c (init_editfns):
17331 * editfns.c (Ftemp_directory):
17332 * editfns.c (Fuser_full_name):
17333 * editfns.c (uncache_home_directory):
17334 * editfns.c (get_home_directory):
17335 * editfns.c (Fuser_home_directory):
17336 * editfns.c (Fformat_time_string):
17337 * editfns.c (Fcurrent_time_string):
17338 * gui-x.c (button_item_to_widget_value):
17339 * database.c (Fopen_database):
17340 * event-Xt.c (x_to_emacs_keysym):
17341 * event-Xt.c (x_event_to_emacs_event):
17342 * event-Xt.c (describe_event_window):
17343 * event-msw.c (mswindows_wnd_proc):
17344 * glyphs-eimage.c (jpeg_instantiate):
17345 * glyphs-eimage.c (gif_instantiate):
17346 * glyphs-eimage.c (png_instantiate):
17347 * glyphs-eimage.c (tiff_instantiate):
17348 * glyphs-x.c (xbm_instantiate_1):
17349 * glyphs-x.c (x_xbm_instantiate):
17350 * glyphs-x.c (x_xface_instantiate):
17351 * glyphs-x.c (autodetect_instantiate):
17352 * glyphs-x.c (cursor_font_instantiate):
17353 * glyphs-x.c (x_widget_instantiate):
17354 * glyphs-x.c (x_widget_set_property):
17355 * glyphs-x.c (x_widget_property):
17356 * glyphs-x.c (BUILD_GLYPH_INST):
17357 * print.c (write_string_to_stdio_stream):
17358 * print.c (output_string):
17359 * print.c (Falternate_debugging_output):
17360 * print.c (Fexternal_debugging_output):
17361 * glyphs-msw.c (extract_xpm_color_names):
17362 * glyphs-msw.c (mswindows_xpm_instantiate):
17363 * glyphs-msw.c (bmp_instantiate):
17364 * glyphs-msw.c (resource_name_to_resource):
17365 * glyphs-msw.c (mswindows_resource_instantiate):
17366 * glyphs-msw.c (xbm_instantiate_1):
17367 * glyphs-msw.c (mswindows_xbm_instantiate):
17368 * glyphs-msw.c (mswindows_xface_instantiate):
17369 * glyphs-msw.c (mswindows_widget_instantiate):
17370 * glyphs-msw.c (add_tree_item):
17371 * glyphs-msw.c (add_tab_item):
17372 * glyphs-msw.c (mswindows_combo_box_instantiate):
17373 * glyphs-msw.c (mswindows_widget_property):
17374 * glyphs-msw.c (mswindows_combo_box_property):
17375 * glyphs-msw.c (mswindows_widget_set_property):
17376 * console.c (stuff_buffered_input):
17377 * objects-msw.c (mswindows_initialize_color_instance):
17378 * objects-msw.c (mswindows_valid_color_name_p):
17379 * objects-msw.c (mswindows_list_fonts):
17380 * objects-msw.c (mswindows_font_instance_truename):
17381 * bytecode.c (optimize_compiled_function):
17382 * select-x.c (symbol_to_x_atom):
17383 * select-x.c (x_atom_to_symbol):
17384 * select-x.c (hack_motif_clipboard_selection):
17385 * select-x.c (selection_data_to_lisp_data):
17386 * select-x.c (lisp_data_to_selection_data):
17387 * select-x.c (Fx_get_cutbuffer_internal):
17388 * select-x.c (Fx_store_cutbuffer_internal):
17389 * buffer.h (TO_EXTERNAL_FORMAT): New function.
17390 * buffer.h (TO_INTERNAL_FORMAT): New function.
17391 * emacs.c (make_arg_list_1):
17392 * emacs.c (make_argc_argv):
17393 * emacs.c (main_1):
17394 * emacs.c (Fdump_emacs):
17395 * emacs.c (split_string_by_emchar_1):
17400 * device-x.c (x_init_device):
17401 * device-x.c (Fx_valid_keysym_name_p):
17402 * device-x.c (Fx_get_font_path):
17403 * device-x.c (Fx_set_font_path):
17404 * glyphs.c (bitmap_to_lisp_data):
17405 * glyphs.c (pixmap_to_lisp_data):
17406 * alloc.c (make_ext_string): Use coding system arguments. Update
17408 * alloc.c (build_string):
17409 * callproc.c (child_setup):
17410 * callproc.c (init_callproc):
17411 * fileio.c (lisp_strerror):
17412 * fileio.c (directory_file_name):
17413 * fileio.c (Fexpand_file_name):
17414 * fileio.c (Ffile_truename):
17415 * fileio.c (Fsysnetunam):
17416 * fileio.c (Fdo_auto_save):
17417 * sysdep.c (sys_readdir):
17418 * tests.c: New file. Allow adding C tests.
17419 Replace GET_* macros with a more comprehensible and flexible
17420 interface, TO_INTERNAL_FORMAT() and TO_EXTERNAL_FORMAT().
17422 Any coding system can be used to do format conversion.
17423 Eliminate enum external_data_format.
17424 Eliminate convert_to_external_format.
17425 Eliminate convert_to_internal_format.
17426 Make sure file-name, keyboard, terminal, and ctext are always
17427 defined as coding systems or aliases. Make
17428 file-name-coding-system, terminal-coding-system, and
17429 keyboard-coding-system magical variables that are equivalent to
17430 defining the corresponding coding system aliases.
17432 * file-coding.c (Fcoding_system_canonical_name_p): New function.
17433 * file-coding.c (Fcoding_system_alias_p): New function.
17434 * file-coding.c (Fcoding_system_aliasee): New function.
17435 * file-coding.c (append_suffix_to_symbol): New function.
17436 * file-coding.c (dangling_coding_system_alias_p): New function.
17437 * file-coding.c (Ffind_coding_system):
17438 * file-coding.c (Fcopy_coding_system):
17439 * file-coding.c (encode_coding_no_conversion):
17440 * file-coding.c (syms_of_file_coding):
17441 * file-coding.c (vars_of_file_coding):
17442 Rewrite coding system alias code.
17443 Allow nested aliases, like symbolic links.
17444 Allow redefinition of coding system aliases.
17445 Prevent existence of dangling coding system aliases.
17447 * dired.c (Fuser_name_completion_1):
17448 * dired.c (Fuser_name_all_completions):
17449 A crash would happen if user did QUIT in the middle of building
17450 user_name_cache. Remove redundant code in mainline and unwind_protect.
17453 * dynarr.c (Dynarr_min_size): Make static. Increase value to 8.
17455 * lstream.c (make_fixed_buffer_input_stream): Take a void *, not
17456 an unsigned char *. Update all callers.
17458 2000-01-26 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17460 * callproc.c (Fcall_process_internal): Ignore Vbinary-process_output.
17462 2000-01-25 Martin Buchholz <martin@xemacs.org>
17464 * elhash.c (hentry_description): Use more portable definition.
17465 (resize_hash_table): Initialize new hentries using
17466 xnew_array_and_zero, thereby simplifying the code.
17468 * mule-charset.c (make_charset): Make sure entire object is
17469 initialized, to avoid Purify warnings.
17471 * alloc.c (resize_string): Fix unlikely crash with big strings.
17473 2000-01-24 Martin Buchholz <martin@xemacs.org>
17475 * realpath.c (xrealpath):
17476 Don't call getwd().
17478 2000-01-25 Martin Buchholz <martin@xemacs.org>
17480 * lread.c (read_bit_vector): Fix memory leak reading literal bit vectors.
17482 1999-12-28 Max Matveev <max@melbourne.sgi.com>
17484 * unexelfsgi.c (unexec): Change the way we decide which segment
17485 should be extended.
17487 Assumption that .bss section should be outside the PT_LOADable
17488 segment. On IRIX with version 6.2 and above, .bss (or .sbss, if
17489 it's present) is inside the 'data' segment. This would fail the
17490 test which was used to find a segment to grow and cover new
17491 heap. Instead of this assumption, I created another one - on IRIX
17492 the segment to grow should start below .bss and it's address
17493 should extent above the end of .bss. Once this segment is
17494 identified, it's grown to accommodate the new heap and new
17495 zero-length .bss section is added at the end of .data2.
17497 2000-01-25 Martin Buchholz <martin@xemacs.org>
17499 * eval.c (Feval): Wrong number of arguments should use original
17500 function, not the indirect_function version of it.
17502 2000-01-24 Yoshiki Hayashi <yoshiki@xemacs.org>
17504 * glyphs-x.c (x_button_instantiate): Don't add image if
17505 it is not a pixmap.
17506 (x_locate_pixmap_file): Call Fexpand_file_name when file name
17509 2000-01-21 Yoshiki Hayashi <yoshiki@xemacs.org>
17511 * symeval.h (DEFVAR_LISP_MAGIC): Remove semicolon after macro
17513 (DEFVAR_INT_MAGIC): Ditto.
17514 (DEFVAR_BOOL_MAGIC): Ditto.
17515 * glyphs.h: Reindent backslash.
17517 2000-01-24 Martin Buchholz <martin@xemacs.org>
17519 * glyphs-widget.c (layout_query_geometry):
17520 (layout_layout): Use correct types for gheight, gwidth.
17522 2000-01-24 Martin Buchholz <martin@xemacs.org>
17524 * EmacsManager.c (QueryGeometry): Purified.
17526 2000-01-23 Martin Buchholz <martin@xemacs.org>
17528 * alloc.c (make_float): Make sure entire object is initialized, to
17529 avoid Purify warnings.
17530 (pdump_register_sub): Remove useless assignment.
17531 (pdump): Use xmalloc, not malloc.
17532 (pdump_load): Use xmalloc, not malloc.
17534 2000-01-23 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17541 * sysdep.c: Removed redundant #include <windows.h>
17543 2000-01-22 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17545 * frame.c (delete_frame_internal): Do not delete device when its
17546 implementation so declares.
17547 (delete_frame_internal): Set device selected frame to nil when
17548 last frame goes away.
17550 * device-msw.c (msprinter_device_system_metrics): Implemented.
17551 (mswindows_device_system_metrics): Added 'device-dpi property.
17553 * device.c: (Fdevice_printer_p): Added.
17554 Added 'offset-workspace device metric.
17556 * console.h (device_metrics): Declared DM_offset_workspace.
17558 2000-01-23 Martin Buchholz <martin@xemacs.org>
17560 * fileio.c (Ffile_truename): Remove pointless and confusing
17561 initialization of elen.
17563 * glyphs-widget.c: Compiler warning fixes.
17565 2000-01-23 Gunnar Evermann <ge204@eng.cam.ac.uk>
17567 * process.h (PROCESS_LIVE_P): Modify to take a Lisp_Process
17568 instead of a Lisp_Object as argument to make it consistent with
17569 the other LIVE_P macros.
17570 (CHECK_LIVE_PROCESS): New macro.
17572 * process.c: Declare Qprocess_live_p.
17573 (Fprocess_live_p): New function.
17574 (create_process): Use PROCESS_LIVE_P.
17575 (read_process_output): Ditto.
17576 (set_process_filter): Ditto.
17577 (Fdelete_process): Ditto.
17578 (kill_buffer_processes): Ditto
17579 (process_send_signal): Use CHECK_LIVE_PROCESS.
17580 (Fprocess_input_coding_system): Check whether process is still
17581 alive (fix PR#1061).
17582 (Fprocess_output_coding_system): Ditto.
17583 (Fprocess_coding_system): Ditto.
17584 (Fset_process_input_coding_system): Ditto.
17585 (Fset_process_output_coding_system): Ditto.
17587 2000-01-23 Andy Piper <andy@xemacs.org>
17589 * glyphs.h (struct Lisp_Image_Instance): change format by unifying
17592 * glyphs.c (mark_image_instance): take into account changed
17593 image_instance format.
17594 (image_instance_equal): ditto.
17595 (image_instance_hash): ditto.
17597 * glyphs-widget.c (widget_instantiate): Incorporate layout
17598 instantiation here. Delay layout of the layout until later.
17599 (layout_instantiate): deleted.
17600 (layout_query_geometry): new function. get the geometry of a
17602 (layout_layout): layout a layout dynamically.
17603 (image_instantiator_widget): New function - splitting up
17604 image_instantiator_format_create_glyphs_widget for netwinder
17606 (image_instantiator_buttons):
17607 (image_instantiator_edit_fields):
17608 (image_instantiator_combo_box):
17609 (image_instantiator_scrollbar):
17610 (image_instantiator_progress_guage):
17611 (image_instantiator_tree_view):
17612 (image_instantiator_tab_control):
17613 (image_instantiator_labels):
17614 (image_instantiator_layout): ditto.
17615 (image_instantiator_format_create_glyphs_widget): Call preceding
17618 2000-01-22 Martin Buchholz <martin@xemacs.org>
17620 * process.c (Fset_process_coding_system):
17621 * device-x.c (Fx_keysym_hash_table):
17624 * lstream.c (Lstream_write): Return documented value, not 0.
17626 * fileio.c (directory_file_name):
17627 (Fsubstitute_in_file_name):
17628 (Fsubstitute_insert_file_contents_internal):
17629 (Fwrite_region_internal):
17634 Remove vestigial APOLLO-conditional code.
17636 2000-01-21 Martin Buchholz <martin@xemacs.org>
17638 * getpagesize.h: Add guard macros.
17639 * libsst.h: Add guard macros.
17640 * libst.h: Add guard macros.
17641 * line-number.h: Add guard macros.
17642 * ndir.h: Add guard macros.
17643 * sysfloat.h: Add guard macros.
17644 * sysfile.h: Add guard macros.
17645 * sysproc.h: Add guard macros.
17646 * syswait.h: Add guard macros.
17647 * xintrinsic.h: Add guard macros.
17648 * xintrinsicp.h: Add guard macros.
17649 * xmmanager.h: Add guard macros.
17650 * xmmanagerp.h: Add guard macros.
17651 * xmprimitive.h: Add guard macros.
17652 * xmu.h: Add guard macros.
17653 * gpmevent.h: Add copyright statement. Add guard macros.
17654 * miscplay.h: Add guard macros.
17655 * *.h: Use consistent C-standards-approved guard macro names.
17657 * opaque.c (make_opaque): Switch parameter order.
17658 * opaque.h (make_opaque): Switch parameter order.
17659 Update all callers.
17660 * buffer.h (MAKE_MIRROR_TRT_TABLE): Use symbolic constant OPAQUE_CLEAR.
17662 * config.h.in (type_checking_assert): Added.
17663 (bufpos_checking_assert): Added.
17665 2000-01-21 Martin Buchholz <martin@xemacs.org>
17667 * alloc.c: Harmless pdump changes.
17669 - spell alignment correctly.
17670 * sysdep.c: Use countof()
17672 2000-01-20 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17674 * console.c (create_console): Use CONMETH_OR_GIVEN when calling
17675 initially_selected_for_input() console method, default to 0.
17676 (semi_canonicalize_console_connection): Try to delegate to
17677 canonicalize_console_connection if no such console method.
17678 (canonicalize_console_connection): Vice versa.
17679 (print_console): Do not print nil connection.
17681 * console.h (XDEVIMPF_IS_A_PRINTER): Added.
17682 (XDEVIMPF_NO_AUTO_REDISPLAY): Added.
17683 (XDEVIMPF_FRAMELESS_OK): Added.
17684 (CONSOLE_INHERITS_METHOD): Added.
17686 * console-msw.c (mswindows_canonicalize_console_connection):
17688 (mswindows_canonicalize_device_connection): Added.
17690 * console-msw.h (struct msprinter_device): Added this struct and
17692 (mswindows_device): Made fontlist a lisp object.
17694 * device.c (semi_canonicalize_device_connection): Try to delegate
17695 to canonicalize_device_connection if no such console method.
17696 (canonicalize_device_connection): Vice versa.
17697 (print_device): Do not print nil connection.
17699 * device-msw.c (mswindows_init_device): Call InitCommonControls
17701 (mswindows_delete_device): Removed fontlist deallocation.
17702 (mswindows_mark_device): Added.
17704 * events.c (event_equal): Added abort() at unreached code.
17705 (event_hash): Ditto.
17707 * faces.c (complex_vars_of_faces): Added Qmsprinter to the list of
17708 fallback tags of Windows devices.
17710 * general.c (syms_of_general): Initialized Qmsprinter.
17712 * gutter.c (complex_vars_of_gutters): Added Qmsprinter to the list
17713 of fallback tags of Windows devices.
17715 * lisp.h: Declared Qmsprinter.
17717 * objects-msw.c (font_enum_callback_2): Rewrote to build lisp list
17719 (mswindows_list_fonts): Ditto.
17720 (mswindows_enumerate_fonts): Removed dependency on XDEVICE, so
17721 that it can be used by both mswindows and msprinter devices.
17722 (initialize_font_instance): Added.
17723 (mswindows_initialize_font_instance): Use it.
17724 (msprinter_initialize_font_instance): Added.
17726 * redisplay.c (redisplay_device): Added the parameter AUTOMATIC
17727 and implementation flags check.
17728 (redisplay_without_hooks): Changed the call to the above.
17729 (Fredraw_device): Ditto.
17730 (Fredisplay_device): Ditto.
17732 * redisplay-msw.c (get_frame_dc): Implemented.
17733 (get_frame_compdc): Implemented.
17734 (many functions): Use the two functions above to get device
17735 contexts, ether for a window or a printer.
17737 2000-01-21 Olivier Galibert <galibert@pobox.com>
17739 * symbols.c (reinit_symbols_once_early): Put Qzero/Qnull_pointer
17740 initialization here.
17741 (init_symbols_once_early): Call it.
17742 * emacs.c (main_1): Call it.
17743 * symsinit.h: Declare it.
17745 2000-01-19 Olivier Galibert <galibert@pobox.com>
17747 * alloc.c: Use a lrecord_header * in the backtrace instead of a
17749 (pdump_backtrace): Ditto.
17750 (pdump_register_object): Ditto. Cleanup use of the pointers.
17751 (pdump_get_entry): Abort if trying to register a null pointer.
17752 (pdump_dump_data): Cleanup types when relocating.
17753 (pdump_dump_staticvec): Cleanup types w.r.t the reloc table.
17754 (pdump_dump_rtables): Remove bad casts.
17755 (pdump_load): Cleanup relocation w.r.t union type. Use a
17756 Lisp_Object instead of a EMACS_INT for the hashtable
17759 2000-01-20 Martin Buchholz <martin@xemacs.org>
17761 * emacs.c (main_1): Rearrange morass of #ifdef's for correctness.
17763 * callproc.c (call_process_cleanup): Isolate WINDOWSNT code for clarity.
17765 * EmacsManager.c (GeometryManager): Avoid use of CPP for clarity.
17767 * *.[ch]: global-replace 's/_of_xselect/_of_select_x/g' *.[ch]
17769 2000-01-17 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17771 * faces.h (FACE_STRIKETHRU_P): Added.
17773 * glyphs-msw.c (mswindows_widget_hfont): Implemented, to take care
17776 * redisplay-msw.c (mswindows_apply_face_effects): Deleted.
17777 (mswindows_set_dc_font): New function, aware of font variants,
17778 separated from mswindows_update_dc.
17780 * objects-msw.h (struct mswindows_font_instance_data): Added
17783 * objects-msw.c (mswindows_finalize_font_instance): Delete all
17784 cached fonts and the data structure.
17785 (mswindows_initialize_font_instance): Added creation of font data
17787 (mswindows_print_font_instance): Print at least something.
17788 (mswindows_create_font_variant): Implemented.
17789 (mswindows_get_hfont): Implemented.
17791 2000-01-13 Fabrice Popineau <Fabrice.Popineau@supelec.fr>
17793 * dired-msw.c: permute "sysdir.h" with "sysfile.h" because of
17794 prototyping problem with msvc.
17796 * emacs.c (main_1): added syms_of_gui_mswindows() call
17798 * gui-msw.c: added "mswindows-shell-execute" lisp subr and
17799 syms_of_gui_mswindows() function
17801 * symsinit.h: added the prototype for syms_of_gui_mswindows()
17803 2000-01-18 Martin Buchholz <martin@xemacs.org>
17805 * XEmacs 21.2.27 is released.
17807 2000-01-18 Martin Buchholz <martin@xemacs.org>
17809 * glyphs-eimage.c (struct tiff_error_struct):
17811 (tiff_warning_func):
17812 #if HAVE_VSNPRINTF ==> #ifdef HAVE_VSNPRINTF
17817 * unexec.c: Remove vestigial Lucid C code.
17821 * libsst.c: Ansify.
17822 Remove declarations of errno and strerror().
17824 * eval.c (Fbacktrace): Small Purify-cation. Fix docstring.
17826 * .dbxrc (run-temacs): Use the horrible ${1+"$@"} instead of "$@".
17828 2000-01-16 Martin Buchholz <martin@xemacs.org>
17830 * mule-charset.c (Fchar_octet): Resurrect from earlier in 1999.
17833 2000-01-14 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
17838 Change enum eol_type to eol_type_t.
17840 2000-01-17 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
17842 * gui.c (get_gui_callback): Check cons before accessing car.
17844 2000-01-17 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
17846 * specifier.h (XSPECIFIER_TYPE): Add error checking version.
17847 (XSETSPECIFIER_TYPE): Ditto.
17849 2000-01-17 Didier Verna <didier@xemacs.org>
17851 * redisplay.c (generate_fstring_runes): compute string size in
17852 characters, not bytes.
17854 2000-01-09 Hrvoje Niksic <hniksic@iskon.hr>
17856 * window.c (Fwindow_minibuffer_p): Make WINDOW optional.
17858 2000-01-14 Hrvoje Niksic <hniksic@iskon.hr>
17860 * print.c (print_error_message): Call print_prepare().
17862 2000-01-14 Martin Buchholz <martin@xemacs.org>
17864 * .dbxrc: Renamed from dbxrc.
17866 * events.c (event_to_character):
17867 Use `assert (foo)' instead of `if (!foo) abort()'
17869 * .gdbinit (xtype): Add documentation.
17870 * .gdbinit (check-temacs): New function.
17871 * .gdbinit (check-xemacs): New function.
17872 * dbxrc (check-xemacs): New function.
17873 * dbxrc (check-xemacs): New function.
17875 2000-01-14 Andy Piper <andy@xemacs.org>
17877 * glyphs-widget.c (widget_query_geometry): Make sure that we
17878 calculate default dimensions correctly.
17880 2000-01-13 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17882 * symsinit.h: Added prototype for reinit_vars_of_frame_mswindows.
17884 * event-msw.c (vars_of_event_mswindows): Fixed a mistyped
17885 pdump_wire'd variable.
17887 * emacs.c: (main_1): Conditionalized calls to
17888 reinit_vars_of_scrollbar_x and reinit_vars_of_module.
17890 2000-01-13 Martin Buchholz <martin@xemacs.org>
17892 * window.c (Fset_window_configuration):
17893 * sysdep.c (_start):
17894 * input-method-motif.c (res):
17895 * event-Xt.c (Xt_process_to_emacs_event):
17896 Simple compiler warning fixes.
17898 * bytecode.c (funcall_compiled_function): Use the original
17899 function symbol on the backtrace list in preference to the
17900 compiled_function object in error messages.
17902 2000-01-13 Andy Piper <andy@xemacs.org>
17904 * glyphs-x.c (update_widget_face): Make sure we update the widget
17905 background as well as foreground.
17907 2000-01-13 Andy Piper <andy@xemacs.org>
17909 * glyphs.h (struct Lisp_Image_Instance): Move justify and orient
17910 fields to subwindow.
17911 (IMAGE_INSTANCE_SUBWINDOW_JUSTIFY): new macro.
17912 (XIMAGE_INSTANCE_SUBWINDOW_JUSTIFY): ditto.
17913 (IMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
17914 (XIMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
17916 * glyphs-widget.c (check_valid_tab_orientation): new function.
17917 (initialize_widget_image_instance): zero orientation and
17919 (widget_instantiate): pick up orientation.
17920 (tab_control_query_geometry): return appropriate values for
17923 * glyphs-msw.c: (mswindows_tab_control_instantiate): assign
17924 appropriate creation flags for left, right and bottom tabs.
17926 * s/cygwin32.h: add tab definitions.
17928 2000-01-12 Kirill 'Big K' Katsnelson <kkm@dtmx.com>
17930 * glyphs-msw.c (mswindows_unmap_subwindow): Set focus back to the
17931 frame upon hiding a subwindow.
17932 (mswindows_button_instantiate): Changed the push button style to
17934 (mswindows_button_instantiate): Removed button BS_NOTIFY
17936 (mswindows_button_instantiate): Removed redundant check for
17937 a disabled gui item.
17938 (mswindows_button_instantiate): Made use of WS_TABSTOP
17939 consistent: "operable" controls (edit, button, tree, scroll) have
17940 this style, "display-only" ones (static, progress gauge) do
17941 not. This style is currently ignored by XEmacs though. Also,
17942 removed the WS_EX_CONTROLPARENT style - it is not for children,
17943 it is for their parents!
17944 (mswindows_edit_field_instantiate): Ditto.
17945 (mswindows_progress_gauge_instantiate): Ditto.
17946 (mswindows_tree_view_instantiate): Ditto.
17947 (mswindows_tab_control_instantiate): Ditto.
17948 (mswindows_scrollbar_instantiate): Ditto.
17949 (mswindows_combo_box_instantiate): Ditto.
17950 (mswindows_widget_instantiate): Added the WS_EX_CONTROLPARENT
17951 style to the "clip" window.
17952 (mswindows_button_instantiate): Removed compilation warning by
17953 equally typing terms of the ?: operator.
17955 2000-01-12 Didier Verna <didier@xemacs.org>
17957 * redisplay.c (generate_fstring_runes): new parameter holding the
17958 last modeline-format extent.
17959 (add_glyph_to_fstring_db_runes): new parameter holding the glyph
17960 extent, fill the glyph block with it.
17961 (generate_fstring_runes): handle these parameters.
17962 (generate_formatted_string_db): ditto.
17964 * keymap.c (get_relevant_keymaps): retreive the keymaps from the
17965 glyphs'extents in the modeline.
17967 1999-01-11 Mike Woolley <mike@bulsara.com>
17969 * ntheap.c: Reduced the reserved heap space from 1Gb down to
17970 256Mb, as a workaround for the non-starting problem many people
17973 2000-01-06 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
17975 * console-tty.c (Fset_console_tty_output_coding_system):
17976 Force redrawing tty frame.
17978 2000-01-10 Didier Verna <didier@xemacs.org>
17980 * redisplay.c (generate_fstring_runes): fix size computation bug.
17982 2000-01-09 William M. Perry <wmperry@aventail.com>
17984 * gpmevent.c: (gpm_next_event_cb): Don't return value from void function.
17986 2000-01-09 Andy Piper <andy@xemacs.org>
17988 * glyphs-msw.c: index -> i to avoid shadows.
17989 (xbm_create_bitmap_from_data): make static.
17990 (check_valid_string_or_int): deleted.
17991 (mswindows_control_wnd_proc): message -> msg to avoid shadows.
17993 * glyphs-x.c (x_update_subwindow): remove unused args.
17995 * glyphs.c (glyph_image_instance): return the thing. Don't set the
17996 back pointer - this is done in allocate_image_instance.
17997 (query_string_font): return Qnil to make the compiler happy.
17998 (unmap_subwindow): set to ~0 to make the compiler happy.
17999 (glyph_query_geometry): comment out until used.
18000 (glyph_layout): ditto.
18002 2000-01-09 Hrvoje Niksic <hniksic@iskon.hr>
18004 * insdel.c (signal_after_change): Remove extraneous unbind_to().