Commit | Line | Data |
---|---|---|
6288c62f GM |
1 | 2000-08-27 Gerd Moellmann <gerd@gnu.org> |
2 | ||
3 | * xfaces.c (lface_fully_specified_p): Handle :inherit. | |
4 | (Finternal_set_lisp_face_attribute): Fix typo in error message. | |
5 | ||
e931344e EZ |
6 | 2000-08-27 Eli Zaretskii <eliz@is.elta.co.il> |
7 | ||
8 | * Makefile.in (dispnew.o, indent.o, fontset.o, minibuf.o) | |
9 | (process.o, scroll.o, sysdep.o): Depend on keyboard.h. | |
10 | (xterm.o): Depend on coding.h | |
11 | ||
d10dfeef KH |
12 | 2000-08-26 Kenichi Handa <handa@etl.go.jp> |
13 | ||
14 | * cmds.c (internal_self_insert): Delete '#ifdef HAVE_FACES' and | |
15 | the corresponding '#endif'. | |
16 | ||
2d73e8d3 MB |
17 | 2000-08-26 Miles Bader <miles@gnu.org> |
18 | ||
19 | * dispextern.h (enum lface_attribute_index): Add LFACE_INHERIT_INDEX. | |
20 | * xfaces.c (QCinherit): New variable. | |
21 | (syms_of_xfaces): Initialize it. | |
22 | (LFACE_INHERIT): New macro. | |
23 | (Finternal_get_lisp_face_attribute) | |
24 | (merge_face_vector_with_property) | |
25 | (Finternal_set_lisp_face_attribute): Deal with :inherit attribute. | |
26 | (check_lface_attrs): Allow new types of face height. Check | |
27 | inherit attribute. | |
28 | (CYCLE_CHECK): New macro. | |
29 | (merge_face_inheritance): New function. | |
30 | (merge_face_vectors): Merge inherited faces too. Add F and | |
31 | CYCLE_CHECK arguments. | |
32 | (merge_face_vector_with_property, Finternal_merge_in_global_face) | |
33 | (lookup_named_face, lookup_derived_face, realize_named_face) | |
34 | (face_at_string_position, face_at_buffer_position): Supply | |
35 | new F and CYCLE_CHECK arguments to merge_face_vectors. | |
36 | (merge_face_heights): New function. | |
37 | (merge_face_vectors, merge_face_vector_with_property) | |
38 | (Finternal_set_lisp_face_attribute): Call merge_face_heights to | |
39 | handle relative face heights. | |
40 | (lface_same_font_attributes_p): Compare heights using EQ. | |
41 | ||
6ce974d4 KH |
42 | 2000-08-26 Kenichi Handa <handa@etl.go.jp> |
43 | ||
44 | * charset.c (char_to_string): Check the character validity. | |
45 | (char_valid_p): If C is not less than MAX_CHAR, be sure to return | |
46 | 0. | |
47 | ||
dc1e502d SM |
48 | 2000-08-25 Stefan Monnier <monnier@cs.yale.edu> |
49 | ||
50 | * regex.c (PUSH_FAILURE_COUNT): New macro. | |
51 | (POP_FAILURE_REG_OR_COUNT): Renamed from POP_FAILURE_REG. | |
52 | Handle popping of a register's or a counter's data. | |
53 | (POP_FAILURE_POINT): Use the new name. | |
54 | (re_match_2_internal): Push counter data on the stack for succeed_n, | |
55 | jump_n and set_number_at and remove misleading dead code in succeed_n. | |
56 | ||
bd9d0f3f GM |
57 | 2000-08-25 Gerd Moellmann <gerd@gnu.org> |
58 | ||
59 | * xdisp.c (redisplay_internal): If considering all windows on all | |
60 | frames, update the display for each frame as soon as possible, | |
61 | instead of first building all desired matrices for all frames, and | |
62 | then updating them all. | |
63 | (try_cursor_movement): Handle case that last_cursor.vpos is -1. | |
64 | ||
aa5b8e15 GM |
65 | 2000-08-24 Gerd Moellmann <gerd@gnu.org> |
66 | ||
17494071 GM |
67 | * bytecode.c (mark_byte_stack): Add a comment. |
68 | ||
aa5b8e15 GM |
69 | * frame.h (FRAME_FLAGS_AREA_COLS, FRAME_FLAGS_AREA_WIDTH) |
70 | (FRAME_LEFT_FLAGS_AREA_WIDTH): Return 0 unless frame is | |
71 | a graphical frame. | |
72 | ||
c543db81 KH |
73 | 2000-08-24 Kenichi Handa <handa@etl.go.jp> |
74 | ||
d246d5f5 KH |
75 | * minibuf.c (do_completion): Always use compare-string, not |
76 | string-equal because the latter doesn't pay attention to | |
77 | multibyteness of strings. | |
78 | ||
c543db81 KH |
79 | * process.c (create_process): Don't setup raw-text coding here. |
80 | (Fopen_network_stream): Don't set coding->src_multibyte and | |
81 | coding->dst_multibyte here. | |
82 | (read_process_output): For process filter, return unibyte string | |
83 | if default-enable-multibyte-characters is nil. | |
84 | (send_process): If OBJECT is multibyte text, be sure to encoded it | |
85 | by the specified coding system for the process. Otherwise, setup | |
86 | raw-text coding. | |
87 | (init_process): Don't initialize default-process-coding-system | |
88 | here. | |
89 | ||
9b47cfe0 EZ |
90 | 2000-08-23 Eli Zaretskii <eliz@is.elta.co.il> |
91 | ||
92 | * buffer.c (syms_of_buffer) <scroll-up-aggressively>: Doc fix. | |
93 | <scroll-down-aggressively>: Likewise. | |
94 | ||
f5a36960 KH |
95 | 2000-08-23 Kenichi Handa <handa@etl.go.jp> |
96 | ||
97 | * coding.c (encode_eol): Fix bug for the case of dst_bytes being | |
98 | zero. Set coding->produced_char correctly. | |
99 | ||
69a7ffa7 AI |
100 | 2000-08-22 Andrew Innes <andrewi@gnu.org> |
101 | ||
102 | * makefile.w32-in: New file. | |
103 | ||
104 | * unexw32.c (unexec): Ignore old_name, and use the actual location | |
105 | of the current executable instead. Base new_name on this. | |
106 | ||
107 | * w32proc.c (create_child): Remove reference to security | |
108 | descriptor, which isn't needed and doesn't compile with mingw32. | |
109 | ||
110 | * w32term.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
111 | up dllimport attributes. | |
112 | (x_update_window_end): Update prototype. | |
113 | ||
114 | * unexec.c (write_segment) [USE_CRT_DLL]: Remove unnecessary | |
115 | extern, which screws up dllimport attributes. | |
116 | ||
117 | * sysdep.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
118 | up dllimport attributes. | |
119 | ||
120 | * strftime.c [USE_CRT_DLL]: Remove unnecessary extern, which | |
121 | screws up dllimport attributes. | |
122 | ||
123 | * process.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
124 | up dllimport attributes. | |
125 | (create_process) [USE_CRT_DLL]: Remove unnecessary extern, which | |
126 | screws up dllimport attributes. | |
127 | ||
128 | * lread.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
129 | up dllimport attributes. | |
130 | ||
131 | * keyboard.c [USE_CRT_DLL]: Remove unnecessary extern, which | |
132 | screws up dllimport attributes. | |
133 | ||
134 | * floatfns.c [USE_CRT_DLL]: Remove unnecessary extern, which | |
135 | screws up dllimport attributes. | |
136 | ||
137 | * fileio.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
138 | up dllimport attributes. | |
139 | ||
140 | * emacs.c (malloc_initialize_hook) [USE_CRT_DLL]: Remove | |
141 | unnecessary extern, which screws up dllimport attributes. | |
142 | (main): Ditto. | |
143 | ||
144 | * editfns.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
145 | up dllimport attributes. | |
146 | ||
147 | * dispnew.c (window_change_signal) [USE_CRT_DLL]: Remove | |
148 | unnecessary extern, which screws up dllimport attributes. | |
149 | ||
150 | * callproc.c [USE_CRT_DLL]: Remove unnecessary extern, which | |
151 | screws up dllimport attributes. | |
152 | ||
153 | * buffer.c [USE_CRT_DLL]: Remove unnecessary extern, which screws | |
154 | up dllimport attributes. | |
155 | ||
156 | * w32proc.c (IsValidLocale): Extern missing from mingw32 headers. | |
157 | ||
158 | * w32bdf.c (search_file_line): | |
159 | (set_bdf_font_info): | |
160 | (seek_char): | |
161 | (w32_get_bdf_glyph): | |
162 | (w32_BDF_to_x_font): Fix compile warnings. | |
163 | ||
164 | * w32menu.c: Include keyboard.h before frame.h. Fix compile | |
165 | warnings. | |
166 | ||
167 | * w32select.c: Include keyboard.h before frame.h. | |
168 | ||
169 | * w32fns.c (max): Define macro. | |
170 | (JOHAB_CHARSET): Define if not known. | |
171 | (MOD_ALT, MOD_CONTROL, MOD_SHIFT, MOD_WIN): Define if not known. | |
172 | (Fx_show_tip): Synch with X version. | |
173 | ||
174 | * w32xfns.c: Include keyboard.h before frame.h. | |
175 | ||
176 | * w32fns.c: Include keyboard.h before frame.h. | |
177 | ||
178 | * w32term.c: Include keyboard.h before frame.h. | |
179 | ||
180 | * fontset.c: Include keyboard.h before frame.h. | |
181 | ||
182 | * w32inevt.c: Include keyboard.h before frame.h. | |
183 | (MOUSE_MOVED): Define if not known. | |
184 | ||
185 | * minibuf.c: Include keyboard.h before frame.h. | |
186 | ||
187 | * keyboard.c: Include keyboard.h before frame.h. | |
188 | ||
189 | * indent.c: Include keyboard.h before frame.h. | |
190 | ||
191 | * dispnew.c: Include keyboard.h before frame.h. | |
192 | ||
193 | * buffer.c: Include keyboard.h before frame.h. | |
194 | ||
195 | * alloc.c: Include keyboard.h before frame.h. | |
196 | ||
197 | * print.c: Include keyboard.h before frame.h. | |
198 | ||
199 | * process.c: Include keyboard.h before frame.h. | |
200 | ||
201 | * scroll.c: Include keyboard.h before frame.h. | |
202 | ||
203 | * sysdep.c: Include keyboard.h before frame.h. | |
204 | ||
205 | * term.c: Include keyboard.h before frame.h. | |
206 | ||
207 | * window.c: Include keyboard.h before frame.h. | |
208 | ||
209 | * xdisp.c: Include keyboard.h before frame.h. | |
210 | Separate GLYPH_DEBUG and DEBUG_TRACE_MOVE. | |
211 | ||
212 | * frame.c: Include keyboard.h before frame.h. | |
213 | ||
214 | * w32heap.h: Undefine min, max. | |
215 | ||
216 | * w32gui.h: Undefine min, max. | |
217 | ||
218 | * unexw32.c: Change PUCHAR to PCHAR. | |
219 | (PTR_TO_OFFSET): Cast ptr to unsigned char *. | |
220 | (relocate_offset): | |
221 | (get_section_info): | |
222 | (copy_executable_and_dump_data): Remove unnecessary static defs. | |
223 | (copy_executable_and_dump_data): Fix compile warnings. | |
224 | ||
225 | * sysdep.c (NULL) [WINDOWSNT]: Define NULL if not defined. | |
226 | ||
227 | * w32console.c (min): Define macro. | |
228 | (clear_frame, write_glyphs): Fix compile warning. | |
229 | ||
230 | * w32proc.c (compare_env): | |
231 | (find_child_console): Fix compile warning. | |
232 | ||
233 | * w32.c (sys_strerror): Use sys_nerr instead of _sys_nerr. Use | |
234 | sys_errlist instead of _sys_errlist. | |
235 | (get_emacs_configuration_options): New function. | |
236 | ||
237 | * s/ms-w32.h (sys_nerr): Provide default definition. | |
238 | (strdup, strupr, strnicmp, stricmp, tzset, tzname): Map to same | |
239 | name with _ prepended. | |
240 | (NSIG): Define if not known. | |
241 | (get_emacs_configuration): Provide extern declaration. | |
242 | (get_emacs_configuration_options): Provide extern declaration. | |
243 | (EMACS_CONFIG_OPTIONS): Call get_emacs_configuration_options. | |
244 | ||
245 | * w32.c (gettimeofday): Use struct timeb, not struct _timeb. | |
246 | (map_w32_filename): | |
247 | (read_unc_volume): Fix compile warning. | |
248 | ||
249 | * s/ms-w32.h (_WINSOCK_H): Define to prevent normal winsock | |
250 | definitions from being used. | |
251 | ||
252 | * lisp.h [WINDOWSNT]: Don't declare externs for getenv, ctime and getwd. | |
253 | ||
254 | * w32.c (unc_volume_file_attributes): | |
255 | (open_unc_volume): Make arg const. | |
256 | ||
257 | * sysdep.c [WINDOWSNT]: Remove extern decl of errno. | |
258 | (read_input_waiting): Remove excess parameter. | |
259 | ||
260 | * w32.c (init_environment): Call _access. | |
261 | (check_windows_init_file): Call _close. | |
262 | (init_user_info): Call _putenv. | |
263 | (init_environment): Call _putenv and _strdup. | |
264 | (init_ntproc): Reset volume info cache on startup. | |
265 | ||
266 | * s/ms-w32.h (malloc, free, realloc, calloc): Rename if | |
267 | USE_CRT_DLL is defined, so Emacs can use GNU malloc even though it | |
268 | cannot override the CRT malloc. | |
269 | ||
270 | * makefile.nt (LOCAL_FLAGS): Define USE_CRT_DLL if requested. | |
271 | (LINK_FLAGS): Append to original value of LINK_FLAGS. | |
272 | ||
273 | * w32heap.c [!USE_CRT_DLL]: Don't define _heap_init and _heap_term | |
274 | unless we are linking with a static CRT. | |
275 | (RVA_TO_PTR): Cast result to unsigned char*. | |
276 | ||
277 | * w32.c (GetCachedVolumeInformation): Use xmalloc, xfree and xstrdup. | |
278 | (add_volume_info): Use xstrdup. | |
279 | ||
25060080 SM |
280 | 2000-08-22 Stefan Monnier <monnier@cs.yale.edu> |
281 | ||
282 | * minibuf.c (Vcompletion_auto_help): Renamed from `auto_help'. | |
283 | (do_completion, Fminibuffer_complete_word): Use it. | |
284 | (syms_of_minibuf): Turn completion-auto-help into a proper Lisp | |
285 | var so it can take non-boolean values. | |
286 | ||
6917e6bb GM |
287 | 2000-08-21 Gerd Moellmann <gerd@gnu.org> |
288 | ||
acb7cc89 GM |
289 | * editfns.c (find_field): Formatting changes. |
290 | (toplevel): Some old-style function forward declarations | |
291 | changed to prototypes, some new protypes added, some functions | |
292 | made static. | |
293 | ||
294 | * lisp.h (set_time_zone_rule): Add prototype. | |
295 | (use_dialog_box): External declaration. | |
296 | ||
0bbfdc25 GM |
297 | * keyboard.c (gen_help_event): Add parameter SIZE. |
298 | (kbd_buffer_events_waiting): Slightly rewritten. | |
299 | (clear_event): New function. | |
300 | (kbd_buffer_get_event): Use it, and clear the input_events of | |
301 | HELP_EVENTs. | |
302 | (init_keyboard): Remove duplicate creation of kbd_buffer_gcpro and | |
303 | don't fill the newly created array with nils. | |
304 | (toplevel): Convert some old-style function forward declarations | |
305 | to prototypes. | |
306 | ||
307 | * keyboard.h (gen_help_event): Change prototype. | |
308 | ||
309 | * xterm.c (XTread_socket): Change calls to gen_help_event. | |
310 | ||
311 | * w32term.c (w32_read_socket): Change calls to gen_help_event. | |
312 | ||
6917e6bb GM |
313 | * eval.c (Fmacroexpand): Doc fix. |
314 | ||
e5cd3d11 JR |
315 | 2000-08-20 Jason Rumney <jasonr@gnu.org> |
316 | ||
317 | * w32term.h (x_display_info_for_display): Remove as this function | |
318 | does not exist on W32. | |
319 | ||
320 | * w32term.c (help_echo_window): New variable. | |
321 | (syms_of_w32term): staticpro it. | |
322 | (note_mode_line_highlight): Set it. | |
323 | (XTextExtents16): Removed as there is no equivalent on W32. | |
324 | (x_compute_glyph_string_overhangs): Incomplete body removed, as | |
325 | the X way of doing this will not work for W32. | |
326 | (w32_intersect_rectangles): Removed. Use IntersectRect API call. | |
327 | (x_draw_image_foreground): Avoid drawing outside of the clip area | |
328 | when image doesn't have a mask. | |
329 | (note_mouse_highlight): Process overlays in the right order of | |
330 | priority. Set help_echo_window. | |
331 | (x_draw_bar_cursor): If cursor is on an image, draw a box cursor | |
332 | because that's more visible for large images. | |
333 | ||
334 | * w32menu.c (keymap_panes): Pass the keymap's prompt as the pane | |
335 | name to single_keymap_panes. | |
336 | (w32_menu_show): Set wv->title when dealing with titles. | |
337 | (w32_menu_display_help): Call show_help_echo with OBJECT and POS. | |
338 | ||
6e69ab8c MB |
339 | 2000-08-21 Miles Bader <miles@gnu.org> |
340 | ||
341 | * minibuf.c (do_completion): Try again if we rewrite the input | |
342 | string, but no completion was done, so that any completion message | |
343 | will be correct. | |
344 | ||
511bd4eb GM |
345 | 2000-08-20 Gerd Moellmann <gerd@gnu.org> |
346 | ||
347 | * xfaces.c (lface_equal_p): Compare strings differently. | |
348 | (Qtty_color_alist, Vtty_defined_color_alist): New variables. | |
349 | (realize_tty_face): Use them. | |
350 | (syms_of_xfaces): Initialize new variables. | |
351 | (map_tty_color): New function, extracted from realize_tty_face. | |
352 | (map_tty_color) [MSDOS || WINDOWSNT]: If using the frame's default | |
353 | foreground or background color, store the new color name in the | |
354 | realized face; previous code trying to do this had no effect. | |
355 | (realize_tty_face): Use map_tty_color. | |
356 | (Fclear_face_cache): Set face_change_count and ensure thorough | |
357 | redisplay. | |
358 | ||
1433385f GM |
359 | 2000-08-19 Gerd Moellmann <gerd@gnu.org> |
360 | ||
511bd4eb GM |
361 | * undo.c (record_first_change, record_marker_adjustment): Don't |
362 | use XBUFFER on last_undo_buffer which might not be a buffer. | |
1433385f | 363 | |
419ac0a2 KH |
364 | 2000-08-18 Kenichi Handa <handa@etl.go.jp> |
365 | ||
366 | * coding.c (decode_coding_string): Set members consumed, | |
367 | consumed_char, produced, produced_char of *coding correctly. If | |
368 | decode_coding doesn't consume any byte, don't try anymore. | |
369 | (encode_coding_string): Likewise. | |
370 | ||
7eb9e30d GM |
371 | 2000-08-18 Gerd Moellmann <gerd@gnu.org> |
372 | ||
511bd4eb GM |
373 | * lisp.h (CHECK) [ENABLE_CHECKING]: Make both sides of the |
374 | conditional have void type, for Standard C compilers. | |
7eb9e30d GM |
375 | |
376 | * xdisp.c (redisplay_internal): Compare windows for equality with | |
377 | EQ, instead of applying XWINDOW to something that might not | |
378 | be a window. | |
379 | ||
dd34a735 KH |
380 | 2000-08-18 Kenichi Handa <handa@etl.go.jp> |
381 | ||
382 | * fontset.c (Finternal_char_font): Search only the selected frame | |
383 | for a window of the current buffer. | |
384 | ||
385ff9e3 GM |
385 | 2000-08-18 Gerd Moellmann <gerd@gnu.org> |
386 | ||
511bd4eb | 387 | * minibuf.c (do_completion): Use EQ instead of `!=' to compare |
01cce3e7 GM |
388 | Lisp_Objects. |
389 | ||
385ff9e3 GM |
390 | * keyboard.c (kbd_buffer_get_event): Handle the case that the |
391 | second half of a HELP_EVENT is found at the start of kbd_buffer. | |
392 | ||
d6abb4c7 MB |
393 | 2000-08-18 Miles Bader <miles@gnu.org> |
394 | ||
4618074a MB |
395 | * lisp.h (Lisp_String): Replace DECLARE_INTERVALS with real decl. |
396 | ||
d6abb4c7 MB |
397 | * editfns.c (save_restriction_save): Rewrite to use markers. |
398 | (save_restriction_restore): Rewrite to understand new form of data | |
399 | saved by save_restriction_save. | |
400 | (Fsave_restriction): Remove cautionary note in doc-string. | |
401 | ||
a7b28523 GM |
402 | 2000-08-17 Gerd Moellmann <gerd@gnu.org> |
403 | ||
404 | * fileio.c (build_annotations): Add a comment explaining the | |
405 | return value of format-annotate-function. Replace a spurious call | |
406 | to Flength with a CONSP test. Call format-annotate-function with | |
407 | a fifth arg specifying how many times the function is been called | |
408 | in a row, to let it choose temporary buffers appropriately. | |
409 | ||
03c9ed77 DL |
410 | 2000-08-17 Dave Love <fx@gnu.org> |
411 | ||
412 | * lisp.h: Remove DECLARE_INTERVALS, INITIALIZE_INTERVAL. Don't | |
413 | declare make_temp_name twice. | |
414 | ||
415 | * lread.c: Prototype readevalloop, load_unwind, | |
416 | load_descriptor_unwind. | |
417 | (unreadpure): Give it an arg. | |
418 | ||
419 | * unexalpha.c: Prototype fatal_unexec, mark_x, | |
420 | update_dynamic_symbols. Declare unexec as void. | |
421 | ||
422 | * cm.c [HAVE_TERMCAP_H]: Include <termcap.h>. | |
423 | [!HAVE_TERMCAP_H]: Prototype tputs, tgoto. | |
424 | ||
425 | * alloc.c (lisp_malloc): Declare with POINTER_TYPE. | |
426 | [SYSTEM_MALLOC]: Make decls in malloc.h conditional on | |
427 | DOUG_LEA_MALLOC. | |
428 | ||
429 | * alloca.c: Use #error. | |
430 | [POINTER_TYPE]: Use it. | |
431 | ||
432 | * eval.c (Fdefvar): Doc fix. | |
433 | ||
434 | * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Avoid | |
435 | INITIALIZE_INTERVAL. | |
436 | ||
437 | * buffer.h: Avoid DECLARE_INTERVALS. | |
438 | ||
439 | * config.in: Add size_t. | |
440 | ||
aae41d97 EZ |
441 | 2000-08-17 Eli Zaretskii <eliz@is.elta.co.il> |
442 | ||
443 | * w16select.c (set_clipboard_data): If there's not enough memory | |
444 | to put text into clipboard, return 1, as Fw16_set_clipboard_data | |
445 | expects. In case of other failures, return 3. | |
446 | (system_error_msg): New error message. | |
447 | (Fw16_set_clipboard_data): If set_clipboard_data returns 3, print | |
448 | system_error_msg. | |
449 | ||
65aa5e85 GM |
450 | 2000-08-16 Gerd Moellmann <gerd@gnu.org> |
451 | ||
452 | * term.c (write_glyphs): Also turn off inverse video after turning | |
453 | off other appearances in case TS_exit_attribute_mode is not equal | |
454 | to TS_end_standout_mode. | |
455 | (insert_glyphs): Turn inverse video on/off for each run of glyphs | |
456 | with the same face. | |
457 | (turn_off_face): Reset standout_mode only if | |
458 | TS_exit_attribute_mode has been output and TS_exit_attribute_mode | |
459 | is equal to TS_end_standout_mode. | |
460 | ||
ece23901 KH |
461 | 2000-08-16 Kenichi Handa <handa@etl.go.jp> |
462 | ||
9d7bcb2e KH |
463 | * coding.c (encode_coding): Fix the bug of not flushing ISO escape |
464 | sequence at the end of the source block. | |
465 | ||
ece23901 KH |
466 | * ccl.c (Fccl_program_p): Docstring modified. |
467 | (Fccl_execute): Likewise. | |
468 | (Fccl_execute_on_string): Likewise. | |
469 | ||
5e30eaa2 EZ |
470 | 2000-08-16 Eli Zaretskii <eliz@is.elta.co.il> |
471 | ||
472 | * msdos.c (IT_write_glyphs): Convert cbp to unsigned char *. | |
473 | ||
290602fd KH |
474 | 2000-08-16 Kenichi Handa <handa@etl.go.jp> |
475 | ||
476 | The following changes are mainly to fix bugs of | |
477 | encode/decode-coding-string failing if encoding/decoding return | |
478 | CODING_FINISH_INSUFFICIENT_DST. In addition, delete the global | |
479 | variable conversion_buffer. | |
480 | ||
481 | * ccl.c (CCL_WRITE_CHAR): If CH is eight-bit-control char, | |
482 | decrement dst_end to avoid buffer overflow in the later call of | |
483 | string_as_multibyte | |
484 | ||
485 | * coding.h (conversion_buffer_size, conversion_buffer) | |
486 | (get_conversion_buffer): Extern deleted. | |
487 | ||
488 | * coding.c (MINIMUM_CONVERSION_BUFFER_SIZE): Macro deleted. | |
489 | (conversion_buffer, conversion_buffer_size): Variables deleted. | |
490 | (get_conversion_buffer): Function deleted. | |
491 | (struct conversion_buffer): New structure. | |
492 | (MAX_ALLOCA): New macro. | |
493 | (allocate_conversion_buffer): New macro. | |
494 | (extend_conversion_buffer, free_conversion_buffer): New functions. | |
495 | (ccl_coding_driver): Set coding->result. | |
496 | (decode_coding): Set coding->result to CODING_FINISH_NORMAL if | |
497 | this is the last block of source. | |
498 | (encode_coding): Likewise. Handle the source block as the last | |
499 | one only when the whole source text is consumed. | |
500 | (decode_coding_string): Handle the case that the output buffer is | |
501 | too small to decode the whole source text. Use | |
502 | allocate_conversion_buffer, extend_conversion_buffer and | |
503 | free_conversion_buffer, not get_conversion_buffer. | |
504 | (encode_coding_string): Likewise. | |
505 | (init_coding): Function deleted. | |
506 | (init_coding_once): Delete code to initialize | |
507 | conversion_buffer_size. | |
508 | ||
509 | * emacs.c (main): Don't call init_coding. | |
510 | ||
511 | * msdos.c (IT_write_glyphs): Use a locally declared | |
512 | conversion_buffer. | |
513 | ||
514 | * term.c (write_glyphs): Use a locally declared conversion_buffer. | |
515 | (insert_glyphs): Likewise. | |
516 | ||
517 | * w32console.c (write_glyphs): Use a locally declared | |
518 | conversion_buffer. | |
519 | ||
b9f80d41 EZ |
520 | 2000-08-15 Eli Zaretskii <eliz@is.elta.co.il> |
521 | ||
522 | * msdos.c (IT_update_begin): Don't crash if mouse_face_mouse_frame | |
523 | member of display_info is NULL. | |
524 | ||
32dc52f7 GM |
525 | 2000-08-15 Gerd Moellmann <gerd@gnu.org> |
526 | ||
58ed0d3b GM |
527 | * alloc.c (compact_small_strings): Use safe_bcopy, add an |
528 | assertion. | |
529 | ||
32dc52f7 | 530 | * term.c (turn_off_face): Reset standout_mode when resetting |
58ed0d3b | 531 | appearances with capability `me'. |
32dc52f7 GM |
532 | (write_glyphs): Switch on inverse video before each face change. |
533 | ||
4eb22d33 DL |
534 | 2000-08-14 Dave Love <fx@gnu.org> |
535 | ||
536 | * alloc.c [HAVE_UNISTD_H]: Include unistd.h; don't declare sbrk. | |
537 | [!HAVE_UNISTD_H]: Use POINTER_TYPE to declare sbrk. | |
538 | (lisp_free): Declare and make static. | |
539 | ||
540 | * window.c: Fix embedded comment. | |
541 | (syms_of_window): Fix doc string. | |
542 | ||
90cbf47e GM |
543 | 2000-08-14 Gerd Moellmann <gerd@gnu.org> |
544 | ||
545 | * keymap.c (push_key_description): If C without modifiers is < 32, | |
546 | make sure to print `C-' before `M-', like in the manual. | |
547 | ||
440fc135 GM |
548 | 2000-08-11 Gerd Moellmann <gerd@gnu.org> |
549 | ||
550 | * fns.c (hashfn_eq, hashfn_eql): Don't handle strings specially | |
551 | since they aren't relocated anymore. | |
552 | (sxhash_string): Make sure returned hash code fits in a Lisp | |
553 | integer. | |
554 | ||
555 | * xdisp.c (try_cursor_movement): Fix handling of cursor in | |
556 | partially visible line which is smaller than the window's | |
557 | height. | |
558 | ||
6e264fad KH |
559 | 2000-08-11 Kenichi Handa <handa@etl.go.jp> |
560 | ||
561 | * ccl.c (CCL_READ_CHAR): If source is multibyte, pay attention to | |
562 | the multibyte form of eight-bit-control characters. | |
563 | (Fccl_execute_on_string): Initialize ccl->multibyte. | |
564 | ||
565 | * ccl.h (struct ccl_program): New member multibyte. | |
566 | ||
567 | * coding.c (ccl_coding_driver): Initialize ccl->multibyte. | |
568 | ||
c371f69a KH |
569 | 2000-08-11 Kenichi Handa <handa@etl.go.jp> |
570 | ||
571 | * regex.c (regex_compile) <normal_char>: Pay attention to | |
572 | multibyteness. | |
573 | (analyse_first) <exactn>: Setup fastmap correctly for | |
574 | eight-bit-control characters. | |
575 | ||
576 | 2000-08-11 Kenichi Handa <handa@etl.go.jp> | |
577 | ||
578 | * termhooks.h (enum event_kind): New member | |
579 | multibyte_char_keystroke. | |
580 | ||
581 | * keyboard.c (make_lispy_event): Handle the new event type | |
582 | multibyte_char_keystroke. | |
583 | ||
584 | * xterm.c: Include coding.h. | |
585 | (XTread_socket): Work around a bug of XmbLookupString. If the | |
586 | input is from XIM, decode it according to the current locale. In | |
587 | that case, generate multibyte_char_keystroke events. | |
588 | ||
b8ddbe71 KH |
589 | 2000-08-11 Kenichi Handa <handa@etl.go.jp> |
590 | ||
591 | * xdisp.c (TRACE_MOVE) [GLYPH_DEBUG]: Delete the last semicolon. | |
592 | (TRACE_MOVE) [not GLYPH_DEBUG]: Define dummy. | |
593 | ||
47589c8c GM |
594 | 2000-08-10 Gerd Moellmann <gerd@gnu.org> |
595 | ||
596 | * xdisp.c (trace_move) [GLYPH_DEBUG]: New variable. | |
597 | (TRACE_MOVE) [GLYPH_DEBUG]: New macro. | |
598 | (move_it_in_display_line_to): Record iterator's ascent and descent | |
599 | before producing glyphs, and restore them when we know the glyph | |
600 | doesn't fit on the line. | |
601 | (move_it_to): Restructured so that it's easier to debug. If | |
602 | moving to a vpos, and not moving to an x or character position, | |
603 | stop as soon as the specified vpos is reached; don't move further | |
604 | into that line because that might change the computed line height. | |
605 | (try_cursor_movement): New function, extracted from the cursor | |
606 | movement branch of redisplay_window. If ending on a partially | |
607 | visible line, don't try to scroll if the cursor line is taller | |
608 | than the window. | |
609 | (redisplay_window): Use try_cursor_movement. | |
610 | ||
611 | * window.c (Fwindow_end): Rewritten to not use Fvertical_motion, | |
612 | because that function doesn't cope with variable-height lines. | |
613 | ||
614 | * xterm.c (x_draw_bar_cursor): If cursor is on an image, draw a | |
615 | box cursor because that's better visible for large images. | |
616 | ||
c51bacd6 MB |
617 | 2000-08-10 Miles Bader <miles@gnu.org> |
618 | ||
619 | * w32term.c (note_mouse_highlight): Update calls to overlays_at. | |
620 | ||
bea56df7 GM |
621 | 2000-08-10 Gerd Moellmann <gerd@gnu.org> |
622 | ||
623 | * xdisp.c (Vmessages_buffer_name): New variable. | |
624 | (message_dolog): Use it. | |
625 | (syms_of_xdisp): Initialize it. | |
626 | ||
99cd7364 EZ |
627 | 2000-08-10 Eli Zaretskii <eliz@is.elta.co.il> |
628 | ||
629 | * msdos.c (IT_note_mouse_highlight): Update the calls to | |
630 | overlays_at. | |
631 | (toplevel) <kbd_buffer_store_event>: Remove prototype, it's | |
632 | redundant now that keyboard.h is included. | |
633 | ||
7d093d56 EZ |
634 | 2000-08-09 Eli Zaretskii <eliz@is.elta.co.il> |
635 | ||
636 | * keyboard.c (kbd_buffer_events_waiting): New function. | |
637 | ||
638 | * keyboard.h (kbd_buffer_events_waiting): Add prototype. | |
639 | ||
640 | * msdos.c: Include keyboard.h. | |
641 | (XMenuActivate): Empty no_event events from the event buffer. If | |
642 | no events are left after that, call clear_input_pending. | |
643 | (mouse_clear_clicks): New function, code moved from mouse_init. | |
644 | (mouse_init, XMenuActivate): Call mouse_clear_clicks to force the | |
645 | mouse driver to ``forget'' any past clicks. | |
646 | ||
647 | * Makefile.in (msdos.o): Depend on keyboard.h. | |
648 | ||
41e757a6 GM |
649 | 2000-08-09 Gerd Moellmann <gerd@gnu.org> |
650 | ||
8e7bd231 GM |
651 | * lisp.h (input_pending): External declaration. |
652 | ||
653 | * dispextern.h (Qredisplay_dont_pause): Declare extern. | |
654 | ||
655 | * xdisp.c (echo_area_display): Display thoroughly if input is | |
656 | pending. Bind redisplay-dont-pause to t during the redisplay. | |
657 | in case input is pending. | |
658 | ||
659 | * dispnew.c (Qredisplay_dont_pause): New variable. | |
660 | (syms_of_display): Initialize and staticpro it. | |
661 | (update_frame_1): Don't interrupt the display for pending input if | |
662 | redisplay_dont_pause is set. | |
663 | ||
43028b7e GM |
664 | * dispnew.c (mode_line_string): Declare parameter MODE_LINE_P. |
665 | ||
41e757a6 GM |
666 | * xfaces.c (Ftty_suppress_bold_inverse_default_colors): Doc fix. |
667 | ||
2f2174fa KH |
668 | 2000-08-09 Miles Bader <miles@lsi.nec.co.jp> |
669 | ||
670 | * callproc.c (Fcall_process): Terminate the unwind-protect around | |
671 | the post-read-conversion of coding system. | |
672 | ||
0a6fd67e MB |
673 | * buffer.c (overlays_at): Add CHANGE_REQ parameter. |
674 | (Foverlays_at, Fnext_overlay_change, Fprevious_overlay_change): Use it. | |
675 | * buffer.h (overlays_at): Update prototype. | |
676 | * xdisp.c (next_overlay_change): Update call to overlays_at. | |
677 | * xfaces.c (face_at_buffer_position): Likewise. | |
678 | * textprop.c (Fget_char_property): Likewise. | |
679 | * xterm.c (note_mouse_highlight): Likewise. | |
680 | ||
0c80756e MB |
681 | * minibuf.c (do_completion): Don't consider a simple change of |
682 | case as `completion'. | |
683 | ||
975f250a KR |
684 | 2000-08-08 Ken Raeburn <raeburn@gnu.org> |
685 | ||
b347b3fd KR |
686 | * keyboard.c (syms_of_keyboard): Initialize |
687 | last_point_position_buffer. | |
688 | * undo.c (record_delete): Make sure last_point_position_buffer is | |
689 | a buffer before comparing pointers. | |
690 | ||
691 | * coding.h (decode_coding_string): Declare. | |
692 | ||
693 | * intervals.h (Fprevious_single_char_property_change): Declare. | |
694 | ||
695 | * textprop.c (Fprevious_single_char_property_change): Don't do | |
696 | arithmetic directly on lisp objects. | |
697 | ||
25ad1371 | 698 | * editfns.c (find_field): Use EQ, not ==, to compare Lisp |
b347b3fd KR |
699 | objects. |
700 | ||
701 | * keyboard.h (menu_item_eval_property): Declare. | |
702 | ||
703 | * xdisp.c (message_dolog): Save and protect string "*Messages*" to | |
704 | reuse as buffer name, instead of recreating (and discarding) every | |
705 | time a message is logged. | |
706 | (with_echo_area_buffer): Make callback arg A2 a lisp object. | |
25ad1371 GM |
707 | (current_message_1, truncate_message_1, set_message_1) |
708 | (display_echo_area_1, resize_mini_window_1): Signatures changed. | |
709 | (current_message, truncate_echo_area, display_echo_area) | |
710 | (resize_echo_area_axactly): Changed calls. | |
b347b3fd | 711 | |
975f250a | 712 | * coding.c (find_safe_codings): CHAR_TABLE_SET index must be a |
25ad1371 | 713 | Lisp object. |
975f250a | 714 | (Ffind_coding_systems_region_internal): First argument to Fappend |
25ad1371 | 715 | must be an integer, not a Lisp object. |
975f250a | 716 | |
46dc9912 KH |
717 | 2000-08-08 Kenichi Handa <handa@etl.go.jp> |
718 | ||
719 | * charset.c (Fchar_width): Doc fix. | |
720 | ||
9f6d1a6c GM |
721 | 2000-08-08 Gerd Moellmann <gerd@gnu.org> |
722 | ||
723 | * charset.c (Fstring_width): Doc fix. | |
724 | ||
ff3d9573 GM |
725 | 2000-08-07 Gerd Moellmann <gerd@gnu.org> |
726 | ||
41e757a6 | 727 | * xdisp.c (start_display): When starting display on a continuation |
49ad1d99 GM |
728 | line, clear ascent and descent members of the iterator structure; |
729 | the height of the continued line does not affect the height of the | |
730 | continuation line. | |
731 | (make_cursor_line_fully_visible): Do nothing if cursor is on a | |
732 | line taller than the window. | |
733 | (redisplay_window) <forced window start>: Handle case that the | |
734 | middle of the window is not found in any row. | |
735 | (dump_glyph_row): Show more information. | |
736 | (compute_line_metrics): Use MATRIX_FIRST_TEXT_ROW to determine the | |
737 | first text line in a glyph matrix. | |
738 | ||
739 | * xterm.c (x_draw_image_foreground): Avoid drawing outside | |
740 | of the clip area when image doesn't have a mask. | |
741 | ||
70fc58b3 GM |
742 | * fns.c (sweep_weak_table): Fix survival conditions for |
743 | key-or-value and key-and-value weakness. | |
744 | ||
745 | * .gdbinit (xhashtable): New command. | |
746 | ||
ac0e96ee GM |
747 | * fns.c (sweep_weak_hash_tables): Fix the code taking unmarked |
748 | tables out of the list of all weak hash tables. | |
749 | ||
ff3d9573 GM |
750 | * xdisp.c (ensure_echo_area_buffers): If a buffer was killed, and |
751 | a new buffer is created, make sure echo_area_buffer[] references | |
752 | the new buffer. | |
753 | ||
e0d8827b EZ |
754 | 2000-08-07 Eli Zaretskii <eliz@is.elta.co.il> |
755 | ||
756 | * msdos.c (Fmsdos_set_mouse_buttons): Add missing backslashes in | |
757 | the doc string. | |
758 | ||
c6f35378 KH |
759 | 2000-08-07 Kenichi Handa <handa@etl.go.jp> |
760 | ||
761 | * syntax.c (skip_chars): Fix previous change. Make the handling | |
762 | of unibyte string consistent with that of regex search. | |
763 | ||
1fd4c450 GM |
764 | 2000-08-05 Gerd Moellmann <gerd@gnu.org> |
765 | ||
e49aa397 GM |
766 | * xmenu.c (popup_get_selection): Use xfree instead of free. |
767 | ||
768 | * fileio.c (Finsert_file_contents): Use xfree instead of free. | |
769 | ||
770 | * editfns.c (Ftranspose_regions): Use xfree instead of free. | |
771 | ||
772 | * callproc.c (child_setup): Use xfree instead of free. | |
773 | ||
774 | * sysdep.c (opendir, GetTempDirName, run_mac_command): Use xmalloc | |
775 | instead of malloc. | |
776 | (run_mac_command, closedir): Use `xfree' instead of `free'. | |
777 | ||
778 | * keymap.c (current_minor_maps): Use xmalloc instead of malloc. | |
779 | ||
780 | * eval.c (error): Use xfree instead of free. | |
781 | ||
1fd4c450 GM |
782 | * xfaces.c, xfns.c, w32fns.c: Replace `illegal' with `invalid'. |
783 | ||
784 | * fns.c: Replace `illegal' with `invalid'. | |
e49aa397 | 785 | (Fmake_hash_table, make_hash_table): Allow table size of 0. |
1fd4c450 | 786 | |
82d497fc KH |
787 | 2000-08-05 Kenichi Handa <handa@etl.go.jp> |
788 | ||
789 | * syntax.c (skip_chars): Fix handling of multibyte<->unibyte | |
790 | conversion. | |
791 | ||
59f953a2 NF |
792 | 2000-08-04 Noah Friedman <friedman@splode.com> |
793 | ||
794 | * fns.c (Fmake_hash_table): Add missing `\n\' to end of line in | |
795 | docstring. | |
796 | ||
688351f2 GM |
797 | 2000-08-04 Gerd Moellmann <gerd@gnu.org> |
798 | ||
799 | * syntax.c (skip_chars): Fix typo in error message. | |
800 | ||
2dad51cc AS |
801 | 2000-08-04 Andreas Schwab <schwab@suse.de> |
802 | ||
803 | * m/ia64.h: Moved from s/ia64.h. | |
804 | ||
99bb2c60 KH |
805 | 2000-08-04 Kenichi Handa <handa@etl.go.jp> |
806 | ||
082a1df2 KH |
807 | * process.c (read_process_output): Big simplification. Handle |
808 | composition and post-read-conversion of coding system correctly. | |
809 | (send_process): Handle composition correctly. | |
810 | ||
811 | * callproc.c (Fcall_process): Handle post-read-conversion of | |
812 | coding system if any. | |
813 | ||
99bb2c60 KH |
814 | * coding.c (decode_coding_iso2022): More strict check for handling |
815 | single shifting. | |
082a1df2 KH |
816 | (coding_restore_composition): Pay attention to the case that |
817 | cmp_data is not set properly (because of invalid code in the | |
818 | source text). | |
819 | (run_pre_post_conversion_on_str): Include text properties in the | |
820 | resulting string. | |
821 | (decode_coding_string): Set members of coding correctly. | |
99bb2c60 | 822 | |
f4988be7 GM |
823 | 2000-08-03 Gerd Moellmann <gerd@gnu.org> |
824 | ||
825 | * s/ia64.h: New file. | |
826 | ||
827 | * widget.c (set_frame_size, update_wm_hints, EmacsFrameSetValues): | |
828 | Use NULL instead of 0 at the end of variable argument list of | |
829 | XtVaGetValues and XtVaSetValues, because 0 fails on systems where | |
830 | sizeof (int) < sizeof (void *). | |
831 | ||
832 | * xmenu.c (update_frame_menubar): Use NULL instead of 0 at the end | |
833 | of variable argument lists of XtVaGetValues and XtVaSetValues. | |
834 | ||
835 | * xfns.c (Fx_file_dialog): Use NULL instead of 0 at the end of | |
836 | variable argument lists of XtVaGetValues and XtVaSetValues. | |
837 | ||
ead53494 GM |
838 | 2000-08-02 Gerd Moellmann <gerd@gnu.org> |
839 | ||
840 | * alloc.c (lisp_malloc, lisp_free): Use size_t and POINTER_TYPE. | |
841 | (xrealloc, xmalloc): Use size_t. Some callers adjusted. | |
842 | ||
843 | * lisp.h (Fsingle_key_description, xmalloc, xrealloc): Change | |
844 | prototype. | |
845 | ||
846 | * keyboard.c (read_char_minibuf_menu_prompt): Add new parameter | |
847 | in call to Fsingle_key_description. | |
848 | ||
849 | * keymap.c (Fsingle_key_description): Add parameter NO_ANGLES. | |
850 | Callers changed. | |
851 | ||
852 | 2000-08-02 Colin Walters <walters@cis.ohio-state.edu> | |
853 | ||
854 | * window.c (display_buffer_reuse_frames): New variable. | |
855 | (Fdisplay_buffer): If display_buffer_reuse_frames is set, reuse | |
856 | frames displaying BUFFER. | |
857 | (syms_of_window): Define Lisp variable | |
858 | display-buffer-reuse-frames. | |
859 | ||
10b0f752 MB |
860 | 2000-08-01 Miles Bader <miles@gnu.org> |
861 | ||
862 | * editfns.c (Fconstrain_to_field): Fix the conditions for deciding | |
863 | when to constrain NEW_POS (they were pretty screwed up before). | |
864 | ||
16425c4a EZ |
865 | 2000-07-31 Eli Zaretskii <eliz@is.elta.co.il> |
866 | ||
867 | * msdos.c (run_msdos_command): Save and restore the master | |
868 | environment, for the case that child_setup signals an error. | |
869 | When mirroring slashes in DOS shell commands, don't fail when | |
870 | argv[2] has embedded blanks. | |
da288c14 EZ |
871 | (Fmsdos_set_mouse_buttons, mouse_setup_buttons): New functions. |
872 | (syms_of_msdos): Defsubr Fmsdos_set_mouse_buttons. | |
873 | (dos_ttraw): Call mouse_setup_buttons. | |
16425c4a EZ |
874 | |
875 | * callproc.c (child_setup) [MSDOS]: malloc pwd_var instead of | |
876 | using alloca; free it after run_msdos_command returns. | |
877 | ||
27f73852 DL |
878 | 2000-07-27 Dave Love <fx@gnu.org> |
879 | ||
880 | * s/irix6-5.h (IRIX_FORCE_32_BITS, LD_SWITCH_SYSTEM): Don't | |
881 | define. | |
882 | [_MIPS_SZLONG == 64]: Set up for 64-bit mode -- not currently | |
883 | working. | |
884 | ||
885 | * m/iris4d.h (XUINT, XSET, XUNMARK) [_LP64]: Don't define. | |
886 | ||
c0261b5e EZ |
887 | 2000-07-27 Eli Zaretskii <eliz@is.elta.co.il> |
888 | ||
889 | * editfns.c (lisp_time_argument): Fix last change. | |
890 | ||
b548072f GM |
891 | 2000-07-27 Gerd Moellmann <gerd@gnu.org> |
892 | ||
3ab82477 GM |
893 | * fns.c (Fdelete): Make it work on vectors and strings in addition |
894 | to lists. | |
895 | ||
b548072f GM |
896 | * fns.c (Qkey_or_value, Qkey_and_value): New variables. |
897 | (syms_of_fns): Initialize new variables. | |
898 | (sweep_weak_table): Handle weakness `key-or-value' and | |
899 | `key-and-value'. | |
900 | (Fmake_hash_table): Recognize `key-and-value' and `key-or-value' | |
901 | weakness, with t meaning the same as `key-and-value'. | |
902 | ||
91ae8751 KH |
903 | 2000-07-27 Kenichi Handa <handa@etl.go.jp> |
904 | ||
905 | * coding.h (struct coding_system): Member safe_charset deleted. | |
906 | ||
907 | * coding.c (Qsafe_charsets): This variable deleted. | |
908 | (Qsafe_chars, Vchar_coding_system_table, Qchar_coding_system): New | |
909 | variables. | |
910 | (coding_safe_chars): New function. | |
911 | (CODING_SAFE_CHAR_P): New macro. | |
912 | (CHARSET_OK): New arg C. Call CODING_SAFE_CHAR_P instead of | |
913 | checking safe_charsets member of the coding system. Caller | |
914 | changed. | |
915 | (detect_coding_iso2022): New local variable safe_chars. | |
916 | (DECODE_DESIGNATION): Call CODING_SAFE_CHAR_P instead of checking | |
917 | safe_charsets member of the coding system. | |
918 | (decode_coding_iso2022): New local variable safe_chars. | |
919 | (ENCODE_ISO_CHARACTER_DIMENSION1): Don't check unsafe chars here. | |
920 | (ENCODE_ISO_CHARACTER_DIMENSION2): Likewise. | |
921 | (ENCODE_ISO_CHARACTER): Arguments changed. Caller changed. | |
922 | (ENCODE_UNSAFE_CHARACTER): New macro. | |
923 | (encode_coding_iso2022): New local variable safe_chars. Check | |
924 | unsafe chars. | |
925 | (setup_coding_system): Delete the code to initialize | |
926 | coding->safe_charses | |
927 | (intersection, find_safe_codings): New functions. | |
928 | (Ffind_coding_systems_region_internal): New function. | |
929 | (syms_of_coding): Defsubr it. Initialize Qsafe_chars, | |
930 | Qsafe_cding_system. Make Vchar_coding_system_table a Lisp | |
931 | variable and initialize it. | |
932 | ||
933 | * fns.c (char_table_ref_and_index): New function. | |
934 | ||
935 | * lisp.h (char_table_ref_and_index): Add prototype. | |
936 | ||
34a7a267 SS |
937 | 2000-07-26 Sam Steingold <sds@gnu.org> |
938 | ||
939 | * editfns.c (lisp_time_argument): Added third argument `usec'. | |
3ab82477 | 940 | (Ffloat_time): New built-in Lisp function. |
34a7a267 | 941 | |
a95cb10a GM |
942 | 2000-07-26 Gerd Moellmann <gerd@gnu.org> |
943 | ||
3353ef5a GM |
944 | * dispextern.h (GLYPH_FROM_CHAR_GLYPH): Use CHARACTERBITS bits |
945 | for the character code. | |
946 | ||
947 | * config.in (HAVE_SOUND): Define only for FreeBSD, NetBSD and | |
948 | GNU/Linux. | |
949 | ||
a95cb10a GM |
950 | * xmenu.c (menu_highlight_callback): Call show_help_echo directly |
951 | if called for a popup menu. | |
952 | (xmenu_show): Store help string in widget values. | |
953 | ||
b4a12321 DL |
954 | 2000-07-26 Dave Love <fx@gnu.org> |
955 | ||
956 | * syswait.h: Move some definitions. | |
957 | (HAVE_SYS_WAIT_H): Undef for HPUX7, Convex. | |
958 | [!HAVE_SYS_WAIT_H]: Define things unconditionally. More | |
959 | perspicuous definitions. | |
960 | (WTERMSIG): Fix bit pattern used. | |
961 | ||
13f5ad37 KH |
962 | 2000-07-26 Kenichi Handa <handa@etl.go.jp> |
963 | ||
964 | * print.c (print_object): If vector printing is truncated, print | |
965 | "..." to indicate it as well as the case of list printing. | |
966 | ||
070fe99c GM |
967 | 2000-07-25 Gerd Moellmann <gerd@gnu.org> |
968 | ||
969065c3 GM |
969 | * xdisp.c (next_element_from_display_vector): Improve comments. |
970 | ||
971 | * lisp.h (GLYPH_MASK_CHAR, GLYPH_MASK_FACE): Use 19 bits | |
972 | for the character code, and the rest for the face id as in 20.x. | |
973 | (FAST_GLYPH_FACE, FAST_MAKE_GLYPH): Changed accordingly. | |
974 | ||
975 | * window.c (window_display_table): Cleaned up. | |
976 | ||
070fe99c GM |
977 | * syntax.c (Fforward_word): Add last arg nil in call of |
978 | Fconstrain_to_field. | |
979 | ||
bad77ef7 EZ |
980 | 2000-07-25 Eli Zaretskii <eliz@is.elta.co.il> |
981 | ||
969065c3 | 982 | * fileio.c (Frename_file) [DOS_NT]: If the file names are |
bad77ef7 EZ |
983 | identical but for the letter-case, don't call |
984 | barf_or_query_if_file_exists. | |
985 | ||
c28da489 MB |
986 | 2000-07-25 Miles Bader <miles@gnu.org> |
987 | ||
988 | * editfns.c (find_field): Honor special `boundary' fields. | |
989 | (Qboundary): New variables. | |
990 | (syms_of_editfns): Initialize Qboundary. | |
991 | (Fconstrain_to_field): Add the INHIBIT-CAPTURE-PROPERTY argument. | |
992 | Use scan_buffer instead of find_before_next_newline, because it | |
993 | allows us to detect the boundary case where there's a newline at | |
994 | the search limit. | |
995 | * lisp.h (Fconstrain_to_field): Update external declaration. | |
996 | ||
e3c31fd5 GM |
997 | 2000-07-24 Gerd Moellmann <gerd@gnu.org> |
998 | ||
999 | * print.c (temp_output_buffer_setup): Don't call1 Vrun_hooks | |
1000 | if that is nil. | |
c28da489 | 1001 | |
c66c29a2 DL |
1002 | 2000-07-24 Dave Love <fx@gnu.org> |
1003 | ||
1004 | * s/sunos4-0.h, s/sol2.h: | |
1005 | (LIBS_TERMCAP): Move from m/sparc.h. | |
1006 | ||
1007 | * m/sparc.h (TERMINFO): Moved to system files (probably only | |
1008 | relevant for sunos4 judging by its vintage). | |
1009 | (BITS_PER_LONG, BITS_PER_EMACS_INT, _LP64): Define conditional on | |
1010 | __arch64__. | |
1011 | ||
fbe0a958 EZ |
1012 | 2000-07-24 Eli Zaretskii <eliz@is.elta.co.il> |
1013 | ||
1014 | * xmenu.c (keymap_panes): Pass the keymap's prompt as the pane | |
1015 | name to single_keymap_panes. | |
1016 | ||
7d88e5c9 AS |
1017 | 2000-07-24 Andreas Schwab <schwab@suse.de> |
1018 | ||
1019 | * fns.c (Fmakehash): Pass Qeql to Fmake_hash_table if TEST is nil. | |
1020 | ||
e024b101 GM |
1021 | 2000-07-24 Gerd Moellmann <gerd@gnu.org> |
1022 | ||
1023 | * xdisp.c (with_echo_area_buffer): Take additional EMACS_INT | |
1024 | parameters instead of using int parameters. Expect FN to accept | |
1025 | EMACS_INT parameters. | |
1026 | (display_echo_area, resize_echo_area_axactly, current_message) | |
1027 | (truncate_echo_area, set_message_1): Call with_echo_area_buffer | |
1028 | with new argument list. | |
1029 | (resize_mini_window_1): New callback function. | |
1030 | (current_message_1, truncate_message_1, set_message_1): Change | |
1031 | parameter lists to the new format expected by | |
1032 | with_echo_area_buffer. | |
1033 | ||
25c1a9ce KH |
1034 | 2000-07-24 Kenichi Handa <handa@etl.go.jp> |
1035 | ||
1036 | * fontset.c (fontset_ref): Remove INLINE declaration. | |
1037 | (fontset_ref_via_base): Likewise. | |
1038 | (Fset_fontset_font): Convert FAMILY and REGISTRY specifications | |
1039 | to downcase. | |
1040 | ||
7f987ac0 EZ |
1041 | 2000-07-23 Eli Zaretskii <eliz@is.elta.co.il> |
1042 | ||
1043 | * msdos.c (IT_note_mouse_highlight): Process overlays in the | |
1044 | correct order of priority. If help echo was found in an overlay, | |
1045 | use that overlay as the object in which the help echo was found. | |
1046 | ||
e2db3069 MB |
1047 | 2000-07-22 Miles Bader <miles@gnu.org> |
1048 | ||
1049 | * textprop.c (Fprevious_single_char_property_change): The initial | |
1050 | property value should be from the position preceding POSITION, not | |
1051 | following it. | |
1052 | ||
5e3203e4 EZ |
1053 | 2000-07-22 Eli Zaretskii <eliz@is.elta.co.il> |
1054 | ||
1055 | * coding.c (syms_of_coding): Doc fix for | |
1056 | inhibit-iso-escape-detection. | |
1057 | ||
62145073 GM |
1058 | 2000-07-21 Gerd Moellmann <gerd@gnu.org> |
1059 | ||
c20aeb83 GM |
1060 | * xterm.c (note_mouse_highlight): Process overlays in the right |
1061 | order of priority. | |
34a7a267 | 1062 | |
743934db GM |
1063 | * keyboard.c (show_help_echo, gen_help_event): Extend comments. |
1064 | ||
1065 | * xterm.c (note_mouse_highlight): If help-echo was found in an | |
1066 | overlay, use that overlay as the object in which the help was | |
1067 | found. | |
1068 | ||
d1dc7e43 | 1069 | * window.c (foreach_window_1): Fix typo reversing an if-condition. |
34a7a267 | 1070 | |
62145073 GM |
1071 | * window.c (foreach_window): Instead of a fake variable argument |
1072 | list, take one USER_DATA argument. | |
1073 | (foreach_window_1): Likewise, and call callback functions with two | |
1074 | args, the window and USER_DATA. | |
1075 | (struct check_window_data): New struct. | |
1076 | (check_window_containing): Use it. | |
1077 | (window_from_coordinates): Set up a struct check_window_data for | |
1078 | foreach_window. | |
1079 | (add_window_to_list, freeze_window_start): Change parameters | |
1080 | according to new calling convention. | |
1081 | ||
1082 | * window.h (foreach_window): Change prototype. | |
1083 | ||
1084 | * buffer.c (Fprevious_overlay_change): Avoid memory leak. | |
1085 | ||
1086 | 2000-07-21 Eli Zaretskii <eliz@is.elta.co.il> | |
1087 | ||
1088 | * xmenu.c (menu_help_callback): Call show_help_echo with | |
1089 | additional arguments OBJECT and POS. | |
1090 | ||
11270583 KH |
1091 | 2000-07-21 Kenichi Handa <handa@etl.go.jp> |
1092 | ||
07b14857 KH |
1093 | * data.c (Faset): Allow storing any multibyte character in a |
1094 | string. Convert unibyte string to multibyte if necessary. | |
1095 | ||
11270583 KH |
1096 | * xfns.c (x_encode_text): New function. |
1097 | (x_set_name): Use x_encode_text. | |
1098 | (x_set_title): Likewise. | |
1099 | ||
1100 | * xselect.c (lisp_data_to_selection_data): Use x_encode_text. | |
1101 | ||
1102 | * xterm.h (x_encode_text): Add prototype. | |
1103 | ||
bc75b4fd DL |
1104 | 2000-07-20 Dave Love <fx@gnu.org> |
1105 | ||
1106 | * ccl.c (Fccl_execute_on_string): Don't check xmalloc return. Use | |
1107 | xfree, not free. | |
1108 | ||
48c14970 EZ |
1109 | 2000-07-20 Eli Zaretskii <eliz@is.elta.co.il> |
1110 | ||
1111 | * msdos.c (help_echo_window): New variable. | |
1112 | (syms_of_msdos): Initialize and staticpro it. | |
1113 | (IT_note_mode_line_highlight): Set help_echo_window. | |
1114 | (IT_note_mouse_highlight): Ditto. | |
1115 | (dos_rawgetc): Store help_echo_window in the second event produced | |
1116 | for HELP_EVENTs. | |
1117 | ||
1118 | * msdos.c (IT_note_mode_line_highlight, IT_note_mouse_highlight): | |
1119 | Record the object that generated the help echo and the position of | |
1120 | that object in help_echo_object and help_echo_pos. Record that | |
1121 | some glyphs in a row are displayed in mouse-face. | |
1122 | (IT_update_begin): Don't clear mouse highlight unless one of the | |
1123 | enabled glyph rows is marked as being displayed in mouse-face. | |
1124 | (dos_rawgetc): Generate 2 events for HELP_EVENT. Pass the object | |
1125 | and position recorded in help_echo_object and help_echo_pos to the | |
1126 | event queue. | |
1127 | (IT_menu_display): Accept a new argument PN: the pane number of | |
1128 | the current menu pane. Record the pane number and the item | |
1129 | number of the item which has associated help string. | |
1130 | (XMenuActivate): Update the prototype for help_callback in | |
1131 | function declaration. Call IT_menu_display with the current menu | |
1132 | pane number as an additional argument. Call help_callback with | |
1133 | two additional arguments: the pane number and the item number of | |
1134 | the menu item associated with the help text. | |
1135 | (help_echo_object, help_echo_pos): New variables. | |
1136 | (syms_of_msdos): Initialize them and staticpro help_echo_object. | |
1137 | ||
1138 | * msdos.h (XMenuActivate): Update prototype. | |
1139 | ||
4279296d GM |
1140 | 2000-07-19 Gerd Moellmann <gerd@gnu.org> |
1141 | ||
47db06aa GM |
1142 | * xdisp.c (with_echo_area_buffer): Call FN with more arguments. |
1143 | Add some more prototypes. | |
1144 | ||
1145 | * xterm.c, xterm.h: Add some more prototypes. | |
1146 | ||
1147 | * lisp.h (Fnext_single_char_property_change): Add prototype. | |
1148 | ||
1149 | * dispnew.c (direct_output_for_insert): Remove confusing | |
1150 | outer local variable mouse_face_overwritten_p. | |
1151 | (glyph_row_slice_p): Put in #ifdef GLYPH_DEBUG. | |
1152 | ||
4279296d GM |
1153 | * alloc.c (allocate_string_data): Don't copy old string contents. |
1154 | ||
670acd62 KH |
1155 | 2000-07-19 Kenichi Handa <handa@etl.go.jp> |
1156 | ||
1157 | * coding.c (code_convert_region): Delete text properties before | |
1158 | shrinking the conversion region. | |
1159 | ||
7cea38bc GM |
1160 | 2000-07-18 Gerd Moellmann <gerd@gnu.org> |
1161 | ||
dc1cac59 GM |
1162 | * dispnew.c (update_text_area): Write the whole row if it |
1163 | has mouse-face in it. | |
1164 | ||
85a8aca9 GM |
1165 | * xfaces.c (face-alternative-font-family-alist): Remove |
1166 | DEFVAR_LISP; staticpro instead. | |
1167 | ||
34a7a267 | 1168 | * xmenu.c (menu_help_callback): Call show_help_echo with |
7cea38bc GM |
1169 | new arguments. |
1170 | ||
1171 | * keyboard.c (show_help_echo): Add parameter WINDOW. | |
1172 | (read_char): Call show_help_echo with window extracted from Lisp | |
1173 | help event. | |
1174 | (gen_help_event): Add parameter WINDOW. | |
1175 | ||
1176 | * keyboard.h (show_help_echo, gen_help_event): Change prototypes. | |
1177 | ||
1178 | * xterm.c (help_echo_window): New variable. | |
1179 | (note_mouse_highlight, note_tool_bar_highlight): Set | |
1180 | help_echo_window. | |
1181 | (XTread_socket): Pass help_echo_window to gen_help_event. | |
1182 | (syms_of_xterm): Initialize and staticpro help_echo_window. | |
1183 | ||
f8276b77 DL |
1184 | 2000-07-18 Dave Love <fx@gnu.org> |
1185 | ||
1186 | * Makefile.in: Fix dependencies of blockinput.h on atimer.h, | |
1187 | systime.h. | |
1188 | ||
088831a6 GM |
1189 | 2000-07-18 Gerd Moellmann <gerd@gnu.org> |
1190 | ||
3d6cd763 GM |
1191 | * alloc.c (allocate_string_data): If string had already data |
1192 | assigned, copy old contents to new string data. | |
1193 | ||
1194 | * coding.c (syms_of_coding): Fix typo in spelling of variable | |
1195 | `inhibit-iso-escape-detection'. | |
1196 | ||
088831a6 GM |
1197 | * alloca.c (free) [emacs && EMACS_FREE]: Define as EMACS_FREE. |
1198 | ||
1199 | * Makefile.in: Add dependencies on dispextern.h. | |
1200 | (alloca.o): Don't define malloc and define EMACS_FREE instead of | |
1201 | `free'; both can conflict with system header files. | |
1202 | ||
bc8a8d55 KH |
1203 | 2000-07-18 Kenichi Handa <handa@etl.go.jp> |
1204 | ||
1205 | * charset.h (MAKE_CHAR): Return reasonable code even if CHARSET is | |
1206 | undefined. | |
1207 | ||
069f5950 DL |
1208 | 2000-07-18 Dave Love <fx@gnu.org> |
1209 | ||
1210 | * window.c (Fwindow_list): Declare arg `window'. | |
1211 | ||
aa96c820 KH |
1212 | 2000-07-18 Kenichi Handa <handa@etl.go.jp> |
1213 | ||
1214 | * coding.c (setup_coding_system): Don't override the explicitly | |
1215 | specified designations. | |
1216 | ||
06be8d32 MB |
1217 | 2000-07-15 Miles Bader <miles@gnu.org> |
1218 | ||
1219 | * editfns.c (char_property_eq, char_property_stickiness): Renamed | |
1220 | from `text_property_eq' and `text_property_stickiness', respectively. | |
1221 | (find_field, Fconstrain_to_field, char_property_eq) | |
1222 | (char_property_stickiness): Changed to call char-property functions | |
1223 | instead of text-property-only ones. | |
1224 | ||
1225 | * textprop.c (Fnext_single_char_property_change): Made a subr (was | |
1226 | `next_single_char_property_change'). Do more error checking, and | |
1227 | cleanup limit behavior. | |
1228 | (Fprevious_single_char_property_change): New function. | |
1229 | (syms_of_textprop): Initialize new subrs. | |
1230 | ||
1231 | * xdisp.c (display_prop_end, invisible_text_between_p): | |
1232 | Call Fnext_single_char_property_change instead of | |
1233 | next_single_char_property_change. | |
1234 | ||
3fddcdc3 JR |
1235 | 2000-07-15 Jason Rumney <jasonr@gnu.org> |
1236 | ||
1237 | * w32menu.c (w32_menu_show): Call free_menubar_widget_value_tree | |
1238 | after menu is finished with. | |
1239 | (add_menu_item): Only consider wv->title as a menu title. | |
1240 | (w32_menu_display_help): Add OBJECT and POS to show_help_echo. | |
1241 | ||
1242 | * w32fns.c (w32_wnd_proc) [WM_DRAW_ITEM]: Do not try to draw a | |
1243 | null title. | |
1244 | (FONT_REGEXP): Remove unused macro, and its sub-components. | |
1245 | (syms_of_w32fns): Replace underscore in w32-enable-synthesized-fonts. | |
1246 | ||
1247 | * w32term.c (help_echo_object, help_echo_pos): New variables. | |
1248 | (note_mode_line_highlight): Store additional information about the | |
1249 | help-echo in help_echo_object and help_echo_pos. Check both | |
1250 | `local-map' and `keymap' properties for changing the cursor | |
1251 | (note_mouse_highlight): Store additional information about the | |
1252 | help-echo in help_echo_object and help_echo_pos. | |
1253 | (note_tool_bar_highlight): Set help_echo_object to nil and | |
1254 | help_echo_pos to -1. | |
1255 | (w32_read_socket): Use gen_help_event instead of filling | |
1256 | input_events manually. | |
1257 | (syms_of_w32term): Staticpro help_echo_object. | |
1258 | (x_update_window_end): Add parameter MOUSE_FACE_OVERWRITTEN_P. If | |
1259 | set, arrange for a mouse-highlight redisplay in | |
1260 | XTframe_up_to_date. | |
1261 | (x_clear_mouse_face): New function. | |
1262 | (w32_redisplay_interface): Add pointer to x_clear_mouse_face. | |
1263 | (x_update_window_begin): No need to turn off the mouse | |
1264 | highlight here. | |
1265 | (show_mouse_face): Set the mouse_face_p flag of glyph rows | |
1266 | depending on whether they contain glyphs highlighted in | |
1267 | mouse-face. | |
1268 | (x_fill_stretch_glyph_string): Consume runs of stretch | |
1269 | glyphs instead of a single one. | |
1270 | (BUILD_STRETCH_GLYPH_STRING): Call x_fill_stretch_glyph_string | |
1271 | with new argument list. | |
1272 | (x_set_glyph_string_gc): Make sure the face's GC is valid. | |
1273 | (x_append_glyph, x_append_composite_glyph) | |
1274 | (x_produce_image_glyph, x_append_stretch_glyph): Accomodate to | |
1275 | changes in struct glyph starting 1999-12-27. See comments for | |
1276 | xterm.c on 2000-07-05. | |
1277 | ||
178c5d9c SS |
1278 | 2000-07-14 Sam Steingold <sds@gnu.org> |
1279 | ||
1280 | * xfaces.c (realize_x_face): Fix the last patch: | |
1281 | check `default_face' before dereferencing. | |
1282 | ||
6fe533f6 DL |
1283 | 2000-07-14 Dave Love <fx@gnu.org> |
1284 | ||
069f5950 | 1285 | * syntax.c (back_comment): Add null default in switch (for pcc). |
6fe533f6 | 1286 | |
dd7b81cf KH |
1287 | 2000-07-14 Kenichi Handa <handa@etl.go.jp> |
1288 | ||
0693904a | 1289 | * xfaces.c (realize_x_face): Make fontset using the base of the |
178c5d9c | 1290 | default_face's fontset, not using the default fontset. |
0693904a | 1291 | |
dd7b81cf KH |
1292 | * coding.c (inhibit_iso_escape_detection): New variable. |
1293 | (syms_of_coding): Make it a Lisp variable. | |
1294 | (detect_coding_iso2022): If inhibit_iso_escape_detection is | |
1295 | nonzero, ignore ISO2022's escape sequence. | |
1296 | ||
d5aa31d8 GM |
1297 | 2000-07-14 Gerd Moellmann <gerd@gnu.org> |
1298 | ||
e5acf0ca GM |
1299 | * alloca.c (malloc) [emacs]: Define as xmalloc. |
1300 | ||
bd23a692 GM |
1301 | * xfns.c (Fx_show_tip): If frame parameters contain a position, |
1302 | use that instead of the mouse position. Add parameters DX and DY. | |
1303 | ||
1304 | * dispextern.h (Fx_show_tip): Adjust number of parameters | |
1305 | in prototype. | |
1306 | ||
9662da0b GM |
1307 | * keyboard.c (show_help_echo): Add parameters OBJECT and POS. |
1308 | if HELP is a function, call it with OBJECT and POS as parameters | |
1309 | to get the help to display. | |
1310 | (gen_help_event, kbd_buffer_store_help_event): New functions. | |
1311 | (kbd_buffer_get_event): Construct the Lisp help-event differently. | |
1312 | (read_char): Call show_help_echo with new parameters. | |
1313 | ||
178c5d9c | 1314 | * keyboard.h (gen_help_event, kbd_buffer_store_help_event): |
9662da0b GM |
1315 | Add prototypes. |
1316 | ||
1317 | * xterm.c (help_echo_object, help_echo_pos): New variables. | |
1318 | (note_mode_line_highlight): Store additional information about the | |
1319 | help-echo in help_echo_object and help_echo_pos. Check both | |
1320 | `local-map' and `keymap' properties for changing the cursor | |
1321 | (note_mouse_highlight): Store additional information about the | |
1322 | help-echo in help_echo_object and help_echo_pos. | |
1323 | (note_tool_bar_highlight): Set help_echo_object to nil and | |
1324 | help_echo_pos to -1. | |
1325 | (XTread_socket): Use gen_help_event instead of filling | |
1326 | input_events manually. | |
1327 | (syms_of_xterm): Staticpro help_echo_object. | |
1328 | ||
1329 | * xmenu.c (menu_highlight_callback): Use | |
1330 | kbd_buffer_store_help_event instead of setting up and input_event | |
1331 | structure manually. | |
1332 | ||
1333 | * xdisp.c (eval_form): GCPRO argument sexpr. | |
1334 | (call_function): New function. | |
1335 | (handle_single_display_prop): Use call_function and FUNCTIONP | |
1336 | instead of checking whether if font_height is a symbol and | |
1337 | using eval_form. | |
1338 | ||
1339 | * eval.c (internal_condition_case_2): New function. | |
1340 | ||
1341 | * lisp.h (FUNCTIONP): New macro. | |
1342 | (internal_condition_case_2, call_function): Add prototypes. | |
1343 | ||
d5aa31d8 GM |
1344 | * xterm.c (construct_mouse_click, x_scroll_bar_to_input_event) |
1345 | (x_scroll_bar_handle_click, SET_SAVED_MENU_EVENT, XTread_socket): | |
1346 | Always set `arg' member of input_events. | |
1347 | (construct_menu_click): Unused function removed. | |
1348 | ||
1349 | * msdos.c (dos_rawgetc): Always set `arg' member of input_events. | |
1350 | ||
1351 | * w32term.c (construct_mouse_click, construct_mouse_wheel) | |
1352 | (construct_drag_n_drop, x_scroll_bar_handle_click) | |
1353 | (w32_read_socket): Always set `arg' member of input_events. | |
1354 | ||
1355 | * keyboard.c (show_help_echo): Use eval_form. Add comment. | |
1356 | ||
1357 | * lisp.h (eval_form): Add prototype. | |
1358 | ||
1359 | * xdisp.c (eval_form): Make it externally visible. | |
1360 | ||
0f1a9b23 GM |
1361 | 2000-07-13 Gerd Moellmann <gerd@gnu.org> |
1362 | ||
1363 | * xterm.c (x_handle_tool_bar_click): Store the frame in the | |
1364 | frame_or_window slot of TOOL_BAR_EVENT input events instead of | |
1365 | consing. For prefix events, store the frame in the `arg' slot of | |
1366 | the event, otherwise store the key there. | |
1367 | (XTread_socket): Instead of consing, use the frame_or_window slot | |
1368 | of HELP_EVENTs for the frame, and the `arg' slot for the help | |
1369 | string. | |
1370 | ||
1371 | * xmenu.c (menu_highlight_callback): Store help string in the | |
1372 | `arg' member of the input event; don't cons. | |
1373 | (menubar_selection_callback): Use the `arg' slot of input events | |
1374 | to queue additional information, instead of consing. | |
1375 | ||
1376 | * msdos.c (dos_rawgetc): Adapt to change of HELP_EVENTs. | |
1377 | ||
1378 | * w32term.c (w32_handle_tool_bar_click): Adapt to changes in | |
1379 | TOOL_BAR_EVENTs. | |
1380 | (w32_read_socket): Adapt to changes in HELP_EVENTs. | |
1381 | ||
1382 | * w32menu.c (menubar_selection_callback): Use the `arg' slot of | |
1383 | input events to queue additional information, instead of consing. | |
1384 | ||
1385 | * keyboard.c (kbd_buffer_gcpro): Renamed from | |
1386 | kbd_buffer_frame_or_window. Now used for all Lisp objects | |
1387 | referenced from the input queue. | |
1388 | (kbd_buffer_store_event): Always use structure assignment for | |
1389 | copying input events. Record all Lisp objects referenced from | |
1390 | events in kbd_buffer_gcpro. | |
1391 | (kbd_buffer_get_event): Construct Lisp `help-echo' events | |
1392 | differently from input events. Test for prefix menu_bar_events | |
1393 | and TOOL_BAR_EVENTs differently. Reset all slots used by an input | |
1394 | event in kbd_buffer_gcpro to nil. | |
1395 | (make_lispy_event) <TOOL_BAR_EVENT>: Treat an input event whose | |
1396 | frame_or_window is equal to its arg member as prefix events. | |
1397 | (stuff_buffered_input): Reset all slots in kbd_buffer_gcpro | |
1398 | used by an input event to nil. | |
1399 | (init_keyboard): Use two times the size of the input queue | |
1400 | for kbd_buffer_gcpro. | |
1401 | (syms_of_keyboard): Likewise. | |
1402 | ||
1403 | * emacs.c (handle_USR2_signal, handle_USR1_signal): Use | |
1404 | USER_SIGNAL_EVENT. | |
1405 | ||
1406 | * termhooks.h (struct input_event): Add member `arg'. | |
1407 | (MENU_BAR_EVENT): Renamed from menu_bar_event. | |
1408 | (USER_SIGNAL_EVENT): Renamed from user_signal. | |
1409 | ||
1410 | * xfaces.c (ASET): Remove definition. | |
1411 | ||
1412 | * lisp.h (AREF, ASET, ASIZE): New macros. | |
1413 | ||
1414 | * fontset.c (AREF, ASIZE): Remove definitions. | |
1415 | ||
1416 | * fns.c (AREF): Remove definition. | |
178c5d9c | 1417 | |
0f1a9b23 GM |
1418 | * composite.c (AREF): Remove definition. |
1419 | ||
712eaef2 GM |
1420 | 2000-07-12 Gerd Moellmann <gerd@gnu.org> |
1421 | ||
d8ee7803 GM |
1422 | * dispnew.c (redraw_overlapped_rows): Add missing local. |
1423 | (scrolling_window): Remove debug code. | |
1424 | ||
712eaef2 GM |
1425 | * xdisp.c (try_window_reusing_current_matrix, try_window_id): |
1426 | Before scrolling, turn off a mouse-highlight in the window | |
1427 | being scrolled. | |
1428 | ||
1429 | * xterm.c (x_update_window_end): Add parameter | |
1430 | MOUSE_FACE_OVERWRITTEN_P. If set, arrange for a mouse-highlight | |
1431 | redisplay in XTframe_up_to_date. | |
1432 | (x_clear_mouse_face): New function. | |
1433 | (x_redisplay_interface): Add pointer to x_clear_mouse_face. | |
1434 | ||
1435 | * dispnew.c (make_current): Preserve the mouse_face_p flag of the | |
1436 | current glyph row. | |
1437 | (update_window_line): Add parameter MOUSE_FACE_OVERWRITTEN_P. Set | |
1438 | it when any row is written to that contains glyphs highlighted in | |
1439 | mouse-face. | |
1440 | (update_window): Call the window update end hook with new | |
1441 | parameter MOUSE_FACE_OVERWRITTEN_P. | |
1442 | (direct_output_for_insert): Give up if row contains mouse-face. | |
1443 | ||
1444 | * dispextern.h (struct redisplay_interface): Add parameter | |
1445 | MOUSE_FACE_OVERWRITTEN_P to update_window_end_hook function. | |
1446 | (clear_mouse_face): New function pointer member. | |
1447 | ||
02010917 SM |
1448 | 2000-07-11 Stefan Monnier <monnier@cs.yale.edu> |
1449 | ||
1450 | * syntax.c (back_comment): Use one switch rather than a few `if's. | |
1451 | Obey open_paren_in_column_0_is_defun_start. | |
1452 | When reverting to the `slow' method, try to nicely handle the case | |
1453 | of nested comments by checking that the comment-starter we found | |
1454 | does indeed match the comment-ender. | |
1455 | (scan_sexps_forward, scan_sexps_forward): | |
1456 | Ignore excessive opening parenthesis rather than throwing an error. | |
1457 | ||
d76c03ea GM |
1458 | 2000-07-11 Gerd Moellmann <gerd@gnu.org> |
1459 | ||
1460 | * doc.c (Fsubstitute_command_keys): Handle case that a GC | |
1461 | in Fwhere_is_internal or get_keymap_1 relocates string contents. | |
1462 | ||
1463 | * dispnew.c (direct_output_forward_char): Give up if currently | |
1464 | displaying a message instead of the minibuffer contents. | |
1465 | ||
1466 | * xterm.c (x_update_window_begin): No need to turn off the mouse | |
1467 | highlight here. | |
1468 | (show_mouse_face): Set the mouse_face_p flag of glyph rows | |
1469 | depending on whether they contain glyphs highlighted in | |
1470 | mouse-face. | |
1471 | ||
1472 | * dispnew.c (row_equal_p): Add parameter MOUSE_FACE_P. If set, | |
1473 | compare the mouse_face_p flags of both rows. | |
1474 | ||
1475 | * dispextern.h (struct glyph_row): Add flag mouse_face_p. | |
1476 | ||
d55ead18 EZ |
1477 | 2000-07-11 Eli Zaretskii <eliz@is.elta.co.il> |
1478 | ||
1479 | * keyboard.c (show_help_echo): Accept additional parameter | |
1480 | ok_to_overwrite_keystroke_echo. | |
1481 | (read_char): Call show_help_echo with a zero | |
1482 | ok_to_overwrite_keystroke_echo argument. | |
1483 | * keyboard.h (show_help_echo): Update prototype of | |
1484 | show_help_echo. | |
1485 | * xmenu.c (menu_help_callback): Call show_help_echo with non-zero | |
1486 | ok_to_overwrite_keystroke_echo argument. | |
1487 | * w32menu.c (w32_menu_display_help): Call show_help_echo with | |
1488 | non-zero ok_to_overwrite_keystroke_echo argument. | |
1489 | ||
df75b1a3 GM |
1490 | 2000-07-10 Gerd Moellmann <gerd@gnu.org> |
1491 | ||
4b92c49a GM |
1492 | * xdisp.c (try_window_id): If changes are all below what is |
1493 | displayed in the window, and point is in the window, we still | |
1494 | might have to find point on the display. | |
1495 | ||
1496 | * xterm.c (x_fill_stretch_glyph_string): Consume runs of stretch | |
1497 | glyphs instead of a single one. | |
1498 | (BUILD_STRETCH_GLYPH_STRING): Call x_fill_stretch_glyph_string | |
1499 | with new argument list. | |
1500 | (x_set_glyph_string_gc): Make sure the face's GC is valid. | |
1501 | ||
df75b1a3 GM |
1502 | * keymap.c (get_keymap_1): Add comment that this function can GC. |
1503 | (where_is_internal_2, where_is_internal_1): Add GCPROs, add | |
1504 | comment that functions can GC. | |
1505 | (Fset_keymap_parent): GCPRO arg KEYMAP. | |
1506 | ||
4314cf3e EZ |
1507 | 2000-07-10 Eli Zaretskii <eliz@is.elta.co.il> |
1508 | ||
1509 | * msdos.c (XMenuActivate): After exiting the menu, restore the | |
1510 | echo area message and erase it. | |
1511 | ||
ab49ce15 KH |
1512 | 2000-07-10 Kenichi Handa <handa@etl.go.jp> |
1513 | ||
1514 | * fontset.c (Ffontset_info): Make the return value more compatible | |
1515 | with that of Emacs 20. | |
1516 | ||
090a072f GM |
1517 | 2000-07-07 Gerd Moellmann <gerd@gnu.org> |
1518 | ||
1519 | * eval.c (Fsignal): Handle case that backtrace_list is null. | |
1520 | ||
f92de4a6 KH |
1521 | 2000-07-07 Kenichi Handa <handa@etl.go.jp> |
1522 | ||
1523 | * ccl.c (Fccl_execute): Typo fixed. | |
1524 | ||
dd8888a1 GM |
1525 | 2000-07-06 Gerd Moellmann <gerd@gnu.org> |
1526 | ||
e5c81191 | 1527 | * window.c (window_loop): Add missing gcpro1 local variable. |
178c5d9c | 1528 | |
dd8888a1 GM |
1529 | * window.c (Fwindow_list): Reverse list at the end. |
1530 | (candidate_window_p): Add parameter OWINDOW. ALL_FRAMES nil | |
1531 | means allow windows on OWINDOW's frame, only. | |
1532 | (window_loop): Simplified; use Fwindow_list. | |
1533 | ||
1534 | * Makefile.in (TAGS-LISP): Don't pass `$(lispsource)' to make. | |
1535 | ||
485266d0 GM |
1536 | 2000-07-05 Gerd Moellmann <gerd@gnu.org> |
1537 | ||
1538 | * xterm.c (XTread_socket): Increment handling_signal at the start, | |
1539 | decrement it at the end. | |
1540 | ||
1541 | * eval.c (handling_signal): New variable. | |
1542 | (Fsignal): Abort if handling_signal is non-zero. | |
1543 | ||
1544 | * lisp.h (handling_signal): External declaration. | |
178c5d9c | 1545 | |
485266d0 GM |
1546 | * s/freebsd.h (WAITTYPE, WRETCODE): Put in #if 0. |
1547 | ||
80fcd514 KR |
1548 | 2000-07-05 Ken Raeburn <raeburn@gnu.org> |
1549 | ||
1550 | Sound support for NetBSD through "Linux emulation" support: | |
1551 | * config.in (HAVE_SOUNDCARD_H): Undef. | |
1552 | (HAVE_SOUND): Define if HAVE_SOUNDCARD_H. | |
1553 | * Makefile.in (LIBSOUND): New variable. | |
1554 | (LIBES): Include it. | |
1555 | * sound.c [HAVE_SOUNDCARD_H]: Include <sys/ioctl.h> and | |
1556 | <soundcard.h>. | |
1557 | (DEFAULT_SOUND_DEVICE): Define to "/dev/dsp" if not defined | |
1558 | elsewhere. | |
1559 | (vox_open): Use DEFAULT_SOUND_DEVICE. | |
1560 | * s/netbsd.h (DEFAULT_SOUND_DEVICE): Define to /dev/audio. | |
1561 | ||
d5c5cddd GM |
1562 | 2000-07-05 Gerd Moellmann <gerd@gnu.org> |
1563 | ||
1564 | * print.c (print_error_message): If Vsignaling_function is set, | |
1565 | show it in *Messages*. | |
1566 | ||
1567 | * lisp.h (Vsignaling_function): External declaration. | |
1568 | ||
1569 | * eval.c (Vsignaling_function): New variable. | |
1570 | (Fsignal): Compute it. | |
1571 | (syms_of_eval): Staticpro it. | |
1572 | ||
65171e3a DL |
1573 | 2000-07-05 Dave Love <fx@gnu.org> |
1574 | ||
1575 | * syswait.h: Use the autoconf recommended approach. Old code | |
1576 | #if'd out in case we need to revert. | |
1577 | ||
178c5d9c | 1578 | * config.in (HAVE_SYS_WAIT_H): Added. |
65171e3a | 1579 | |
e2c46326 AI |
1580 | 2000-07-05 Andrew Innes <andrewi@gnu.org> |
1581 | ||
1582 | * vm-limit.c (check_memory_limits) [REL_ALLOC]: Use real_morecore | |
1583 | when non-NULL instead of __morecore, to take account of buffer | |
1584 | memory. This also solves a problem with spurious memory warnings | |
1585 | on Windows. | |
1586 | ||
1587 | * ralloc.c: Make real_morecore non-static. | |
1588 | ||
1589 | * eval.c (internal_condition_case): Comment out abort if | |
1590 | interrupt_input_blocked is not zero. | |
1591 | ||
1592 | * makefile.nt: Add support for `bootstrap' and related targets. | |
1593 | Include minimal debug info in emacs.exe in release build. | |
1594 | Remove all dependencies on lisp.h, and fixup some others. | |
1595 | ||
1596 | * w32.c (init_environment): Install code from 20.7 for providing | |
1597 | default values for environment variables, based on the | |
1598 | executable's own location. | |
1599 | (map_w32_filename): Handle filenames that are longer than | |
1600 | MAX_PATH. | |
1601 | (sys_socket): Install socket inheritance bug fix from 20.7. | |
1602 | ||
1603 | * alloca.c [emacs]: Include lisp.h (needed by atimer.h included | |
1604 | here via blockinput.h). | |
1605 | ||
a027a91b SM |
1606 | 2000-07-05 Stefan Monnier <monnier@cs.yale.edu> |
1607 | ||
e4b31601 SM |
1608 | * w32menu.c (w32_menu_display_help): |
1609 | * xmenu.c (menu_help_callback): Use show_help_echo. | |
a027a91b SM |
1610 | |
1611 | * keyboard.h (show_help_echo): Declare. | |
1612 | ||
1613 | * keyboard.c (show_help_echo): New function, extracted from read_char. | |
1614 | Feval its `msg' argument if it's a cons cell. | |
1615 | (read_char): Use it. | |
4cf8d9d5 | 1616 | (follow_key): Pass `autoload' to get_keyelt. |
a027a91b | 1617 | |
178c5d9c | 1618 | * xterm.c (note_mode_line_highlight, note_mouse_highlight) |
a027a91b | 1619 | (note_tool_bar_highlight, XTread_socket): |
178c5d9c | 1620 | * msdos.c (IT_note_mode_line_highlight, IT_note_mouse_highlight) |
a027a91b SM |
1621 | (dos_rawgetc): |
1622 | * w32term.c (note_mode_line_highlight, note_mouse_highlight) | |
1623 | (note_tool_bar_highlight, w32_read_socket): | |
1624 | Do not gratuitously ignore non-string `help-echo' properties. | |
1625 | ||
88d75730 GM |
1626 | 2000-07-05 Gerd Moellmann <gerd@gnu.org> |
1627 | ||
969f7e79 GM |
1628 | * eval.c (Feval): Put check for interrupt_input_block in #if 0. |
1629 | ||
71201b00 GM |
1630 | * window.c (delete_all_subwindows): Reset Vwindow_list. |
1631 | ||
88d75730 GM |
1632 | * xterm.c (x_append_glyph, x_append_composite_glyph) |
1633 | (x_produce_image_glyph, x_append_stretch_glyph): Accomodate to | |
1634 | changes in struct glyph starting 1999-12-27. Some bit-fields of | |
1635 | struct glyph were not set, which made glyphs unequal when compared | |
1636 | with GLYPH_EQUAL_P. Redisplay outputs such glyphs, and flickering | |
1637 | effects were the result. This also depended on the contents of | |
1638 | memory returned by xmalloc. If flickering happens again, activate | |
1639 | the code in clear_glyph_row that's in #if 0. If the flickering is | |
1640 | gone with that, chances are that it is caused by something | |
1641 | similar. | |
1642 | ||
1643 | * dispnew.c (clear_glyph_row): Add debug code in #if 0. | |
178c5d9c | 1644 | |
88d75730 GM |
1645 | * dispextern.h: Add some comments. |
1646 | ||
1647 | * window.c (add_window_to_list): Add parameter LIST. | |
1648 | (window_list): Order list so that, for each frame, windows are | |
1649 | in canonical order, and so that frames appear in the list in | |
1650 | the order given by Vframe_list. | |
1651 | (next_window): Reverse the handling of NEXT_P. | |
1652 | ||
53654733 GM |
1653 | 2000-07-04 Gerd Moellmann <gerd@gnu.org> |
1654 | ||
87efd256 GM |
1655 | * window.c (Vwindow_list): New variable. |
1656 | (make_window, delete_window): Set Vwindow_list to nil. | |
1657 | (check_window_containing): New function. | |
1658 | (window_from_coordinates): Rewritten. | |
1659 | (add_window_to_list, window_list, candidate_window_p) | |
1660 | (decode_next_window_args, next_window): New functions. | |
1661 | (Fnext_window, Fprevious_window): Rewritten in terms of | |
1662 | next_window. | |
1663 | (Fwindow_list): New function. | |
1664 | (Fother_window): Cleaned up. | |
1665 | (foreach_window): Add a longer "variable argument list". Let | |
1666 | callback function return 0 to indicate that cycling over windows | |
1667 | should stop. | |
1668 | (foreach_window_1): Likewise. | |
1669 | (freeze_window_start): Return int. | |
1670 | (init_window): New function. | |
1671 | (syms_of_window): Staticpro Vwindow_list and defsubr Swindow_list. | |
1672 | ||
1673 | * emacs.c (handle_USR1_signal, handle_USR2_signal) Clear | |
1674 | input_event with bzero. | |
1675 | (main): Call init_window. | |
1676 | ||
53654733 GM |
1677 | * keymap.c (get_keyelt): Temporarily inhibit GC while evaluating |
1678 | a menu filter. | |
1679 | ||
4a8c194f KH |
1680 | 2000-07-04 Kenichi Handa <handa@etl.go.jp> |
1681 | ||
1682 | * composite.h (make_composition_value_copy): Extern it. | |
1683 | ||
1684 | * composite.c (make_composition_value_copy): New function. | |
1685 | ||
1686 | * editfns.c (Fformat): While copying text properties, make each | |
1687 | composition property value a copy. | |
1688 | ||
1689 | * fns.c (concat): While copying text properties, make each | |
1690 | composition property value a copy. | |
1691 | ||
831a6cb0 GM |
1692 | 2000-07-03 Gerd Moellmann <gerd@gnu.org> |
1693 | ||
2f516940 GM |
1694 | * m/macppc.h (LINKER, LD_SWITCH_MACHINE) [LINUX]: Define. |
1695 | ||
178c5d9c | 1696 | * fns.c (sweep_weak_table): Mark only objects that are not |
aee625fa GM |
1697 | marked already. |
1698 | ||
831a6cb0 GM |
1699 | * frame.c (next_frame, prev_frame): If MINIBUF is a window, |
1700 | include those frames as candidates which have their focus | |
1701 | redirected to the minibuffer frame. | |
1702 | ||
d9c4f922 SM |
1703 | 2000-07-03 Stefan Monnier <monnier@cs.yale.edu> |
1704 | ||
1705 | * fns.c (Fputhash): Return `value' rather than nil. | |
1706 | ||
3780bc22 GM |
1707 | 2000-06-30 Gerd Moellmann <gerd@gnu.org> |
1708 | ||
97d176db GM |
1709 | * frame.c (next_frame): Don't check focus redirection in case |
1710 | MINIBUF is a window. Doing so excludes frames using MINIBUF | |
3780bc22 GM |
1711 | unless their focus is redirected, which contradicts the |
1712 | specification of next-frame, and leads to infinite loops in | |
1713 | certain situations when cycling through windows with next-window. | |
1714 | ||
dca9961d KH |
1715 | 2000-06-30 Kenichi Handa <handa@etl.go.jp> |
1716 | ||
1717 | * coding.c (code_convert_region): Even if the length of text is | |
1718 | zero, try to convert it if coding->type is coding_type_ccl. | |
1719 | (decode_coding_string, encode_coding_string): Likewise. | |
1720 | ||
d5483ab1 GM |
1721 | 2000-06-28 Gerd Moellmann <gerd@gnu.org> |
1722 | ||
af5c25e1 | 1723 | * xdisp.c (try_window_reusing_current_matrix): Don't try to reuse |
97d176db | 1724 | the display if windows_or_buffers_changed. |
af5c25e1 GM |
1725 | |
1726 | * dispnew.c (struct row_entry): New structure. | |
1727 | (row_entry_pool, row_entry_pool_size, row_entry_idx, row_table) | |
1728 | (row_table_size, old_lines, new_lines, old_lines_size) | |
1729 | (new_lines_size, run_pool, runs_size, runs): New variables. | |
1730 | (add_row_entry): New function. | |
1731 | (scrolling_window): Use data structures allocated with xmalloc and | |
97d176db | 1732 | held in global variables, instead of allocating them with alloca and |
af5c25e1 GM |
1733 | holding them in local variables. Use a larger hash table whose |
1734 | size depends on glyph matrix sizes. Don't use bzero to clear the | |
1735 | hash table; instead, clear used slots only. | |
1736 | ||
1737 | * fns.c (next_almost_prime): Make it externally visible. | |
1738 | ||
1739 | * lisp.h (next_almost_prime): Add prototype. | |
1740 | ||
d5483ab1 GM |
1741 | * s/isc4-0.h (sigunblock): Define. |
1742 | ||
1743 | * s/sco5.h (sigunblock): Define. | |
1744 | ||
93e40f40 DL |
1745 | 2000-06-27 Dave Love <fx@gnu.org> |
1746 | ||
1747 | * s/osf1.h (C_SWITCH_SYSTEM, LIBS_SYSTEM): Revert last change | |
1748 | (moved to osf5-0.h). | |
1749 | [!NOT_C_CODE]: Protect string.h stuff. | |
1750 | ||
1751 | * s/osf5-0.h (C_SWITCH_SYSTEM, WAIT_USE_INT, SYS_SIGLIST_DECLARED) | |
1752 | (sys_siglist, NSIG): Definitions moved here from osf1.h. | |
1753 | ||
3c4b7685 GM |
1754 | 2000-06-27 Gerd Moellmann <gerd@gnu.org> |
1755 | ||
97d176db | 1756 | * xdisp.c (resize_mini_window): Subtract the extra line spacing |
3c4b7685 GM |
1757 | below the last line from the needed window height. |
1758 | ||
32cad0aa SM |
1759 | 2000-06-26 Stefan Monnier <monnier@cs.yale.edu> |
1760 | ||
1761 | * fns.c (Fplist_member): Renamed from Fwidget_plist_member. | |
1762 | (Fwidget_get): Use it. | |
1763 | (syms_of_fns): Defsubr it. | |
1764 | ||
2c69ced2 GM |
1765 | 2000-06-26 Gerd Moellmann <gerd@gnu.org> |
1766 | ||
178c5d9c | 1767 | * xterm.c (xim_initialize) [!USE_XIM]: Don't set up the |
1d36487c GM |
1768 | display info for XIM. |
1769 | (xim_open_dpy): Likewise. | |
1770 | (xim_close_dpy): Don't free the display info's XIM. | |
1771 | ||
1772 | * xfns.c (x_window) [!USE_XIM]: Don't call create_frame_ic. | |
1773 | ||
1774 | * config.in (USE_XIM): New define. | |
1775 | ||
3fc720e4 GM |
1776 | * keymap.c (get_keyelt): For menu-items containing a `:filter |
1777 | FILTER', apply FILTER to the menu-item's definition to get the | |
1778 | real definition to use. | |
1779 | ||
1780 | * lisp.h (QCfilter): External declaration. | |
1781 | ||
2c69ced2 GM |
1782 | * xfns.c (Fimage_size): New function. |
1783 | (syms_of_xfns): Defsubr it. | |
1784 | ||
f978b2a2 AS |
1785 | 2000-06-26 Andreas Schwab <schwab@suse.de> |
1786 | ||
1787 | * coding.c (decode_coding_string): Re-fetch STRING_BYTES after | |
1788 | Fstring_as_unibyte. | |
1789 | ||
94cc7892 DL |
1790 | 2000-06-25 Dave Love <fx@gnu.org> |
1791 | ||
1792 | * term.c [!HAVE_TERMCAP_H]: Declare tputs, tgetent, tgetflag, | |
1793 | tgetnum. | |
1794 | ||
1795 | * Makefile.in (blockinput.h): Depend on atimer.h. | |
1796 | (atimer.h): Depend on systime.h. | |
1797 | ||
1798 | * blockinput.h: Protect against multiple inclusion. Include | |
1799 | atimer.h. | |
1800 | ||
1801 | * atimer.h: Protect against multiple inclusion. Include | |
1802 | systime.h. | |
1803 | ||
1804 | * lisp.h (swap_in_global_binding): Declare. | |
1805 | ||
b8c24556 KR |
1806 | 2000-06-24 Ken Raeburn <raeburn@gnu.org> |
1807 | ||
1808 | * process.c (Fopen_network_stream): Turn off atimers for duration | |
1809 | of call to connect. (Patch from Gerd.) | |
1810 | ||
8cf8560b DL |
1811 | 2000-06-23 Dave Love <fx@gnu.org> |
1812 | ||
511c7541 DL |
1813 | * ralloc.c: Maybe include unistd.h |
1814 | ||
8cf8560b DL |
1815 | * emacs.c (setgrp): Undefine before defining. |
1816 | (malloc_warning, set_time_zone_rule, index): Prototype. | |
1817 | ||
1818 | * systime.h (EMACS_GET_TIME) [!GETTIMEOFDAY_ONE_ARGUMENT]: Use | |
1819 | HAVE_STRUCT_TIMEZONE. | |
1820 | ||
1821 | * s/osf1.h: Move string.h hack here from alpha.h and make it | |
1822 | conditional. | |
1823 | (C_SWITCH_SYSTEM): Use _OSF_SOURCE, not -BSD, which clashes with | |
1824 | _XOPEN_SOURCE. | |
1825 | (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist, NSIG): Define. | |
1826 | (SOCKLEN_TYPE): Don't define. | |
1827 | ||
1828 | * m/alpha.h: Remove string.h hack. | |
1829 | ||
1830 | * s/osf5-0.h: New file. | |
1831 | ||
1832 | * filelock.c: Use feature tests for fcntl.h, string.h. Don't | |
1833 | include time.h, done by systime.h. | |
1834 | [__FreeBSD__]: Remove redundant includes. | |
1835 | ||
3fc720e4 | 1836 | * callproc.c (setpgrp): Undefine before defining. |
8cf8560b DL |
1837 | (delete_temp_file): Return Qnil to avoid warning. |
1838 | ||
1839 | * config.in (HAVE_TERM_H, HAVE_STRUCT_TIMEZONE): Add. | |
1840 | ||
1841 | * xfaces.c: Include fontset.h dependent on HAVE_WINDOW_SYSTEM, not | |
1842 | HAVE_X_WINDOWS. | |
1843 | ||
1844 | * fontset.h (free_face_fontset): Renamed from fs_free_face_fontset. | |
1845 | ||
1846 | * composite.h (compose_text): Declare. | |
1847 | ||
1848 | * xterm.c: Don't include sys/types.h unconditionally. Don't | |
1849 | protect its inclusion with !USG (following xmenu.c). | |
1850 | ||
ea055732 GM |
1851 | 2000-06-23 Gerd Moellmann <gerd@gnu.org> |
1852 | ||
1853 | * xfns.c (x_create_tip_frame): Initialize frame's colors like | |
1854 | in x_create_frame. | |
1855 | ||
74b01b80 EZ |
1856 | 2000-06-23 Eli Zaretskii <eliz@is.elta.co.il> |
1857 | ||
1858 | * coding.c (decode_eol_post_ccl): Special handling for undecided | |
1859 | and inconsistent EOL types. | |
1860 | ||
64f3a166 GM |
1861 | 2000-06-22 Gerd Moellmann <gerd@gnu.org> |
1862 | ||
16cf31f7 GM |
1863 | * xrdb.c (x_load_resources): Add default resource for scroll bar's |
1864 | trough color and main window's background color. | |
1865 | ||
178c5d9c | 1866 | * xfns.c (Fx_file_dialog) [HAVE_MOTIF_2_1]: Handle events |
16cf31f7 GM |
1867 | differently. |
1868 | ||
1869 | * xterm.h (Xt_app_con): External declaration. | |
1870 | ||
1871 | * widget.c (EmacsFrameRealize): Fix typo. | |
178c5d9c | 1872 | |
486a103d GM |
1873 | * widget.c (EmacsFrameRealize): Remove SubstructureRedirectMask. |
1874 | ||
64f3a166 GM |
1875 | * xdisp.c (handle_stop): Initialize it->add_overlay_start to zero. |
1876 | (handle_invisible_prop): Record the start of invisible text in | |
1877 | it->add_overlay_start. | |
1878 | (struct overlay_entry): Add member `overlay'. | |
1879 | (handle_overlay_change): Simplify. | |
1880 | (next_overlay_string): After having processed overlay strings at the | |
1881 | end of the buffer, record that fact in | |
1882 | it->overlay_strings_at_end_processed_p. | |
1883 | (compare_overlay_entries): If before- and after-strings come | |
1884 | from the same overlay, let before-strings come first. | |
1885 | (RECORD_OVERLAY_STRING): Record the overlay that strings come from. | |
1886 | (load_overlay_strings): Take it->add_overlay_start into account | |
1887 | when adding overlay strings. | |
1888 | ||
1889 | * dispextern.h (struct it): Add member add_overlay_start. | |
1890 | ||
bb746ea6 DL |
1891 | 2000-06-22 Dave Love <fx@gnu.org> |
1892 | ||
1893 | * s/isc3-0.h (C_SWITCH_SYSTEM): Define _XOPEN_SOURCE=500. | |
1894 | ||
1895 | * s/gnu-linux.h (C_SWITCH_SYSTEM): Don't define _XOPEN_SOURCE here. | |
1896 | ||
a8f573f3 KH |
1897 | 2000-06-22 Kenichi Handa <handa@etl.go.jp> |
1898 | ||
1899 | * ccl.c (ccl_driver) <CCL_End>: Decrement stack_idx only when it | |
1900 | is greater than 0. | |
1901 | ||
9f2bbc92 DL |
1902 | 2000-06-21 Dave Love <fx@gnu.org> |
1903 | ||
178c5d9c | 1904 | * Makefile.in (GETLOADAVG_OBJ): Removed -- LIBOBJS does it. |
9f2bbc92 | 1905 | |
3ee5041c SM |
1906 | 2000-06-21 Stefan Monnier <monnier@cs.yale.edu> |
1907 | ||
1908 | * syntax.c (back_comment): Simplify string-parity counting (with | |
1909 | the added benefit of handling multiple string-styles as long as | |
1910 | they are not intertwined). | |
1911 | Jump to the slow code as soon as a comment starter is found in | |
1912 | a "string_lossage" position. Fixes the case: " /* " /* " */. | |
1913 | ||
4c343001 DL |
1914 | 2000-06-21 Dave Love <fx@gnu.org> |
1915 | ||
1916 | * Makefile.in: Use GETLOADAVG_LIBS. | |
1917 | ||
1918 | * config.in: Add HAVE_FCNTL_H, _FILE_OFFSET_BITS, | |
1919 | _LARGEFILE_SOURCE, _LARGE_FILES, _XOPEN_SOURCE. | |
1920 | ||
e6365855 SM |
1921 | 2000-06-20 Stefan Monnier <monnier@cs.yale.edu> |
1922 | ||
1923 | * syntax.c (describe_syntax): Recognize the `n'estable bit. | |
1924 | (Fforward_comment, scan_lists): | |
1925 | Check the comstyle of single-char comment-starters. | |
1926 | (scan_sexps_forward): Don't try to recognize `half comment-enders' if | |
1927 | we're just at the beginning of the comment (f.ex with (*) ... (*)). | |
d355bd8a SM |
1928 | Check the comstyle of single-char comment-starters. |
1929 | Clarify control-flow around the Scomment case. | |
e6365855 | 1930 | |
5700d2cc DL |
1931 | 2000-06-20 Dave Love <fx@gnu.org> |
1932 | ||
d355bd8a SM |
1933 | * fns.c (make_hash_table, maybe_resize_hash_table): |
1934 | Cast arg of next_almost_prime. | |
5700d2cc | 1935 | |
178c5d9c | 1936 | * tparam.c [emacs]: Include lisp.h. |
5700d2cc DL |
1937 | |
1938 | * termcap.c [emacs]: Test HAVE_FCNTL_H, not USG5. Include lisp.h | |
1939 | and unistd.h. | |
1940 | ||
4a27bdfb GM |
1941 | 2000-06-20 Gerd Moellmann <gerd@gnu.org> |
1942 | ||
a61d762c GM |
1943 | * keyboard.c (adjust_point_for_property): Check if display |
1944 | property should be treated as intangible by looking at its | |
1945 | value. | |
1946 | ||
178c5d9c | 1947 | * xdisp.c (single_display_prop_intangible_p) |
a61d762c GM |
1948 | (display_prop_intangible_p): New functions. |
1949 | ||
1950 | * dispextern.h (display_prop_intangible_p): Add prototype. | |
1951 | ||
1952 | * xdisp.c (dump_glyph_row): Show type of glyph->object. | |
178c5d9c | 1953 | |
4a27bdfb GM |
1954 | * s/isc4-0.h (sigblock): Redefined to pass a pointer as second |
1955 | argument to sigprocmask. | |
1956 | ||
1957 | * s/sco5.h (sigblock): Redefined to pass a pointer as second | |
1958 | argument to sigprocmask. | |
1959 | ||
1960 | * syssignal.h (sigblock, sigunblock) [USG5_4]: Set | |
1961 | sigprocmask_set, and pass a pointer to it to sigprocmask. | |
1962 | ||
1963 | * sysdep.c (sigprocmask_set): New variable. | |
1964 | ||
1965 | * fileio.c (make_temp_name): Don't use `%s' in string passed to | |
1966 | report_file_error. | |
1967 | ||
427ec082 SS |
1968 | 2000-06-20 Sam Steingold <sds@gnu.org> |
1969 | ||
1970 | * xrdb.c: Don't declare xmalloc, xrealloc. | |
1971 | ||
8972fe79 | 1972 | 2000-06-20 Stefan Monnier <monnier@cs.yale.edu> |
8972fe79 SM |
1973 | |
1974 | * regex.c (re_match, re_match_2): Protect calls to alloca (0). | |
1975 | (re_comp): Cast gettext return value to avoid complaints when | |
1976 | !HAVE_LIBINTL. | |
1977 | ||
074b6efe DL |
1978 | 2000-06-20 Dave Love <fx@gnu.org> |
1979 | ||
f85c008a DL |
1980 | * m/stride.h, m/mips.h: Don't define HAVE_GETWD, |
1981 | HAVE_GETTIMEOFDAY. | |
1982 | ||
5700d2cc | 1983 | * m/ibmrt-aix.h: Don't declare HAVE_GETTIMEOFDAY, HAVE_VFORK. |
f85c008a | 1984 | |
d355bd8a | 1985 | * m/ibmrs6000.h, m/ibmps2-aix.h, m/dpx2.h: Don't declare HAVE_GETWD. |
f85c008a DL |
1986 | |
1987 | * m/alpha.h: Don't declare xmalloc, xrealloc. | |
1988 | ||
0af4f205 DL |
1989 | * s/ux4800.h: Don't declare GETTIMEOFDAY_ONE_ARGUMENT. |
1990 | ||
1991 | * s/usg5-4-2.h: Don't declare HAVE_GETWD, VFORK_RETURN_TYPE. | |
1992 | ||
1993 | * s/umips.h: Don't declare HAVE_GETWD, HAVE_GETTIMEOFDAY. | |
1994 | ||
1995 | * s/cxux.h, s/gnu-linux.h, s/iris3-6.h, s/irix3-3.h: Don't declare | |
1996 | HAVE_GETWD. | |
1997 | ||
074b6efe DL |
1998 | * keyboard.h (poll_for_input_1): Declare. |
1999 | ||
2000 | * getloadavg.c: Don't define NLIST_STRUCT (handled by configure). | |
2001 | ||
2002 | * alloc.c (xmalloc, xrealloc, xfree): Define using POINTER_TYPE. | |
2003 | ||
2004 | * doprnt.c: Don't declare xmalloc, xrealloc. | |
2005 | ||
2006 | * lisp.h (x_set_tool_bar_lines, free_frame_xic, compose_text) | |
2007 | (getenv, ctime, getwd): Removed. | |
2008 | (xmalloc, xrealloc, xfree): Declare using POINTER_TYPE. | |
2009 | ||
2010 | * xterm.h: Remove duplicate prototypes. Declare free_frame_xic, | |
2011 | x_set_tool_bar_lines. | |
2012 | ||
2013 | * config.in: Add HAVE_GETWD. Move some definitions above | |
2014 | machine/system includes. | |
2015 | ||
68a5e97b KH |
2016 | 2000-06-20 Kenichi Handa <handa@etl.go.jp> |
2017 | ||
95417e1e KH |
2018 | * s/bsd386.h (HAVE_GETLOADAVG): Define it as 1. |
2019 | ||
68a5e97b KH |
2020 | * xfaces.c (font_list): Handle the case that REGISTRY doesn't |
2021 | contain information about ENCODING. | |
2022 | ||
2023 | * fontset.c (FONTSET_ASCII): Use the first element of char table | |
2024 | for an ASCII font, not defalt slot. | |
2025 | (fontset_ref_via_base): If FONTSET doesn't contain information for | |
2026 | C, try the default fontset. | |
2027 | (make_fontset): Don't copy the default fontset. | |
2028 | (fontset_font_pattern): Likewise. | |
2029 | (accumulate_font_info): If ELT is nil, use the corresponding | |
2030 | element in the default fontset. | |
2031 | ||
3b4fa1b2 DL |
2032 | 2000-06-19 Dave Love <fx@gnu.org> |
2033 | ||
943e731c DL |
2034 | * syntax.c (Fparse_partial_sexp): Doc fix. |
2035 | ||
2036 | * regex.h: Test PROTOTYPES as well as __STDC__. | |
2037 | ||
3b4fa1b2 DL |
2038 | * unexalpha.c: Include errno.h, string.h, unistd.h. Don't declare |
2039 | errno, strerror. Put text after #endif in comment. | |
2040 | ||
2041 | * xdisp.c (dump_glyph_matrix): Add `static' to declaration (for | |
2042 | pcc). | |
2043 | ||
2044 | * xterm.c (x_frame_of_widget): Likewise. | |
2045 | ||
cdf0357b GM |
2046 | 2000-06-19 Gerd Moellmann <gerd@gnu.org> |
2047 | ||
2048 | * abbrev.c (syms_of_abbrev): Set buffer_default's abbrev table | |
2049 | to Vfundamental_mode_abbrev_table. | |
2050 | ||
2051 | * alloc.c (mark_object) [GC_CHECK_MARKED_OBJECTS]: Check that no | |
2052 | bogus objects are marked. This slows down GC by ~80 percent, but | |
2053 | it might be worth trying when debugging GC-related problems. | |
2054 | This feature requires conservative stack marking to be enabled. | |
2055 | ||
2056 | * xterm.c (XTread_socket) <KeyPress>: In case XmbLookupString | |
2057 | returns XLookupChars, reset `modifiers' to zero. | |
2058 | ||
998e9f8c DL |
2059 | 2000-06-19 Dave Love <fx@gnu.org> |
2060 | ||
2061 | * mktime.c: Unprotoized. | |
2062 | ||
18e21ce8 | 2063 | 2000-06-19 Richard Stallman <rms@gnu.org> |
d1504184 GM |
2064 | |
2065 | * data.c (set_internal): If variable is frame-local, | |
2066 | store the new value immediately into the frame parameter alist. | |
2067 | ||
140c4ac6 KR |
2068 | 2000-06-19 Ken Raeburn <raeburn@gnu.org> |
2069 | ||
14358466 KR |
2070 | * xfns.c (jpeg_load): Fetch error-handling data first, then fill |
2071 | in the custom handler pointer. | |
2072 | ||
140c4ac6 KR |
2073 | * keyboard.c (follow_key, read_key_sequence): Use XUINT on key |
2074 | value, or checks for CHAR_META can fail when Lisp_Object is a | |
2075 | union type. | |
2076 | * keymap.c (get_keyelt): Likewise. | |
2077 | ||
10d7bf84 KH |
2078 | 2000-06-19 Kenichi Handa <handa@etl.go.jp> |
2079 | ||
2080 | * ccl.h (struct ccl_program): New member eol_type. | |
2081 | (struct ccl_spec): New member cr_carryover. | |
2082 | ||
2083 | * ccl.c (CCL_WRITE_CHAR): Convert NL according to ccl->eol_type. | |
2084 | (setup_ccl_program): Initialize ccl->eol_type to CODING_EOL_LF. | |
2085 | ||
2086 | * coding.c (setup_coding_system) <4>: Reset member `cr_carryover'. | |
2087 | (ccl_coding_driver): On encoding, initialize ccl->eol_type. | |
2088 | (decode_eol_post_ccl): New function. | |
2089 | (decode_coding): Don't detect EOL format here for CCL based coding | |
2090 | systems. | |
2091 | (decode_coding) <coding_type_ccl>: Handle carryovered CR. Call | |
2092 | decode_eol_post_ccl after running the CCL program. | |
2093 | (code_convert_region): Don't detect EOL format here for CCL based | |
2094 | coding systems. | |
2095 | (decode_coding_string): Likewise. | |
2096 | ||
52e386c2 KR |
2097 | 2000-06-18 Ken Raeburn <raeburn@gnu.org> |
2098 | ||
2099 | * charset.c (update_charset_table): Use XINT on "iso_final_char" | |
2100 | when treating it as an integer. | |
2101 | ||
2102 | * coding.h (encode_coding_string): Declare. | |
2103 | ||
2104 | * keyboard.c (read_key_sequence): Use XINT on "pos" when treating | |
2105 | it as an integer. | |
2106 | ||
2107 | * keymap.c (Fwhere_is_internal): Rename argument "keymap" to | |
2108 | "xkeymap" to avoid shadowing the "enum map_type" value that needs | |
2109 | to be passed to get_local_map. | |
2110 | ||
2111 | * sound.c (Fplay_sound): Don't call make_number on | |
2112 | Frun_hook_with_args count argument. | |
2113 | ||
2114 | * xterm.c (x_send_scroll_bar_event): Fudge lisp object/integer | |
2115 | for lisp objects in X event structure data field, when lisp | |
2116 | objects are represented with unions. | |
2117 | (x_scroll_bar_to_input_event): Ditto. | |
2118 | ||
b357b9d4 KR |
2119 | 2000-06-16 Ken Raeburn <raeburn@gnu.org> |
2120 | ||
2121 | * xdisp.c (decode_mode_spec): In "no_value" case, do NUL | |
37d034d3 KR |
2122 | termination of string. Fix sense of test whether |
2123 | Vline_number_display_limit is an integer. | |
b357b9d4 | 2124 | |
a871441d GM |
2125 | 2000-06-16 Gerd Moellmann <gerd@gnu.org> |
2126 | ||
a9021acd GM |
2127 | * xfaces.c (syms_of_xfaces) [DEBUG_X_COLORS]: Defsubr dump_colors |
2128 | only if HAVE_X_WINDOWS. | |
2129 | ||
6344985d GM |
2130 | * keymap.c (describe_buffer_bindings): Add `\f\n' in front |
2131 | of titles. | |
2132 | ||
427ec082 | 2133 | * dispnew.c (update_frame_1): Handle case that cursor vpos is |
a871441d GM |
2134 | out of bounds. |
2135 | ||
228b083e EZ |
2136 | 2000-06-15 Eli Zaretskii <eliz@is.elta.co.il> |
2137 | ||
2138 | * unexec.c (toplevel): Fix last change, so as not to deprive MSDOS | |
2139 | of its headers. | |
2140 | ||
c25b53a2 KH |
2141 | 2000-06-15 Kenichi Handa <handa@etl.go.jp> |
2142 | ||
2143 | * coding.c (decode_coding_emacs_mule): Always set src_base at the | |
2144 | start of the while loop. | |
2145 | ||
a6981b11 GM |
2146 | 2000-06-15 Gerd Moellmann <gerd@gnu.org> |
2147 | ||
e9924e52 GM |
2148 | * atimer.c (alarm_signal_handler): Add forward declaration. |
2149 | ||
a6981b11 GM |
2150 | * data.c (set_internal): Remove debug code. |
2151 | ||
25fa6deb GM |
2152 | 2000-06-14 Gerd Moellmann <gerd@gnu.org> |
2153 | ||
dce6b995 GM |
2154 | * Makefile.in (bootstrap-temacs): Add `-I../src'. |
2155 | ||
9f817ea4 GM |
2156 | * unexec.c (toplevel) [COFF]: Include coff.h. |
2157 | ||
2158 | * s/lynxos.h: New file. | |
2159 | ||
2160 | * keymap.c (Fsingle_key_description): Enclose function key and | |
2161 | event symbol names in angle brackets. | |
2162 | ||
8a4e3c0c GM |
2163 | * xdisp.c (setup_echo_area_for_printing): Call |
2164 | message_log_maybe_newline if message_buf_print is not set. | |
2165 | ||
2166 | * print.c (printchar, strout): Don't check message_buf_print | |
427ec082 | 2167 | before calling setup_echo_area_for_printing because that |
8a4e3c0c GM |
2168 | function does something useful even when message_buf_print is |
2169 | already set. | |
2170 | ||
25fa6deb GM |
2171 | * xdisp.c (message_truncate_lines, Qmessage_truncate_lines): New |
2172 | variables. | |
2173 | (ensure_echo_area_buffers): Initialize echo buffer's | |
2174 | truncate lines setting to nil. | |
2175 | (with_echo_area_buffer): Don't set the echo buffer's truncate | |
2176 | lines setting here. | |
8a4e3c0c | 2177 | (set_message_1): Set it here instead, based on the value |
25fa6deb GM |
2178 | of message_truncate_lines. |
2179 | (resize_mini_window): Handle case that lines are truncated. | |
2180 | (syms_of_xdisp): Initialize Qmessage_truncate_lines. DEFVAR_BOOL | |
2181 | message-truncate-lines. | |
2182 | ||
2183 | * keyboard.c (read_char): Bind message-truncate-lines to t | |
2184 | while displaying a help-echo. | |
2185 | ||
2186 | * lisp.h (Qmessage_truncate_lines): External declaration. | |
2187 | ||
163dcff3 GM |
2188 | 2000-06-13 Gerd Moellmann <gerd@gnu.org> |
2189 | ||
1681ead6 GM |
2190 | * xdisp.c (Vline_number_display_limit): Renamed from |
2191 | line_number_display_limit. | |
2192 | (syms_of_xdisp): Use DEFVAR_LISP for line-number-display-limit. | |
2193 | Extend documentation string. Initialize | |
2194 | Vline_number_display_limit to nil meaning no limit. | |
2195 | (decode_mode_spec): Use Vline_number_display_limit with its new | |
2196 | meaning. | |
2197 | ||
163dcff3 GM |
2198 | * xterm.c (x_check_font) [GLYPH_DEBUG]: Add prototype. |
2199 | ||
18e21ce8 | 2200 | 2000-06-13 Richard Stallman <rms@gnu.org> |
163dcff3 GM |
2201 | |
2202 | * frame.c (Fmodify_frame_parameters): Doc fix. | |
427ec082 | 2203 | |
163dcff3 GM |
2204 | * xfns.c (x_set_frame_parameters): Comment fix. |
2205 | ||
2206 | * frame.c (store_frame_param): Call swap_in_global_binding if the | |
2207 | variable's current binding was chosen based on this frame. | |
2208 | ||
2209 | * data.c (swap_in_global_binding): New function. | |
2210 | ||
a704139d EZ |
2211 | 2000-06-13 Eli Zaretskii <eliz@is.elta.co.il> |
2212 | ||
2213 | * msdos.c (IT_write_glyphs): Don't use CODING_REQUIRE_ENCODING | |
2214 | macro, instead AND with CODING_REQUIRE_ENCODING_MASK. | |
2215 | ||
9b6610db EZ |
2216 | 2000-06-13 Eli Zaretskii <eliz@is.elta.co.il> |
2217 | ||
2218 | * msdos.h (EMACS_MSDOS_H): Renamed from MSDOS_H_. | |
2219 | ||
c68833d2 JR |
2220 | 2000-06-12 Jason Rumney <jasonr@gnu.org> |
2221 | ||
2222 | * w32bdf.h (EMACS_W32BDF_H): Renamed from __W32BDF_H__ | |
2223 | ||
2224 | * w32.h (EMACS_W32_H): Renamed from _NT_H_ | |
2225 | ||
2226 | * w32gui.h (EMACS_W32GUI_H): Renamed from __W32GUI_H__ | |
2227 | ||
2228 | * w32inevt.h (EMACS_W32INEVT_H): Renamed from __NTINEVT_H__ | |
2229 | ||
ed1056b3 GM |
2230 | 2000-06-12 Gerd Moellmann <gerd@gnu.org> |
2231 | ||
2232 | * xfaces.c (Fdump_colors) [DEBUG_X_COLORS]: New function. | |
2233 | (syms_of_xfaces): Defsubr Sdump_colors. | |
2234 | (x_free_colors): Don't treat b&w specially on default visual. | |
2235 | (x_free_dpy_colors): New function. | |
2236 | (free_face_colors): Don't check visual class; it's done | |
2237 | in x_free_colors. | |
2238 | ||
2239 | * xterm.c (x_frame_of_widget): New function. | |
2240 | (x_alloc_nearest_color_for_widget): Use it. | |
2241 | (x_copy_dpy_color): New function. | |
2242 | (x_destroy_window): Free various colors. | |
2243 | ||
5050a2ef KH |
2244 | 2000-06-12 Kenichi Handa <handa@etl.go.jp> |
2245 | ||
2246 | * ccl.h (EMACS_CCL_H): Renamed from _CCL_H. | |
2247 | ||
2248 | * charset.h (EMACS_CHARSET_H): Renamed from _CHARSET_H. | |
2249 | ||
2250 | * coding.h (EMASC_CODING_H): Renamed from _CODING_H. | |
2251 | ||
2252 | * composite.h (EMACS_COMPOSITE_H): Renamed from _COMPOSITE_H. | |
2253 | ||
2254 | * fontset.h (EMACS_FONTSET_H): Renamed from _FONTSET_H. | |
2255 | ||
fb1b041d DL |
2256 | 2000-06-11 Dave Love <fx@gnu.org> |
2257 | ||
2258 | * systime.h (EMACS_SYSTIME_H): Renamed from _SYSTIME_H. | |
2259 | ||
ff96b5f4 EZ |
2260 | 2000-06-11 Eli Zaretskii <eliz@is.elta.co.il> |
2261 | ||
2262 | * msdos.h: Don't use _MSDOS_H_ as a symbol, use MSDOS_H_ instead. | |
2263 | ||
db8eeecd GM |
2264 | 2000-06-11 Gerd Moellmann <gerd@gnu.org> |
2265 | ||
ed1056b3 | 2266 | * xmenu.c (xmenu_show): Cast second parameter of lw_popup_menu |
db8eeecd GM |
2267 | to `XEvent *'. |
2268 | ||
49b71c5f KH |
2269 | 2000-06-10 Kenichi Handa <handa@etl.go.jp> |
2270 | ||
c479bd55 KH |
2271 | * regex.c (MAKE_CHAR) [!emacs]: Dummy macro for non-Emacs env. |
2272 | (regex_compile): Fix the code for handling the case of single byte | |
2273 | char and multibyte char being mixed in a range within [...]. | |
2274 | ||
ff6a65c2 KH |
2275 | * fileio.c (Finsert_file_contents): Be sure to setup src_multibyte |
2276 | and dst_multibyte members of coding. | |
2277 | ||
49b71c5f KH |
2278 | * charset.c (update_charset_table): Update the table |
2279 | bytes_by_char_head. | |
2280 | (init_charset_once): Initialize elements of bytes_by_char_head to | |
2281 | 1 except for leading codes for private charases. | |
2282 | ||
2283 | * charset.h (CHARSET_8_BIT_GRAPHIC): Define as 0x80. | |
2284 | (UNIBYTE_STR_AS_MULTIBYTE_P): Fix for an invalid multibyte | |
2285 | sequence. | |
2286 | ||
9e80b57d KR |
2287 | 2000-06-09 Ken Raeburn <raeburn@gnu.org> |
2288 | ||
2289 | * xterm.c (x_connection_closed): If dpyinfo is NULL, don't try to | |
2290 | access the data it doesn't point to. | |
2291 | ||
f83fe4b4 GM |
2292 | 2000-06-08 Gerd Moellmann <gerd@gnu.org> |
2293 | ||
2294 | * xterm.c (XTread_socket) <FocusIn>: Queue a FOCUS_IN_EVENT which | |
db8eeecd | 2295 | will be translated to a switch-frame event when reading the |
f83fe4b4 GM |
2296 | event queue. This is necessary because Emacs otherwise won't |
2297 | perform a switch-frame to a new frame until some other event, for | |
2298 | example a keystroke event, forces it to do so. This has various | |
2299 | effects, one visible being that the cursor of a frame created with | |
2300 | C-x 5 2 or switched to with a window manager key binding like | |
2301 | A-TAB stays hollow because selected_window isn't on the newly | |
2302 | focused frame until the switch-frame is performed. | |
2303 | ||
2304 | * keyboard.c (kbd_buffer_get_event): Handle FOCUS_IN_EVENT by | |
2305 | generating a switch-frame event if necessary. | |
2306 | ||
2307 | * termhooks.h (enum event_kind): Add FOCUS_IN_EVENT. | |
2308 | ||
2309 | * xdisp.c (handle_fontified_prop): Don't GCPRO local var `pos'; | |
2310 | it's an integer. | |
2311 | ||
0890801b KH |
2312 | 2000-06-08 Kenichi Handa <handa@etl.go.jp> |
2313 | ||
2314 | * fontset.c (Fset_fontset_font): The arg CHARACTER may be a | |
2315 | charset. | |
2316 | ||
173cbca8 GM |
2317 | 2000-06-07 Gerd Moellmann <gerd@gnu.org> |
2318 | ||
3091c2a6 GM |
2319 | * window.c (displayed_window_lines): Take empty lines at |
2320 | the bottom of a window into account. | |
427ec082 | 2321 | |
f38952fe GM |
2322 | * window.c (displayed_window_lines): New function. |
2323 | (Fmove_to_window_line): Use displayed_window_lines to determine | |
2324 | the number of lines to move, instead of using the window's height. | |
2325 | ||
2326 | * lread.c (readevalloop): If READCHARFUN sets point to ZV, arrange | |
2327 | to stop reading, even if the form read sets point to a different | |
2328 | value when evaluated. | |
2329 | ||
427ec082 | 2330 | * xdisp.c (display_line): Fix code deciding in which line to |
173cbca8 GM |
2331 | put the cursor. |
2332 | ||
6ba6c818 KH |
2333 | 2000-06-07 Kenichi Handa <handa@etl.go.jp> |
2334 | ||
2335 | * fileio.c (e_write): Free composition data if stored in | |
2336 | coding->cmp_data. | |
2337 | ||
5f1aea9a GM |
2338 | 2000-06-06 Gerd Moellmann <gerd@gnu.org> |
2339 | ||
666852af GM |
2340 | * xdisp.c (display_line): Set row's and iterator's |
2341 | starts_in_middle_of_char_p and ends_in_middle_of_char_p flags. | |
2342 | Set cursor even if row ends in the middle of a character. | |
2343 | (dump_glyph_row): Print values of new flags. | |
2344 | (redisplay_window) <cursor movement in unchanged window>: When | |
2345 | point has been moved forward, and PT is at the end of the cursor | |
2346 | row, don't place the cursor in the next row if the cursor row ends | |
2347 | in the middle of a character or at ZV. | |
2348 | ||
2349 | * dispextern.h (struct it): Add starts_in_middle_of_char_p. | |
2350 | (struct glyph_row): Add starts_in_middle_of_char_p and | |
2351 | ends_in_middle_of_char_p. | |
2352 | (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P): Test row's | |
2353 | ends_in_middle_of_char_p flag. | |
2354 | (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Likewise. | |
2355 | ||
d13f3e2e GM |
2356 | * term.c (append_glyph): Revert change of 2000-06-06. |
2357 | ||
2358 | * xdisp.c (display_line): Revert change of 2000-06-06. Treat | |
2359 | padding glyph not fitting on line as whole character not | |
2360 | fitting on line. | |
2361 | ||
5f1aea9a GM |
2362 | * xterm.c (x_produce_glyphs): Don't xassert `it->descent > 0'; |
2363 | this isn't true for images with `:ascent 100'. | |
2364 | ||
10cda9b0 KH |
2365 | 2000-06-06 Kenichi Handa <handa@etl.go.jp> |
2366 | ||
ed00559d KH |
2367 | * buffer.c (Fset_buffer_multibyte): Don't make the current buffer |
2368 | as modified if it is originally unmodified. | |
2369 | ||
10cda9b0 KH |
2370 | * term.c (encode_terminal_code): Change the way to check if |
2371 | terminal coding does any conversion. | |
2372 | (append_glyph): Set glyph->pixel_width correctly. | |
2373 | ||
2374 | * xdisp.c (display_line): While checking line continuation, pay | |
2375 | attention to a padding glyph. | |
2376 | ||
1969fae2 GM |
2377 | 2000-06-05 Gerd Moellmann <gerd@gnu.org> |
2378 | ||
2379 | * xdisp.c (redisplay_window): Always use set_buffer_internal_1. | |
2380 | ||
162ccef4 DL |
2381 | 2000-06-05 Dave Love <fx@gnu.org> |
2382 | ||
f19f32dd DL |
2383 | * xdisp.c: Include fontset.h. |
2384 | ||
2385 | * xfns.c (x_real_positions): Declare tmp_nchildren as unsigned. | |
2386 | ||
2387 | * xterm.c (x_calc_absolute_position): Declare nchildren unsigned. | |
2388 | ||
2389 | * dispnew.c: Conditionally include term.h. | |
2390 | ||
2391 | * coding.h: Declare code_convert_string_norecord. | |
2392 | ||
2393 | * frame.h (struct frame): Use volatile unconditionally. | |
2394 | ||
2395 | * buffer.h: Remove Vbefore_change_function, Vafter_change_function. | |
2396 | ||
2397 | * xmenu.c (menu_item_selection): Declare volatile unconditionally. | |
2398 | ||
2399 | * systime.h: Protect against multiple inclusion. | |
2400 | (timezone) [USG5_4]: Define as time_t. | |
2401 | ||
2402 | * lisp.h (DEFUN, EXFUN): Test PROTOTYPES. | |
2403 | (Foptimize_char_table, make_temp_name): Declare. | |
2404 | ||
2405 | * Makefile.in (xdisp.o): Depend on fontset.h. | |
2406 | ||
2407 | * xterm.c (x_calc_absolute_position): Declare nchildren unsigned. | |
2408 | ||
2409 | * lisp.h (DEFUN, EXFUN): Test PROTOTYPES. | |
2410 | (Foptimize_char_table, make_temp_name): Declare. | |
2411 | ||
427ec082 | 2412 | * s/irix4-0.h: |
162ccef4 DL |
2413 | * s/irix5-0.h: |
2414 | * s/netbsd.h: Don't define autoconfiscated MATHERR. | |
2415 | ||
2082fe81 DL |
2416 | 2000-06-02 Dave Love <fx@gnu.org> |
2417 | ||
2418 | * lread.c (_XOPEN_SOURCE, __EXTENSIONS__): Don't define. | |
2419 | ||
dcf671d2 GM |
2420 | 2000-06-02 Gerd Moellmann <gerd@gnu.org> |
2421 | ||
2422 | * xfaces.c (realize_x_face): When copying BASE_FACE bitwise to the | |
1969fae2 | 2423 | result face, set flags in that face indicating that colors may not |
dcf671d2 GM |
2424 | be freed. |
2425 | ||
2426 | * xterm.c (x_set_mouse_face_gc): If first glyph isn't a character | |
2427 | glyph, use the ASCII NUL character to determine the face. | |
2428 | ||
d42122a3 DL |
2429 | 2000-06-02 Dave Love <fx@gnu.org> |
2430 | ||
2431 | * sysdep.c: Conditionally include stdlib.h, unistd.h. | |
2432 | (VFORK_RETURN_TYPE): Remove. | |
427ec082 | 2433 | |
d42122a3 DL |
2434 | * config.in: Add NO_MATHERR. |
2435 | ||
dd432f16 DL |
2436 | 2000-06-01 Dave Love <fx@gnu.org> |
2437 | ||
90aa4ea8 DL |
2438 | * cmds.c (internal_self_insert): Don't check |
2439 | Vbefore_change_function, Vafter_change_function. | |
2440 | ||
2441 | * insdel.c (signal_before_change, signal_after_change): Likewise. | |
2442 | ||
2443 | * buffer.c (Vbefore_change_function, Vafter_change_function): | |
2444 | Variables and their initializations deleted. | |
2445 | ||
2330c9d4 DL |
2446 | * callint.c (Fcall_interactively): Doc fix. |
2447 | ||
dd432f16 DL |
2448 | * terminfo.c (ospeed) [HAVE_SPEED_T]: Don't declare extern. |
2449 | ||
bf9e8804 DL |
2450 | 2000-05-31 Dave Love <fx@gnu.org> |
2451 | ||
2452 | * textprop.c: Revert last change -- duplicated. | |
2453 | ||
3694b4ab GM |
2454 | 2000-05-31 Gerd Moellmann <gerd@gnu.org> |
2455 | ||
2456 | * dispnew.c (find_glyph_row_slice, swap_glyphs_in_rows): Put | |
2457 | in #if 0. | |
2458 | ||
2459 | * lisp.h (eassert) [!ENABLE_CHECKING]: Define as `(void) 0'. | |
2460 | ||
f14156cd JR |
2461 | 2000-05-31 Jason Rumney <jasonr@gnu.org> |
2462 | ||
8119aab8 JR |
2463 | * search.c (Fre_search_forward, Fre_search_backward) |
2464 | (Fposix_search_backward, Fposix_search_forward): Fix newlines in docs. | |
2465 | ||
f14156cd JR |
2466 | * w32select.c (Fw32_set_clipboard_data): Change QNil to Qnil. |
2467 | ||
4aab9be3 JR |
2468 | 2000-05-30 Jason Rumney <jasonr@gnu.org> |
2469 | ||
2470 | * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: New macros. | |
2471 | [WINDOWSNT]: Add extern for Vw32_system_coding_system. | |
2472 | ||
2473 | * dispextern.h (struct glyph) [WINDOWSNT]: Add w32_font_type | |
2474 | member. | |
2475 | ||
2476 | * fileio.c (Fread_file_name) [HAVE_NTGUI]: Use file dialog. | |
2477 | (Fread_file_name) [HAVE_NTGUI, USE_MOTIF]: Do not attempt to | |
2478 | expand a nil default_filename. | |
2479 | ||
2480 | * keyboard.c (make_lispy_event) [WINDOWS_NT]: Pass a window | |
2481 | pointer to glyph_to_pixel_coords, not a frame. | |
2482 | ||
2483 | * makefile.nt (w32fns.obj, w32menu.obj): Add charset.h and | |
2484 | coding.h to dependencies. | |
2485 | ||
2486 | * w32bdf.c (w32_load_bdf_font): Initialize font->double_byte_p. | |
2487 | ||
2488 | * w32console.c (glyph_to_pixel_coords): Change first parameter to | |
2489 | window pointer to be consistent with w32term.c and xterm.c. | |
2490 | ||
2491 | * w32fns.c: Format and doc changes to bring closer to xfns.c. | |
2492 | (VIETNAMESE_CHARSET): Define if not defined in system headers. | |
2493 | (Qline_spacing, Qcenter): New variables. | |
2494 | (Qw32_charset_*, w32_codepage_for_font): Moved from w32term.c. | |
2495 | (x_set_line_spacing): New function. | |
2496 | (x_set_frame_parameters): Use FRAME_NEW_WIDTH, FRAME_NEW_HEIGHT | |
2497 | macros. | |
2498 | (x_specified_cursor_type): New function. | |
2499 | (x_set_cursor_type): Use it. | |
2500 | (x_set_name, x_set_title): Use ENCODE_SYSTEM to encode titlebar | |
2501 | and icon strings. | |
2502 | (validate_x_resource_name, x_get_resource_string): Measure lengths | |
2503 | of external strings in bytes. | |
2504 | (w32_wnd_proc) [WM_MEASURE_ITEM]: Avoid calling | |
2505 | GetTextExtentPoint32 with NULL title. | |
2506 | (Fx_create_frame): Initialize Qline_spacing. | |
2507 | (w32_load_system_font): Initialize font->double_byte_p. | |
2508 | (x_to_w32_charset): Use Vw32_charset_info_alist. | |
2509 | (Image, busy cursor, tooltip functions): Merged changes from | |
2510 | xfns.c. Not yet functional on Windows. | |
2511 | ||
2512 | * w32gui.h (W32FontStruct): Add double_byte_p member. | |
2513 | ||
2514 | * w32inevt.c (NUM_TRANSLATED_MOUSE_BUTTONS): New constant. | |
2515 | (emacs_button_translation): Use it. | |
2516 | (do_mouse_event): Allow up to 32 mouse buttons by allowing any bit | |
2517 | in `mask' to be set. | |
2518 | ||
2519 | * w32menu.c (single_submenu, w32_menu_show): Call ENCODE_SYSTEM on | |
2520 | menu strings. | |
2521 | ||
2522 | * w32term.c: Format and doc changes to bring closer to xterm.c. | |
2523 | (w32_char_font_type): New enum. | |
2524 | (Qw32_charset_*, w32_codepage_for_font): Moved to w32fns.c. | |
2525 | (w32_per_char_metric): Use w32_char_font_type instead of unicode_p. | |
2526 | (w32_encode_char): New function. | |
2527 | (x_encode_char): Removed. | |
2528 | (x_get_glyph_and_face_encoding): Use w32_encode_char in place of | |
2529 | x_encode_char and w32_font_is_double_byte. | |
2530 | (x_produce_image_glyph): Use image_ascent. | |
2531 | (x_produce_glyphs): Use new version of w32_per_char_metric and | |
2532 | handle NULL return value. Allow extra line spacing. | |
2533 | (W32_TEXTOUT): Distinguish between Unicode and DBCS text. | |
2534 | (w32_get_glyph_overhangs): Remove unicode_p param. Use | |
2535 | w32_font_type member of glyph instead. | |
2536 | (x_draw_glyph_string): Draw underline and strike-out for BDF fonts. | |
2537 | (fast_find_position): Make sure not to consider rows not visible | |
2538 | in the window. | |
2539 | (w32_read_socket) [WM_MENUSELECT]: Cannot call | |
2540 | w32_menu_display_help with input blocked, as it can abort. | |
2541 | (x_display_and_set_cursor): Choose cursor depending | |
2542 | on buffer-local value of cursor_type. | |
2543 | (x_draw_bar_cursor): Add parameter WIDTH. | |
2544 | ||
2545 | * w32term.h (CP_DEFAULT): Define. | |
2546 | (Fx_display_color_p, Fx_display_grayscale_p, image_ascent): Declare. | |
2547 | ||
10fc3187 GM |
2548 | 2000-05-30 Gerd Moellmann <gerd@gnu.org> |
2549 | ||
2550 | * search.c (Fre_search_forward, Fre_search_backward) | |
2551 | (Fposix_search_backward, Fposix_search_forward): Doc fix. | |
2552 | ||
d0555360 KH |
2553 | 2000-05-30 Kenichi Handa <handa@etl.go.jp> |
2554 | ||
2555 | * coding.c (detect_coding_iso2022): Fix code for checking | |
2556 | CODING_CATEGORY_MASK_ISO_8_2. | |
2557 | ||
f1ad044f SM |
2558 | 2000-05-29 Stefan Monnier <monnier@cs.yale.edu> |
2559 | ||
2560 | * regex.c (PREFETCH_NOLIMIT): New function. | |
2561 | (re_match_2_internal): Use it and adjust the end_match_2 logic. | |
2562 | ||
84ec3b4b GM |
2563 | 2000-05-29 Gerd Moellmann <gerd@gnu.org> |
2564 | ||
66254a13 GM |
2565 | * syntax.c (find_defun_start): Move test for |
2566 | open_paren_in_column_0_is_defun_start outside of the loop. | |
2567 | ||
49e70dec GM |
2568 | * xdisp.c (redisplay_window): Really switch buffers when |
2569 | displaying mode lines, and temporarily set selected_frame to the | |
2570 | frame of the window that's redisplayed. | |
2571 | ||
84ec3b4b GM |
2572 | * xfaces.c (free_realized_faces): Block/unblock input. |
2573 | (free_realized_multibyte_face): Ditto. | |
2574 | ||
869a3a14 DL |
2575 | 2000-05-29 Dave Love <fx@gnu.org> |
2576 | ||
2577 | * textprop.c (Qkeymap): New variable. | |
2578 | (syms_of_textprop): Intern it. | |
2579 | ||
2580 | * keymap.c: Include intervals.h. | |
2581 | (Fkey_binding, Fwhere_is_internal): Deal with `keymap' property. | |
2582 | ||
2583 | * Makefile.in (keymap.o): Depend on intervals.h. | |
2584 | ||
2585 | * keyboard.c (menu_bar_items, tool_bar_items) | |
2586 | (Fexecute_extended_command): Deal with `keymap' property. | |
2587 | (read_key_sequence): Track map from `keymap' property as well as | |
2588 | `local_map'. | |
2589 | ||
2590 | * intervals.c (get_local_map): Extra arg to allow looking for | |
2591 | `keymap' too. | |
2592 | ||
2593 | * intervals.h (map_property): New enum. | |
2594 | (get_local_map): Extra arg using it. | |
2595 | (Qkeymap): Declare. | |
2596 | ||
84ec3b4b | 2597 | * lisp.h (get_local_map): Don't declare here. |
869a3a14 | 2598 | |
89d0c844 KH |
2599 | 2000-05-29 Kenichi Handa <handa@etl.go.jp> |
2600 | ||
2601 | * Makefile.in (callproc.o): Depend on composite.h. | |
2602 | ||
2603 | * callproc.c: Include composite.h. | |
2604 | (Fcall_process): Handle composition correctly. | |
2605 | ||
2606 | * coding.h (coding_allocate_composition_data): Extern it. | |
2607 | (coding_restore_composition): Likewise. | |
2608 | ||
2609 | * coding.c (DECODE_COMPOSITION_START): If coding->cmp_data is not | |
2610 | yet allocated, finish decoding with result | |
2611 | CODING_FINISH_INSUFFICIENT_CMP. | |
2612 | (coding_allocate_composition_data): Make it non-static. | |
2613 | (coding_restore_composition): Likewise. | |
2614 | ||
797a084a EZ |
2615 | 2000-05-29 Eli Zaretskii <eliz@is.elta.co.il> |
2616 | ||
2617 | * charset.c (syms_of_charset): Revert last change. | |
2618 | ||
cf872af5 EZ |
2619 | 2000-05-28 Eli Zaretskii <eliz@is.elta.co.il> |
2620 | ||
2621 | * term.c (produce_glyphs): Treat characters from the eight-bit-* | |
d7d0dac0 SM |
2622 | charsets as unibyte, with 1-column screen width. Sent by Kenichi |
2623 | Handa. | |
cf872af5 | 2624 | |
5b1ae051 EZ |
2625 | 2000-05-28 Eli Zaretskii <eliz@is.elta.co.il> |
2626 | ||
2627 | * charset.c (syms_of_charset): Set width of character sets | |
2628 | eight-bit-control and eight-bit-graphic to 1 column. | |
2629 | ||
34ec9ebe GM |
2630 | 2000-05-26 Gerd Moellmann <gerd@gnu.org> |
2631 | ||
2632 | * config.in (HAVE_SPEED_T): New define. | |
2633 | ||
2634 | * sysdep.c, terminfo.c (ospeed) [HAVE_SPEED_T]: Declare as | |
2635 | `extern speed_t'. | |
2636 | ||
dd854dc2 DL |
2637 | 2000-05-26 Dave Love <fx@gnu.org> |
2638 | ||
2639 | * coding.c (shrink_decoding_region): Initialize eol_conversion. | |
2640 | ||
2641 | * data.c (Qsubrp, Qmany, Qunevalled): New variables. | |
2642 | (Fsubr_arity): New function. | |
2643 | (syms_of_data): Install them. | |
2644 | ||
ba9f8f95 KH |
2645 | 2000-05-26 Kenichi Handa <handa@etl.go.jp> |
2646 | ||
0f3e0672 KH |
2647 | * charset.c (init_charset_once): Set the table bytes_by_char_head |
2648 | correctly. | |
2649 | ||
cebefb44 KH |
2650 | * fontset.c (syms_of_fontset): Adjust the font name for ascii of |
2651 | the default fontset to what Emacs uses by default. | |
0f3e0672 KH |
2652 | (check_registry_encoding): This function deleted. |
2653 | (Fset_fontset_font): Remove the adhoc condition for the default | |
2654 | fontset. Allow cons in FONTNAME. | |
cebefb44 | 2655 | |
0f3e0672 KH |
2656 | * fns.c (map_char_table): Ignore char-table entries for |
2657 | charsets eight-bit-control and eight-bit-graphic. | |
ba9f8f95 | 2658 | |
7a18af49 KR |
2659 | 2000-05-25 Ken Raeburn <raeburn@gnu.org> |
2660 | ||
2661 | * emacs.c (main): Initialize keyboard syms before initializing | |
2662 | window code, so face names are available. | |
2663 | ||
d2af47df SM |
2664 | 2000-05-25 Stefan Monnier <monnier@cs.yale.edu> |
2665 | ||
2666 | * regex.c (at_begline_loc_p): Also recognize the \\(?:^ case | |
2667 | of an anchor at the beginning of a shy-group. | |
2668 | ||
fc6a6a4e GM |
2669 | 2000-05-25 Gerd Moellmann <gerd@gnu.org> |
2670 | ||
2671 | * xdisp.c (handle_invisible_prop): Don't try to skip over | |
2672 | invisible text if end of text is already reached. | |
2673 | ||
005f0d35 DL |
2674 | 2000-05-25 Dave Love <fx@gnu.org> |
2675 | ||
02513cdd DL |
2676 | * xdisp.c (Fdump_glyph_matrix): Declare the arg. |
2677 | ||
005f0d35 DL |
2678 | * coding.c (encode_eol): Add null statement after label. |
2679 | ||
89f6ca4e EZ |
2680 | 2000-05-25 Eli Zaretskii <eliz@is.elta.co.il> |
2681 | ||
2682 | * w16select.c (Fw16_set_clipboard_data): Fix the change from | |
2683 | 2000-05-20. | |
2684 | ||
a4e1759e KH |
2685 | 2000-05-25 Kenichi Handa <handa@etl.go.jp> |
2686 | ||
2687 | * ccl.c (ccl_driver): Fix previous change. | |
2688 | ||
eacfd7fe KH |
2689 | 2000-05-25 Kenichi Handa <handa@etl.go.jp> |
2690 | ||
46ab33a9 KH |
2691 | * coding.c (run_pre_post_conversion_on_str): Set point to the |
2692 | beginning of buffer before calling coding->post_read_conversion. | |
2693 | (decode_coding_string): Give correct args to | |
2694 | run_pre_post_conversion_on_str. | |
2695 | (encode_coding_string): Likewise. | |
2696 | ||
eacfd7fe KH |
2697 | * ccl.c (ccl_driver) <CCL_ReadMultibyteChar2> |
2698 | <CCL_WriteMultibyteChar2>: Handle charsets eight-bit-control and | |
2699 | eight-bit-graphic correctly. | |
2700 | ||
f8569325 DL |
2701 | 2000-05-24 Kenichi HANDA <handa@etl.go.jp> |
2702 | ||
2703 | * fileio.c (Finsert_file_contents): Even if a file is not found, | |
2704 | execute codes for setting up coding system. Call | |
2705 | after-insert-file-functions unconditionally. | |
2706 | ||
04545643 GM |
2707 | 2000-05-24 Gerd Moellmann <gerd@gnu.org> |
2708 | ||
2709 | * callproc.c, emacs.c, sysdep.c (setpgrp): Don't define if USG and | |
2710 | BSD_PGRPS are not defined. | |
2711 | ||
747d90ea KH |
2712 | 2000-05-24 Kenichi Handa <handa@etl.go.jp> |
2713 | ||
2714 | * charset.c (update_charset_table): Accept nil in LONG_NAME and | |
2715 | DESCRIPTION. | |
2716 | (syms_of_charset): Avoid building same strings. | |
2717 | ||
716e3b88 GM |
2718 | 2000-05-23 Gerd Moellmann <gerd@gnu.org> |
2719 | ||
2720 | * lread.c (Fload): Add a comment about the meaning of | |
2721 | Vuser_init_file being t. | |
2722 | ||
2723 | * puresize.h (BASE_PURESIZE): Increase to 675000. | |
2724 | ||
2725 | * s/gnu-linux.h (setpgrp): Don't define it here because this | |
2726 | prevents compilation on GNU/Linux systems with glib 2.2. | |
2727 | ||
2728 | * callproc.c, emacs.c, sysdep.c (setpgrp) [HAVE_SETPGID]: Define | |
2729 | as setpgid. | |
427ec082 | 2730 | |
9aeb39fa EZ |
2731 | 2000-05-23 Eli Zaretskii <eliz@is.elta.co.il> |
2732 | ||
2733 | * Makefile.in (SOME_MACHINE_LISP): Add disp-table.elc, | |
2734 | dos-vars.elc, ccl.elc, and codepage.elc, all loaded by the MS-DOS | |
2735 | version. | |
2736 | (MSDOS_SUPPORT): Add dos-vars.elc, ccl.elc, and codepage.elc. | |
2737 | ||
29ced61b KH |
2738 | 2000-05-23 Kenichi Handa <handa@etl.go.jp> |
2739 | ||
0574a2ed KH |
2740 | * syntax.c (skip_chars): Use FETCH_STRING_CHAR_ADVANCE |
2741 | unconditionally. | |
2742 | ||
3d80f24d KH |
2743 | * msdos.c (IT_write_glyphs): Set coding->src_multibyte to 1. |
2744 | ||
2745 | * term.c (encode_terminal_code): Set coding->src_multibyte | |
2746 | properly. | |
2747 | ||
29ced61b KH |
2748 | * coding.c (encode_eol): Fix a bug of DOS style EOL encoding. |
2749 | ||
d7e00792 KH |
2750 | 2000-05-22 Kenichi Handa <handa@etl.go.jp> |
2751 | ||
c9d80d38 KH |
2752 | * keyboard.c (read_char): Allow character codes 128..255 to be |
2753 | handled by input-method-function. | |
2754 | ||
d7e00792 KH |
2755 | * insdel.c (adjust_markers_for_replace): Fix previous change. |
2756 | (adjust_after_replace): If PREV_TEXT is nil, call | |
2757 | adjust_markers_for_insert, not adjust_markers_for_replace. | |
2758 | ||
087121cc | 2759 | 2000-05-20 NIIBE Yutaka <gniibe@mri.co.jp> |
427ec082 | 2760 | |
087121cc GM |
2761 | * s/gnu-linux.h (UNIX98_PTYS) [HAVE_GRANDPT]: Define. |
2762 | (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_OPEN, PTY_TTY_NAME_SPRINTF) | |
2763 | [HAVE_GRANDPT]: Define. | |
2764 | (C_SWITCH_SYSTEM): Add -D_XOPEN_SOURCE. | |
2765 | ||
2766 | * sysdep.c (setup_pty): Treat case that UNIX98_PTYS is defined | |
2767 | like SYSV_PTYS. | |
2768 | ||
2769 | * config.in (HAVE_GRANDPT, HAVE_GETPT): New defines. | |
2770 | ||
2771 | * process.c (toplevel) [UNIX98_PTYS]: Include stdlib.h. | |
2772 | ||
c9671f81 KH |
2773 | 2000-05-20 Kenichi Handa <handa@etl.go.jp> |
2774 | ||
2775 | The following changes are to handle 8-bit characters in a | |
2776 | multibyte buffer/string without facing with byte combining | |
2777 | problem. Two new charsets eight-bit-control (for 0x80..0x9F) and | |
2778 | eight-bit-graphic (for 0xA0..0xFF) are introduced. | |
2779 | ||
2780 | * Makefile.in (fns.o): Depend on charset.h. | |
2781 | ||
2782 | * alloc.c (Fmake_byte_code): If BYTECODE-STRING is multibyte, | |
2783 | convert it to unibyte. | |
2784 | (make_string): Use parse_str_as_multibyte, not chars_in_text. | |
2785 | ||
2786 | * buffer.c (advance_to_char_boundary): Don't use DEC_POS to find a | |
2787 | apparent char boundary. | |
2788 | (Fset_buffer_multibyte): Convert 8-bit characters in the range | |
2789 | 0x80..0x9F to/from multibyte form. | |
2790 | ||
2791 | * bytecode.c (Fbyte_code): If arg BYTESTR is multibyte, convert it | |
2792 | to unibyte. | |
2793 | ||
2794 | * callproc.c (Fcall_process): Always encode an argument string if | |
2795 | it is multibyte. Setup src_multibyte and dst_multibyte members of | |
2796 | process_coding properly. | |
ce75fd23 | 2797 | |
c9671f81 KH |
2798 | * category.c (Fmodify_category_entry): Use SPLIT_CHAR, not |
2799 | SPLIT_NON_ASCII_CHAR. | |
2800 | ||
2801 | * ccl.c (CCL_WRITE_CHAR): Be sure to write single byte characters | |
2802 | as is. | |
2803 | (CCL_MAKE_CHAR): Use MAKE_CHAR, not MAKE_NON_ASCII_CHAR. | |
2804 | ||
2805 | * charset.c (Qeight_bit_control, Qeight_bit_graphic): New | |
2806 | variables. | |
2807 | (SPLIT_CHARACTER_SEQ): This macro deleted. | |
2808 | (SPLIT_MULTIBYTE_SEQ): Assume that multibyte sequence at STR is | |
2809 | valid. | |
2810 | (CHAR_COMPONENTS_VALID_P): Handle new charsets; eight-bit-control | |
2811 | and eight-bit-graphic. | |
2812 | (char_to_string): Likewise. Signal an error for too large | |
2813 | character code. | |
2814 | (char_printable_p): Return 0 for 8-bit characters. | |
2815 | (update_charset_table): Update iso_charset_table only when a final | |
2816 | character is non-negative. | |
2817 | (find_charset_in_text): Renamed from find_charset_in_str. | |
2818 | Arguments and return value changed. Callers changed. | |
2819 | (Fdefine_charset): Args ISO-FINAL-CHAR and ISO-GRAPHIC-PLANE can | |
2820 | be -1 if CHARSET is used only internally. | |
2821 | (Fmake_char_internal): Handle new charsets; eight-bit-control and | |
2822 | eight-bit-graphic. | |
2823 | (Fcharset_after): Simplified. | |
2824 | (char_valid_p): Use SPLIT_CHAR, not SPLIT_NON_ASCII_CHAR. | |
2825 | (char_bytes): Return 2 for chars of the range 0xA0..0xFF. | |
2826 | (multibyte_chars_in_text): Simplified by assuming there's no | |
2827 | invalid multibyte sequence. | |
2828 | (parse_str_as_multibyte, str_as_multibyte, str_to_multibyte, | |
2829 | str_as_unibyte): New functions. | |
2830 | (Fstring): Simpified by assuming that byte combining never | |
2831 | happens. | |
2832 | (init_charset_once): Initialization for | |
2833 | LEADING_CODE_8_BIT_CONTROL. | |
2834 | (syms_of_charset): Intern and staticpro Qeight_bit_control and | |
2835 | Qeight_bit_graphic. Include them in Vcharset_list. Make charsets | |
2836 | eight-bit-control and eight-bit-graphic. | |
2837 | ||
2838 | * charset.h (LEADING_CODE_8_BIT_CONTROL, CHARSET_8_BIT_CONTROL, | |
2839 | CHARSET_8_BIT_GRAPHIC): New macros. | |
2840 | (SINGLE_BYTE_CHAR_P): Make it faster by using casting. | |
2841 | (CHARSET_ISO_GRAPHIC_PLANE): Use XINT instead of XFASTINT. | |
2842 | (CHARSET_REVERSE_CHARSET): Likewise. | |
2843 | (CHARSET_VALID_P): Handle new charsets; eight-bit-control and | |
2844 | eight-bit-graphic. | |
2845 | (BYTES_BY_CHAR_HEAD, WIDTH_BY_CHAR_HEAD): Optimize for ASCII. | |
2846 | (CHAR_CHARSET, MAKE_CHAR, SPLIT_CHAR, CHAR_BYTES): Likewise. | |
2847 | (PARSE_MULTIBYTE_SEQ) [BYTE_COMBINING_DEBUG]: Abort if we | |
2848 | encounter an invalid multibyte sequence. | |
2849 | (PARSE_MULTIBYTE_SEQ) [not BYTE_COMBINING_DEBUG]: Assume multibyte | |
2850 | sequence is always valid. | |
2851 | (MAKE_NON_ASCII_CHAR, SPLIT_NON_ASCII_CHAR): These macros Deleted. | |
2852 | (UNIBYTE_STR_AS_MULTIBYTE_P, MULTIBYTE_STR_AS_UNIBYTE_P): New | |
2853 | macros. | |
2854 | (CHAR_STRING): For 8-bit characters, call char_to_string. | |
2855 | (INC_POS) [not BYTE_COMBINING_DEBUG]: Faster version. Assume | |
2856 | multibyte sequence is always valid. | |
2857 | (BUF_INC_POS) [not BYTE_COMBINING_DEBUG]: Likewise. | |
2858 | (parse_str_as_multibyte, str_as_multibyte, str_to_multibyte, | |
2859 | str_as_unibyte): Extern them. | |
2860 | (BCOPY_SHORT): Fix a bug. | |
2861 | (CHAR_LEN): This macro deleted. Callers changed to use | |
2862 | CHAR_BYTES. | |
2863 | (FETCH_STRING_CHAR_ADVANCE): Check multibyteness of STRING. | |
2864 | (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): New macro. | |
2865 | (FETCH_CHAR_ADVANCE): Check multibyteness of the current buffer. | |
2866 | ||
bd4bde7f | 2867 | * coding.c (ONE_MORE_BYTE, TWO_MORE_BYTES): Set coding->result to |
c9671f81 KH |
2868 | CODING_FINISH_INSUFFICIENT_SRC if there's not enough source. |
2869 | (ONE_MORE_CHAR, EMIT_CHAR, EMIT_ONE_BYTE, EMIT_TWO_BYTE, | |
2870 | EMIT_BYTES): New macros. | |
2871 | (THREE_MORE_BYTES, DECODE_CHARACTER_ASCII, | |
2872 | DECODE_CHARACTER_DIMENSION1, DECODE_CHARACTER_DIMENSION2): These | |
2873 | macros deleted. | |
2874 | (CHECK_CODE_RANGE_A0_FF): This macro deleted. | |
2875 | (detect_coding_emacs_mule): Use UNIBYTE_STR_AS_MULTIBYTE_P to | |
2876 | check the validity of multibyte sequence. | |
2877 | (decode_coding_emacs_mule): New function. | |
2878 | (encode_coding_emacs_mule): New macro. | |
2879 | (detect_coding_iso2022): Use ONE_MORE_BYTE to fetch a byte from | |
2880 | the source. | |
2881 | (DECODE_ISO_CHARACTER): Just return a character code. | |
2882 | (DECODE_COMPOSITION_START): Set coding->result instead of result. | |
2883 | (decode_coding_iso2022, decode_coding_sjis_big5, decode_eol): Use | |
2884 | EMIT_CHAR to produced decoded characters. Exit the loop only by | |
2885 | macros ONE_MORE_BYTE or EMIT_CHAR. Don't handle the case of last | |
2886 | block here. | |
2887 | (ENCODE_ISO_CHARACTER): Don't translate character here. Produce | |
2888 | only position codes for an invalid character. | |
2889 | (encode_designation_at_bol): Return new destination pointer. 5th | |
2890 | arg DSTP is changed to DST. | |
2891 | (encode_coding_iso2022, decode_coding_sjis_big5): Get a character | |
2892 | from the source by ONE_MORE_CHAR. Don't handle the case of last | |
2893 | block here. | |
2894 | (DECODE_SJIS_BIG5_CHARACTER, ENCODE_SJIS_BIG5_CHARACTER): These | |
2895 | macros deleted. | |
2896 | (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8, | |
2897 | detect_coding_utf_16, detect_coding_ccl): Use ONE_MORE_BYTE and | |
2898 | TWO_MORE_BYTES to fetch a byte from the source. | |
2899 | (encode_eol): Pay attention to coding->src_multibyte. | |
2900 | (detect_coding, detect_eol): Preserve members src_multibyte and | |
2901 | dst_multibyte. | |
2902 | (DECODING_BUFFER_MAG): Return 2 even for coding_type_raw_text. | |
2903 | (encoding_buffer_size): Set magnification to 3 for all coding | |
2904 | systems that require encoding. | |
2905 | (ccl_coding_driver): For decoding, be sure that the result is | |
2906 | valid multibyte sequence. | |
2907 | (decode_coding): Initialize coding->errors and coding->result. | |
2908 | For emacs-mule, call decode_coding_emacs_mule. For no-conversion | |
2909 | and raw-text, always call decode_eol. Handle the case of last | |
2910 | block here. If not coding->dst_multibyte, convert the resulting | |
2911 | sequence to unibyte. | |
2912 | (encode_coding): Initialize coding->errors and coding->result. | |
2913 | For emacs-mule, call encode_coding_emacs_mule. For no-conversion | |
2914 | and raw-text, always call encode_eol. Handle the case of last | |
2915 | block here. | |
2916 | (shrink_decoding_region, shrink_encoding_region): Detect cases | |
2917 | that we can't skip data more rigidly. | |
2918 | (code_convert_region): Setup src_multibyte and dst_multibyte | |
2919 | members of coding. For decoding, if the buffer is multibyte, | |
2920 | convert the source sequence to unibyte in advance. For encoding, | |
2921 | if the buffer is multibyte, convert the resulting sequence to | |
2922 | multibyte afterward. | |
2923 | (run_pre_post_conversion_on_str): New function. | |
2924 | (code_convert_string): Deleted and divided into the following two. | |
2925 | (decode_coding_string, encode_coding_string): New functions. | |
2926 | (code_convert_string1, code_convert_string_norecord): Call one of | |
2927 | above. | |
2928 | (Fdecode_sjis_char, Fdecode_big5_char): Use MAKE_CHAR instead of | |
2929 | MAKE_NON_ASCII_CHAR. | |
2930 | (Fset_terminal_coding_system_internal, | |
2931 | Fset_safe_terminal_coding_system_internal): Setup src_multibyte | |
2932 | and dst_multibyte members. | |
2933 | (init_coding_once): Initialize iso_code_class with new enum | |
2934 | ISO_control_0 and ISO_control_1. | |
2935 | ||
2936 | * coding.h (enum iso_code_class_type): Member ISO_control_code is | |
2937 | devided into ISO_control_0 and ISO_control_1. | |
2938 | (struct coding_system): New members src_multibyte, dst_multibyte, | |
2939 | errors, and result. Delete member fake_multibyte. | |
2940 | (CODING_REQUIRE_DECODING): Return 1 if coding->dst_multibyte is | |
2941 | nonzero. | |
2942 | (CODING_REQUIRE_ENCODING): Return 1 if coding->src_multibyte is | |
2943 | nonzero. | |
2944 | ||
2945 | * data.c (Faref): Use SPLIT_CHAR instead of SPLIT_NON_ASCII_CHAR. | |
2946 | (Faset): Likewise. | |
2947 | ||
2948 | * editfns.c (Fformat): Be sure to convert 8-bit characters to | |
2949 | multibyte form. | |
2950 | (Ftranspose_region) [BYTE_COMBINING_DEBUG]: Abort if byte | |
2951 | combining occurs. | |
2952 | (Ftranspose_region): Delete codes for handling byte combining. | |
2953 | ||
2954 | * fileio.c (Finsert_file_contents): Setup src_multibyte and | |
2955 | dst_multibyte members of coding. On handling REPLACE on unibyte | |
2956 | buffer, convert the result of decode_coding to unibyte. On | |
2957 | inserting into a mutibyte buffer, always call code_convert_region. | |
bd4bde7f | 2958 | (e_write): Setup coding->src_multibyte according to the |
c9671f81 KH |
2959 | multibyteness of the source (buffer or string). |
2960 | ||
2961 | * fns.c (concat): Handle 8-bit characters correctly. | |
2962 | (Fstring_as_unibyte): Be sure to make all 8-bit characters in | |
2963 | unibyte in the result. | |
2964 | (Fstring_as_multibyte): Be sure to make all 8-bit characters in | |
2965 | valid multibyte form in the result. | |
2966 | (map_char_table): Use MAKE_CHAR instead of MAKE_NON_ASCII_CHAR. | |
2967 | (Fbase64_encode_region, Fbase64_encode_string): If base64_encode_1 | |
2968 | return -1, signal an error. | |
2969 | (base64_encode_1): New arg MULTIBYTE. Get each character by | |
2970 | CHAR_STRING_AND_LENGTH if MULTIBYTE is nonzero. If a multibyte | |
2971 | character is found, return -1. | |
2972 | (Fbase64_decode_region): Delete codes for handling byte-combining. | |
2973 | Treat each decoded byte as a unibyte character. | |
2974 | (Fbase64_decode_string): Return unibyte string. | |
2975 | (Fcompare_strings, concat, string_byte_to_char): Use | |
2976 | FETCH_STRING_CHAR_ADVANCE_NO_CHECK instead off | |
2977 | FETCH_STRING_CHAR_ADVANCE. | |
2978 | (Fstring_lessp): Use FETCH_STRING_CHAR_ADVANCE unconditionally. | |
2979 | (mapcar1): If SEQ is string, always use FETCH_STRING_CHAR_ADVANCE. | |
2980 | ||
2981 | * fontset.c (fontset_ref): Use SPLIT_CHAR instead of | |
2982 | SPLIT_NON_ASCII_CHAR. | |
2983 | (fontset_ref_via_base, fontset_set): Likewise | |
2984 | ||
2985 | * insdel.c (adjust_markers_for_record_delete): Deleted. | |
2986 | (adjust_markers_for_insert): Argument changed. Caller changed. | |
2987 | (adjust_markers_for_replace): Likewise. | |
2988 | (ADJUST_CHAR_POS, combine_bytes, byte_combining_error, | |
2989 | CHECK_BYTE_COMBINING_FOR_INSERT): Deleted. | |
2990 | (copy_text): Delete unused local varialbe c_save. For converting | |
2991 | to multibyte, be sure to make all 8-bit characters in valid | |
2992 | multibyte form. | |
2993 | (count_size_as_multibyte): Handle 8-bit characters correctly. | |
2994 | (insert_1_both, insert_from_string_1, insert_from_buffer_1, | |
2995 | adjust_after_replace, replace_range, del_range_2) | |
2996 | [BYTE_COMBINING_DEBUG]: Abort if byte combining occurs. | |
2997 | (insert_1_both, insert_from_string_1, insert_from_buffer_1, | |
2998 | adjust_after_replace, replace_range, del_range_2) Delete codes for | |
2999 | handling byte combining. | |
3000 | (adjust_before_replace): Deleted. | |
427ec082 | 3001 | |
c9671f81 KH |
3002 | * keymap.c (Fsingle_key_description): Use SPLIT_CHAR instead of |
3003 | SPLIT_NON_ASCII_CHAR. | |
3004 | (describe_vector): Use MAKE_CHAR instead of MAKE_NON_ASCII_CHAR. | |
3005 | (Faccessible_keymaps): Use FETCH_STRING_CHAR_ADVANCE | |
3006 | unconditionally. | |
3007 | (Fkey_description): Likewise. | |
3008 | ||
3009 | * lread.c (read1): On reading multibyte string, be sure to make | |
3010 | all 8-bit chararacters in valid multibyte form. | |
3011 | (readchar): Use FETCH_STRING_CHAR_ADVANCE unconditionally. | |
3012 | ||
3013 | * print.c (print_object): Use FETCH_STRING_CHAR_ADVANCE | |
3014 | unconditionally. | |
3015 | ||
3016 | * process.c (Fstart_process): GCPRO current_dir before calling | |
3017 | Ffind_operation_coding_system. Encode arguments here. | |
3018 | (create_process): Don't encode arguments here. Setup | |
3019 | src_multibyte and dst_multibyte members of struct coding. | |
3020 | (read_process_output): Setup src_multibyte and dst_multibyte | |
3021 | members of struct coding. If the output is to multibyte buffer, | |
3022 | always decode the output of the process. Adjust the | |
3023 | representation of 8-bit characters to the multibyteness of the | |
3024 | output. | |
3025 | (send_process): Setup coding->src_multibyte according to the | |
3026 | multibyteness of the source. | |
3027 | ||
3028 | * search.c (wordify): Use FETCH_STRING_CHAR_ADVANCE | |
3029 | unconditionally. | |
3030 | (Freplace_match): Use FETCH_STRING_CHAR_ADVANCE and | |
3031 | FETCH_STRING_CHAR_ADVANCE_NO_CHECK appropriately. | |
3032 | ||
3033 | * term.c (produce_special_glyphs): Use CHAR_BYTES instead of | |
3034 | CHAR_LEN. | |
3035 | ||
3036 | * w16select.c (Fw16_set_clipboard_data): Setup members | |
3037 | src_multibyte and dst_multibyte of coding. Adjusted for the | |
3038 | change for find_charset_in_str. | |
3039 | (Fw16_get_clipboard_data): Likewise. | |
3040 | ||
3041 | * w32fns.c (w32_to_x_font): Setup members src_multibyte and | |
3042 | dst_multibyte of coding. | |
3043 | (x_to_w32_font): Likewise. | |
3044 | ||
3045 | * w32select.c (Fw32_set_clipboard_data): Setup members | |
3046 | src_multibyte and dst_multibyte of coding. Adjusted for the | |
3047 | change for find_charset_in_str. | |
3048 | (Fw32_get_clipboard_data): Likewise. | |
3049 | ||
3050 | * xdisp.c (get_next_display_element): Handle 8-bit characters | |
3051 | correctly. | |
3052 | (next_element_from_display_vector): Use CHAR_BYTES instead of | |
3053 | CHAR_LEN. | |
3054 | (disp_char_vector): Use SPLIT_CHAR instead of | |
3055 | SPLIT_NON_ASCII_CHAR. | |
3056 | ||
3057 | * xselect.c (selection_data_to_lisp_data): Setup members | |
3058 | src_multibyte and dst_multibyte of coding. Adjusted for the | |
3059 | change for find_charset_in_str. | |
3060 | (lisp_data_to_selection_data): Likewise. | |
3061 | ||
5f64c9e0 GM |
3062 | 2000-05-19 Gerd Moellmann <gerd@gnu.org> |
3063 | ||
2b63d473 GM |
3064 | * buffer.c (Fbury_buffer): Avoid trouble from burying a killed |
3065 | buffer. | |
3066 | ||
5f64c9e0 GM |
3067 | * dispextern.h (Vimage_types): Add extern declaration. |
3068 | ||
3069 | * xdisp.c (Vimage_types): Moved here from xfns.c. | |
3070 | (syms_of_xdisp): Move `image-types' variable here from xfns.c. | |
3071 | ||
3072 | * xfns.c (Vimages_types): Moved to xdisp.c. | |
3073 | (syms_of_xfns): Move `image-types' to xdisp.c. | |
3074 | ||
3075 | * w32fns.c (Vimage_types): Removed. | |
3076 | (syms_of_w32fns): Remove `image-types'. | |
3077 | ||
813086ea KH |
3078 | 2000-05-18 Kenichi Handa <handa@etl.go.jp> |
3079 | ||
3080 | * fns.c (map_char_table): Pay attention to character number of | |
3081 | charset. Check the validity of charset at the first level. For | |
3082 | leaf nodes that has nil value, call C_FUNCTION or FUNCTION with | |
3083 | the default value. | |
3084 | ||
3085 | * fontset.c: Include "buffer.h". | |
3086 | (fs_load_font): If the face has fontset, record the face ID in | |
3087 | that fontset. | |
3088 | (Finternal_char_font): New function. | |
3089 | (accumulate_font_info): New function. | |
3090 | (Ffontset_info): Rewritten for the new fontset implementation. | |
3091 | (syms_of_fontset): Register Vdefault_fontset in the first element | |
3092 | of Vfontset_table. Include Vdefault_fontset in | |
3093 | Vfontset_alias_alist. Declare `internal-char-font' as a Lisp | |
3094 | function. | |
3095 | ||
bdaebbf0 DL |
3096 | 2000-05-16 Dave Love <fx@gnu.org> |
3097 | ||
3098 | * m/iris5d.h: Deleted -- unused. | |
3099 | ||
cb613bb8 GM |
3100 | 2000-05-16 Gerd Moellmann <gerd@gnu.org> |
3101 | ||
b15f3b77 GM |
3102 | * xdisp.c, w32.c, print.c, msdos.c, emacs.c: Use the term |
3103 | `invalid' instead of `illegal'. | |
3104 | ||
3105 | * indent.c (Fmove_to_column): When ending within a tab, insert | |
3106 | spaces first so that markers at the end of the tab get adjusted. | |
3107 | ||
835c1b36 GM |
3108 | * frame.c (frames_bury_buffer): Don't add a buffer to the frame's |
3109 | buffer list that wasn't selected in that frame. | |
3110 | ||
cb613bb8 GM |
3111 | * filelock.c (get_boot_time): To obtain an 8 char file name, which |
3112 | is needed on mescaline, use a 2 char prefix, and call | |
3113 | make_temp_name with second arg non-zero. | |
3114 | ||
3115 | * fileio.c (make_temp_name): New function, extracted from | |
3116 | Fmake_temp_name. | |
3117 | (Fmake_temp_name): Use it. | |
3118 | ||
f685bea9 EZ |
3119 | 2000-05-15 Eli Zaretskii <eliz@is.elta.co.il> |
3120 | ||
3121 | * window.c (coordinates_in_window): Subtract 1 when computing | |
3122 | right_x. | |
3123 | ||
a1b8d58b GM |
3124 | 2000-05-15 Gerd Moellmann <gerd@gnu.org> |
3125 | ||
3126 | * Makefile.in (lisp): Add env.elc. | |
3127 | ||
3128 | * callproc.c (Fgetenv_internal): Renamed from Fgetenv. | |
3129 | ||
a265079f GM |
3130 | 2000-05-12 Gerd Moellmann <gerd@gnu.org> |
3131 | ||
3132 | * search.c (Freplace_match): Handle case of `\N' in the | |
3133 | replacement when there's no group N. | |
3134 | ||
da4496b6 GM |
3135 | 2000-05-11 Gerd Moellmann <gerd@gnu.org> |
3136 | ||
0ace421a GM |
3137 | * xdisp.c (add_to_log): Don't pass the terminating NUL byte |
3138 | of the message to message_dolog. | |
3139 | ||
1172eb8d GM |
3140 | * keyboard.c (read_char): Don't clear current message for help |
3141 | events; let the code handling help events handle this. Change | |
3142 | code detecting help events that should be ignored. | |
3143 | ||
da4496b6 GM |
3144 | * xdisp.c (handle_single_display_prop): Don't try to set PT if |
3145 | we're interating over a string. | |
3146 | ||
0623e40f DL |
3147 | 2000-05-09 Dave Love <fx@gnu.org> |
3148 | ||
3149 | * fileio.c (Fwrite_region): If APPEND arg is an integer, seek to | |
3150 | that offset before writing. Move gcpro region past call of | |
3151 | Ffile_regular_p. | |
3152 | ||
bae2503b DL |
3153 | 2000-05-04 Dave Love <fx@gnu.org> |
3154 | ||
3155 | * buffer.c (syms_of_buffer) [auto-fill-function]: Doc fix. | |
3156 | ||
ec82fb2f GM |
3157 | 2000-05-04 Gerd Moellmann <gerd@gnu.org> |
3158 | ||
3159 | * insdel.c (insert_from_buffer_1): Adjust FROM position by number | |
3160 | of inserted characters when BUF equals the current buffer, and PT | |
3161 | is in front of or equal to FROM. | |
3162 | ||
cbf18892 GM |
3163 | 2000-05-03 Gerd Moellmann <gerd@gnu.org> |
3164 | ||
4ff40dd0 GM |
3165 | * xdisp.c (handle_single_display_prop): If display property value |
3166 | is invalid, or something not supported on the frame, restore | |
3167 | iterator's position to what it was initially. Make sure to return | |
3168 | 0 for invalid and unsupported property values. | |
3169 | ||
cbf18892 GM |
3170 | * xterm.c (x_produce_glyphs) <composite chars>: Handle case |
3171 | that x_per_char_metric returns null. | |
3172 | ||
1b0672c3 GM |
3173 | 2000-05-02 Gerd Moellmann <gerd@gnu.org> |
3174 | ||
576da55d GM |
3175 | * xterm.h (struct face): Add forward declaration. |
3176 | (struct image): Ditto. | |
3177 | (image_ascent): Add prototype. | |
3178 | ||
3179 | * xterm.c (x_produce_image_glyph, x_draw_image_foreground) | |
3180 | (x_draw_image_relief, x_draw_image_foreground_1): Call function | |
3181 | image_ascent instead of using IMAGE_ASCENT. | |
3182 | ||
3183 | * dispextern.h (DEFAULT_IMAGE_HEIGHT): New macro. | |
3184 | (IMAGE_ASCENT): Removed. | |
3185 | ||
3186 | * xfns.c (Qcenter): New variable. | |
3187 | (enum image_value_type): Add IMAGE_ASCENT_VALUE. | |
3188 | (parse_image_spec): Handle IMAGE_ASCENT_VALUE. | |
3189 | (image_ascent): New function. | |
3190 | (lookup_image): Recognize `:ascent center'. | |
3191 | (xbm_format, xpm_format, pbm_format, png_format, jpeg_format) | |
3192 | (tiff_format, gif_format, gs_format): Use IMAGE_ASCENT_VALUE. | |
3193 | (xbm_load): Don't set image's ascent here. | |
3194 | (xbm_image_p, xpm_image_p, pbm_image_p, png_image_p) | |
3195 | (jpeg_image_p, tiff_image_p, gif_image_p, gs_image_p): Don't | |
3196 | check ascent values here. | |
3197 | (Fimagep, Flookup_image [GLYPH_DEBUG]: Removed. | |
3198 | (syms_of_xfns) [GLYPH_DEBUG]: Don't defsubr removed functions. | |
3199 | (syms_of_xfns): Initialize Qcenter. | |
3200 | ||
1b0672c3 GM |
3201 | * eval.c (Fsignal): If lisp_eval_depth or spepdl_size are near |
3202 | to the limits, increase the limits. | |
3203 | ||
0d7811ed KH |
3204 | 2000-05-01 Kenichi Handa <handa@etl.go.jp> |
3205 | ||
3206 | * fontset.c (fs_load_font): By default, use 0x00..0x7f for ASCII. | |
3207 | Check Vfont_encoding_alist against the full name of the opened | |
3208 | font. | |
3209 | ||
a943a5ca GM |
3210 | 2000-04-28 Gerd Moellmann <gerd@gnu.org> |
3211 | ||
3212 | * xdisp.c (make_cursor_line_fully_visible): Handle case of rows | |
3213 | taller than the window. | |
3214 | ||
5dba1e29 KH |
3215 | 2000-04-28 Kenichi Handa <handa@etl.go.jp> |
3216 | ||
3217 | * xfaces.c (realize_x_face): Fix the argument of the second | |
3218 | xassert. BASE_FACE may not be a face for ASCII. | |
3219 | ||
353964e3 GM |
3220 | 2000-04-27 Gerd Moellmann <gerd@gnu.org> |
3221 | ||
c76e04a8 GM |
3222 | * print.c (print_object): Treat print-length < 0 as nil. |
3223 | ||
3224 | * Makefile.in (termcapobj): Don't use TERMCAP_OBJ. | |
3225 | ||
3226 | * s/freebsd.h (TERMCAP_OBJ): Removed. | |
3227 | (LIBS_TERMCAP): Don't define for __FreeBSD_version >= 400000. | |
3228 | ||
3229 | * lread.c (read1): Don't treat period followed by certain | |
3230 | characters as symbol start. | |
3231 | ||
3232 | * xfns.c (slurp_file): New function. | |
3233 | (xbm_image_p): Handle case of in-memory XBM files. | |
3234 | (xbm_scan): Rewritten to work on memory buffers instead of files. | |
3235 | (xbm_read_bitmap_data): Renamed from xbm_read_bitmap_file_data. | |
3236 | Work on memory buffers instead of files. If DATA is null test | |
3237 | if buffer looks like an in-memory XBM file. | |
3238 | (xbm_load_image): Renamed from xbm_load_image_file. Work on | |
3239 | memory buffers instead of files. | |
3240 | (xbm_file_p): New function. | |
3241 | (xbm_load): Accept :data DATA where DATA is an in-memory XBM file. | |
3242 | ||
353964e3 GM |
3243 | * lread.c (end_of_file_error): New function. |
3244 | (read1): Call it instead of signaling `end-of-file' directly. | |
3245 | ||
427ec082 | 3246 | * print.c (print_error_message): Print data of `end-of-file' |
353964e3 GM |
3247 | with Fprinc instead of Fprin1. |
3248 | ||
24d744ac KR |
3249 | 2000-04-26 Ken Raeburn <raeburn@gnu.org> |
3250 | ||
3251 | * window.c (freeze_window_start): Check that minibuffer scroll | |
3252 | window isn't nil before extracting the window structure pointer | |
3253 | from it. | |
3254 | ||
3255 | * undo.c (record_delete): If we hit the end of the undo list, stop | |
3256 | picking elements apart. | |
3257 | ||
7464346d GM |
3258 | 2000-04-26 Gerd Moellmann <gerd@gnu.org> |
3259 | ||
3260 | * xdisp.c (display_line): If lines are continued, restore | |
3261 | iterator's ascent/descent information to the values before the | |
3262 | first glyph not fitting on the line. | |
3263 | ||
612839b6 GM |
3264 | 2000-04-25 Gerd Moellmann <gerd@gnu.org> |
3265 | ||
3266 | * xdisp.c (try_window_id) <all changes above window start>: Adjust | |
3267 | positions in glyph matrix. Don't compute new window end | |
3268 | positions. | |
3269 | ||
3270 | * dispnew.c (increment_matrix_positions): Renamed from | |
3271 | increment_glyph_matrix_buffer_positions. | |
3272 | (increment_row_positions): Renamed from | |
3273 | increment_glyph_row_buffer_positions. | |
3274 | ||
3275 | * dispextern.h: Change names of renamed functions from dispnew.c | |
3276 | in prototypes. | |
3277 | ||
cc181e95 GM |
3278 | 2000-04-24 Gerd Moellmann <gerd@gnu.org> |
3279 | ||
abfcc168 GM |
3280 | * fileio.c (Fdo_auto_save): Create directories for auto-save |
3281 | list file if necessary. | |
3282 | ||
cc181e95 GM |
3283 | * xdisp.c (init_iterator): Set iterator's extra_line_spacing |
3284 | from buffer or frame. | |
3285 | (automatic_hscrolling_p): New variable. | |
3286 | (hscroll_windows): Scroll windows horizontally only if automatic | |
3287 | hscrolling is allowed. | |
3288 | (syms_of_xdisp): New variable `automatic-hscrolling'. | |
3289 | ||
3290 | * frame.h (struct frame): Add member extra_line_spacing. | |
3291 | ||
3292 | * xfns.c (x_set_line_spacing): New function. | |
3293 | (Fx_create_frame): Set line spacing from resources. | |
3294 | (Qline_spacing): New variable. | |
3295 | (syms_of_xfns): Initialize Qline_spacing. | |
427ec082 | 3296 | |
cc181e95 GM |
3297 | * emacs.c (USAGE2): Add `--line-spacing' and `-lsp'. |
3298 | ||
3299 | * buffer.c (init_buffer_once): Handle extra_line_spacing. | |
3300 | (syms_of_buffer): Add `default-line-spacing' and `line-spacing'. | |
abfcc168 | 3301 | (reset_buffer): Don't initialize extra2 and extra3. Initialize |
cc181e95 GM |
3302 | extra_line_spacing from default value. |
3303 | (init_buffer_once): Initialize default value of extra_line_spacing. | |
3304 | ||
3305 | * buffer.h (struct buffer): Add extra_line_spacing, remove extra2 | |
3306 | and extra3. | |
3307 | ||
3308 | * xterm.c (x_produce_glyphs): Remove reference to struct it's | |
3309 | prompt_width. Add extra line spacing. | |
3310 | ||
3311 | * term.c (produce_glyphs): Remove reference to struct it's | |
3312 | prompt_width. | |
3313 | ||
3314 | * dispextern.h (struct it): Remove member prompt_width, add | |
3315 | extra_line_spacing. | |
3316 | ||
58827478 GM |
3317 | 2000-04-22 Gerd Moellmann <gerd@gnu.org> |
3318 | ||
3319 | * dispnew.c (update_frame_line): When writing a whole line, make | |
3320 | sure cursor is in the right row afterwards, otherwise a use of | |
3321 | capability `ch' in cmgoto might leave the cursor in the row below. | |
3322 | ||
25a87f42 GM |
3323 | 2000-04-21 Gerd Moellmann <gerd@gnu.org> |
3324 | ||
3325 | * lisp.h (struct Lisp_Buffer_Cons): Remove. | |
3326 | ||
3327 | * keyboard.c (timer_check): Fix typo in comment. | |
3328 | ||
54edf5c2 KH |
3329 | 2000-04-21 Kenichi Handa <handa@etl.go.jp> |
3330 | ||
3331 | * fontset.c (Fset_fontset_font): Fix docstring. Local variable | |
3332 | name change: ch -> character. | |
3333 | ||
3a64eef5 GM |
3334 | 2000-04-20 Gerd Moellmann <gerd@gnu.org> |
3335 | ||
3336 | * keyboard.c (echo_message_buffer): New variable. | |
3337 | (echo_now): Set echo_message_buffer to the echo area buffer used | |
3338 | to display the echo. | |
3339 | (cancel_echoing): Reset echo_message_buffer to nil. | |
3340 | (read_char): Code rewritten that handles canceling an echo or | |
3341 | echoing a dash, respectively. | |
3342 | ||
3343 | * fileio.c (Ffile_writable_p) [WINDOWSNT]: Return nil if parent | |
3344 | directory doesn't exist. | |
3345 | ||
6142fdcb DL |
3346 | 2000-04-19 Dave Love <fx@gnu.org> |
3347 | ||
3348 | * fns.c (syms_of_fns): Defsubr mapc. | |
a9cacab7 DL |
3349 | (concat): Don't allow numeric args. |
3350 | (Fconcat): Doc change. | |
6142fdcb | 3351 | |
ac6b5352 SM |
3352 | 2000-04-19 Stefan Monnier <monnier@cs.yale.edu> |
3353 | ||
3354 | * regex.c (re_match_2_internal): Don't shorten the strings anymore, | |
3355 | instead define end_match(1|2) more carefully. | |
3356 | Use GET_CHAR_BEFORE_2 for `begline'. | |
3357 | ||
cb9215e4 GM |
3358 | 2000-04-19 Gerd Moellmann <gerd@gnu.org> |
3359 | ||
5e3dac3f GM |
3360 | * frame.h (SELECTED_FRAME): Change definition to compile cleanly |
3361 | on 64-bit systems where NULL is defined as `0'. | |
3362 | ||
3363 | * xdisp.c (with_echo_area_buffer): Add more `int' parameters for | |
3364 | the `variable argument list' to make it work on Alpha. | |
3365 | ||
cb9215e4 GM |
3366 | * m/alpha.h (_LP64) [!_LP64]: Define. |
3367 | (ORDINARY_LINK): Define for NetBSD. | |
3368 | ||
3369 | * m/macppc.h (ORDINARY_LINK): Define for NetBSD. | |
427ec082 | 3370 | |
f532dca0 DL |
3371 | 2000-04-19 Dave Love <fx@gnu.org> |
3372 | ||
c750667e DL |
3373 | * s/bsd386.h, s/freebsd.h, s/gnu.h, s/netbsd.h: Revert 2000-04-14 |
3374 | change. | |
3375 | ||
3376 | * Makefile.in (LIBS): Don't use. | |
3377 | (GETLOADAVG_OBJ): Define again. | |
3378 | (otherobj): Add GETLOADAVG_OBJ. | |
3379 | ||
f532dca0 DL |
3380 | * buffer.c (Fmake_indirect_buffer): Escape newline in doc. |
3381 | ||
1c7e22fd GM |
3382 | 2000-04-18 Gerd Moellmann <gerd@gnu.org> |
3383 | ||
f6d3257b GM |
3384 | * lread.c (read_filtered_event): Cancel and start busy cursor. |
3385 | ||
427ec082 | 3386 | * xterm.c (x_produce_glyphs) <ASCII chars>: Take into account |
1c7e22fd GM |
3387 | that the per-character metrics may be null. |
3388 | ||
e10f64e7 GM |
3389 | 2000-04-17 Gerd Moellmann <gerd@gnu.org> |
3390 | ||
0daee095 GM |
3391 | * buffer.c (clone_per_buffer_values): New function. |
3392 | (Fmake_indirect_buffer): Add optional argument CLONE. Call | |
3393 | clone_per_buffer_values if CLONE is not nil. | |
3394 | ||
e10f64e7 GM |
3395 | * xfaces.c (Ftty_suppress_bold_inverse_default_colors): Doc fix. |
3396 | ||
38687d43 DL |
3397 | 2000-04-16 Dave Love <fx@gnu.org> |
3398 | ||
3399 | * Makefile.in: Remove obsolete localcpp stuff. | |
3400 | (GETLOADAVG_OBJ): Don't define. | |
3401 | (obj): Move LIBOBJS... | |
3402 | (otherobj): ... to here. | |
3403 | (MSDOS_OBJ): Convert to make variable -- preprocessing zapped | |
3404 | whitespace-only lines after the continuation (Irix). | |
3405 | ||
c21c7262 GM |
3406 | 2000-04-14 Gerd Moellmann <gerd@gnu.org> |
3407 | ||
3408 | * xfns.c (xpm_load) [DEBUG_X_COLORS]: Register colors. | |
3409 | ||
3410 | * s/freebsd.h (LD_SWITCH_SYSTEM): Add `-L /usr/local/lib'. | |
3411 | ||
314767c0 DL |
3412 | 2000-04-14 Dave Love <fx@gnu.org> |
3413 | ||
3414 | * s/aix3-1.h, s/bsd4-2.h, s/bsd4-3.h, s/cxux.h, s/dgux.h, s/gnu.h: | |
3415 | * s/hpux.h, s/iris3-5.h, s/iris3-6.h, s/irix3-3.h, s/rtu.h: | |
3416 | * s/unipl5-0.h, s/unipl5-2.h, s/usg5-0.h, s/usg5-2-2.h, s/usg5-2.h: | |
3417 | * s/usg5-3.h, s/xenix.h, s/umax.h: Don't define autoconfiscated | |
3418 | NLIST_STRUCT. | |
3419 | ||
3420 | * s/bsd386.h, s/freebsd.h, s/gnu.h, s/netbsd.h: Don't define | |
3421 | autoconfiscated HAVE_GETLOADAVG. | |
3422 | ||
3423 | * s/nextstep.h, s/sco4.h, s/sco5.h: Don't define autoconfiscated | |
3424 | BROKEN_MKTIME. | |
3425 | ||
a2522dca GM |
3426 | 2000-04-14 Gerd Moellmann <gerd@gnu.org> |
3427 | ||
3428 | * filelock.c (MAKE_LOCK_NAME): Allocate 2 more bytes. | |
3429 | (fill_in_lock_file_name): Avoid existing files that aren't | |
3430 | links. | |
3431 | ||
33744b5d DL |
3432 | 2000-04-14 Dave Love <fx@gnu.org> |
3433 | ||
c21c7262 | 3434 | * Makefile.in (LIBS, LIBOBJS): New variable. |
33744b5d DL |
3435 | (INTERVAL_SRC): Convert to make variable. |
3436 | (INTERVAL_OBJ, MKTIME_OBJ, FLOAT_SUPPORT, FACE_SUPPORT) | |
3437 | (HAVE_X_WINDOWS, OBJECTS_SYSTEM): Remove. | |
3438 | (obj): Substitute INTERVAL_OBJ, add MKTIME_OBJ, GETLOADAVG_OBJ and | |
3439 | add LIBOBJS. | |
3440 | (SOME_MACHINE_OBJECTS): Remove interval stuff. | |
3441 | (lisp): Substitute FACE_SUPPORT, FLOAT_SUP. | |
3442 | (shortlisp): Add facemenu, float-sup, frame. | |
3443 | (SOME_MACHINE_LISP): Remove them from here. | |
3444 | (LIBES): Change unused LDLIBS to autoconf LIBS. | |
3445 | ||
3446 | * config.in: Add BROKEN_MKTIME, NLIST_STRUCT, NLIST_NAME_UNION. | |
3447 | ||
9d3d5916 KH |
3448 | 2000-04-14 Kenichi Handa <handa@etl.go.jp> |
3449 | ||
3450 | * composite.c (update_compositions): If FROM and TO are not in a | |
3451 | valid range, do nothing. | |
3452 | ||
198e3c7a GM |
3453 | 2000-04-13 Gerd Moellmann <gerd@gnu.org> |
3454 | ||
3455 | * tparam.c (tparam1): Abort when encountering an unknown | |
3456 | `%'-specifier. | |
3457 | ||
3458 | * s/freebsd.h (TERMCAP_OBJ) [__FreeBSD__ >= 4]: Define as | |
3459 | terminfo.o. | |
3460 | ||
3461 | * Makefile.in (termcapobj) [LIBS_TERMCAP && TERMCAP_OBJ]: Define | |
3462 | as TERMCAP_OBJ. | |
3463 | ||
055a28c9 EZ |
3464 | 2000-04-13 Eli Zaretskii <eliz@is.elta.co.il> |
3465 | ||
3466 | * fileio.c (a_write): Remove redundant semi-colons. | |
3467 | (e_write): Return -1 if failed to write all the data. | |
3468 | This fixes the changes made at 1999-12-15. | |
3469 | ||
f5c75033 DL |
3470 | 2000-04-12 Dave Love <fx@gnu.org> |
3471 | ||
3472 | * fns.c (mapcar1): Test for null vals to support mapc. | |
3473 | (Fmapc): New function. | |
3474 | ||
0c3cfc51 EZ |
3475 | 2000-04-12 Eli Zaretskii <eliz@is.elta.co.il> |
3476 | ||
3477 | * msdos.c (NUM_MOUSE_BUTTONS): Define. | |
3478 | (IT_frame_up_to_date): Support the buffer local value of | |
3479 | cursor-type, if defined. | |
3480 | ||
33465a31 DL |
3481 | 2000-04-10 Dave Love <fx@gnu.org> |
3482 | ||
3483 | * editfns.c (preceding-char, following-char): Doc fix. | |
3484 | ||
6ed56568 KR |
3485 | 2000-04-10 Ken Raeburn <raeburn@gnu.org> |
3486 | ||
3487 | * Makefile.in (temacs): Revert 2000-03-12 change. | |
3488 | ||
7cf80d4e JR |
3489 | 2000-04-10 Jason Rumney <jasonr@gnu.org> |
3490 | ||
3491 | * xfaces.c (realize_face): Change FRAME_X_P to FRAME_WINDOW_P. | |
3492 | ||
34f3f342 GM |
3493 | 2000-04-10 Gerd Moellmann <gerd@gnu.org> |
3494 | ||
1a1b1895 GM |
3495 | * xdisp.c (setup_echo_area_for_printing): Choose an echo |
3496 | area buffer, if it's not set up yet. | |
3497 | ||
34f3f342 GM |
3498 | * indent.c (compute_motion): Set immediate_quit. |
3499 | ||
be0dbdab GM |
3500 | 2000-04-09 Gerd Moellmann <gerd@gnu.org> |
3501 | ||
c45be9ac GM |
3502 | * xfaces.c (tty_suppress_bold_inverse_default_colors_p): New |
3503 | variable. | |
3504 | (realize_tty_face): Suppress boldness if colors are the inverse of | |
3505 | the default colors, and tty_suppress_bold_inverse_default_colors_p | |
3506 | is set. | |
3507 | (Ftty_suppress_bold_inverse_default_colors): New function. | |
3508 | (syms_of_xfaces): Defsubr it. | |
3509 | ||
be0dbdab GM |
3510 | * buffer.c (Frestore_buffer_modified_p): New function. |
3511 | (syms_of_buffer): Defsubr it. | |
3512 | ||
e8413c3b KR |
3513 | 2000-04-08 Ken Raeburn <raeburn@gnu.org> |
3514 | ||
87f67317 KR |
3515 | * charset.c (Fmake_char_internal): CHAR_COMPONENTS_VALID_P takes a |
3516 | charset id (int) argument, not a charset (Lisp_Object). | |
3517 | ||
e8413c3b KR |
3518 | * coding.h (code_convert_string): Declare. |
3519 | * coding.c (code_convert_string_norecord): Pass an int, not a lisp | |
3520 | object, as the fourth argument to code_convert_string. | |
3521 | ||
3522 | * fontset.c (make_fontset_for_ascii_face): Use XINT on return | |
3523 | value. | |
3524 | (Fset_fontset_font): Use EQ to compare lisp objects. | |
3525 | ||
7c752c80 KR |
3526 | 2000-04-05 Ken Raeburn <raeburn@gnu.org> |
3527 | ||
c0333abc KR |
3528 | * intervals.h (SET_INTERVAL_PARENT): Use INT_LISPLIKE to test for |
3529 | a pointer that looks like a lisp object. | |
3530 | (SET_INTERVAL_OBJECT): Don't explicitly compare the object with | |
3531 | zero, instead see whether it's an integer object, since they can't | |
3532 | have intervals. | |
3533 | (GET_INTERVAL_OBJECT): Simply assign to the destination. | |
3534 | ||
7c752c80 KR |
3535 | * dispnew.c (allocate_matrices_for_frame_redisplay, |
3536 | direct_output_forward_char): Use X(U)INT and make_number as needed | |
3537 | to convert between (unsigned) int values and lisp integers. | |
3538 | * keyboard.c (read_key_sequence): Likewise. | |
3539 | * lread.c (substitute_object_recurse): Likewise. | |
3540 | * fns.c (concat, hash_lookup, hash_remove): Likewise. | |
3541 | * minibuf.c (do_completion, Fminibuffer_complete_word, | |
3542 | Fminibuffer_completion_help): Likewise. | |
3543 | * term.c (produce_special_glyphs): Likewise. | |
3544 | ||
3545 | * fileio.c (Fwrite_region): Use EQ when comparing lisp objects. | |
3546 | * print.c (print_preprocess, print_object): Likewise. | |
3547 | ||
3548 | * search.c (compile_pattern): Use NILP when checking for nil. | |
3549 | ||
74e49b38 KR |
3550 | * lisp.h (make_number) [!NO_UNION_TYPE && __GNUC__ >= 2 && |
3551 | __OPTIMIZE__]: Provide a GNU C macro version that handles | |
3552 | lisp-object unions. | |
3553 | (XSET) [!NO_UNION_TYPE]: Set the value field first, then the type | |
3554 | field, to better cope with ENABLE_CHECKING and calls that modify a | |
3555 | Lisp_Object using its old value. | |
3556 | ||
685e5ed2 GM |
3557 | 2000-04-04 Gerd Moellmann <gerd@gnu.org> |
3558 | ||
c407c570 GM |
3559 | * window.c (compare_window_configurations): Signal an error |
3560 | if parameters C1 or C2 aren't window configurations. | |
3561 | ||
685e5ed2 GM |
3562 | * bytecode.c (Fbyte_code): Add a bunch of BEFORE_POTENTIAL_GC/ |
3563 | AFTER_POTENTIAL_GC calls around calls to functions that can | |
3564 | signal an error and thus invoke the debugger. | |
3565 | ||
587a49ab GM |
3566 | 2000-04-03 Gerd Moellmann <gerd@gnu.org> |
3567 | ||
62f20204 GM |
3568 | * fns.c (Fbase64_decode_region, Fbase64_decode_string): Signal |
3569 | an error if decoding fails. | |
3570 | ||
587a49ab GM |
3571 | * keyboard.c (lispy_mouse_names): Variable removed. |
3572 | (Vlispy_mouse_stem): New variable. | |
3573 | (syms_of_keyboard): Initialize Vlispy_mouse_stem. | |
3574 | (make_lispy_event) <mouse_click, scroll_bar_click>: Don't abort | |
3575 | for any mouse button number. Increase size of mouse_syms and | |
3576 | button_down_location as needed. Call modify_event_symbol with | |
3577 | different arguments. | |
3578 | (make_lispy_event) <scroll_bar_click> [USE_TOOLKIT_SCROLL_BARS]: | |
3579 | Call modify_event_symbol with different arguments. | |
3580 | (make_lispy_event) <w32_scroll_bar_click> [WINDOWSNT]: Don't abort | |
3581 | for any button number. Call modify_event_symbol with different | |
3582 | arguments. | |
3583 | (modify_event_symbol): Rename NAME_ALIST to NAME_ALIST_OR_STEM. | |
3584 | Accept a string for NAME_ALIST_OR_STEM. | |
3585 | ||
3586 | * lisp.h (larger_vector): Add prototype. | |
3587 | ||
3588 | * fns.c (larger_vector): Make externally visible. | |
3589 | ||
3590 | * termhooks.h (NUM_MOUSE_BUTTONS): Removed. | |
3591 | ||
2d1675e4 SM |
3592 | 2000-04-02 Stefan Monnier <monnier@cs.yale.edu> |
3593 | ||
3594 | * regex.c (PTR_TO_OFFSET) [!emacs]: Remove. | |
3595 | (RE_MULTIBYTE_P, RE_STRING_CHAR_AND_LENGTH): New macros. | |
3596 | (GET_CHAR_BEFORE_2): Moved from charset.h plus fixed minor bug when | |
3597 | we are between str1 and str2. | |
3598 | (MAX_MULTIBYTE_LENGTH, CHAR_STRING) [!emacs]: Provide trivial default. | |
3599 | (PATFETCH): Use `TRANSLATE'. | |
3600 | (PATFETCH_RAW): Fetch multibyte char if applicable. | |
3601 | (PATUNFETCH): Remove. | |
3602 | (regex_compile): Rely on PATFETCH to do most of the multibyte magic. | |
3603 | When writing a char, write it directly into the pattern buffer rather | |
3604 | than going needlessly through a temp char-array. | |
3605 | (re_match_2_internal): Similarly, rely on RE_STRING_CHAR to do the | |
3606 | multibyte magic and remove the useless `#ifdef emacs'. | |
3607 | (bcmp_translate): Don't compare as multibyte chars when in a unibyte | |
3608 | buffer. | |
3609 | ||
3610 | * regex.h (struct re_pattern_buffer): Make field `multibyte' | |
3611 | conditional on `emacs'. | |
3612 | ||
3613 | * charset.h (GET_CHAR_BEFORE_2): Moved to regex.c. | |
3614 | ||
cc2d8c6b KR |
3615 | 2000-04-01 Ken Raeburn <raeburn@gnu.org> |
3616 | ||
3617 | * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P): Expand | |
3618 | non-union-type versions of XMARK and friends here, because XMARK | |
3619 | and friends won't work on an integer field if NO_UNION_TYPE is not | |
3620 | defined. | |
3621 | (make_number): Define as a function if it's not defined as a | |
3622 | macro. | |
3623 | ||
09654086 KR |
3624 | * composite.c (run_composite_function): Use NILP when checking for |
3625 | nil. | |
3626 | (syms_of_composite): Delete local var NARGS, pass an int as first | |
3627 | argument to Fmake_hash_table. | |
3628 | ||
2387b382 KR |
3629 | * editfns.c (text_property_stickiness): Use NILP to test |
3630 | Lisp_Object boolean value. | |
3631 | (Fmessage_or_box): Don't use NILP to test int variable. | |
c01fbf95 KR |
3632 | (Fformat): Use a temporary variable to avoid ENABLE_CHECKING |
3633 | problems reading from and changing the same lisp value in an | |
3634 | XSETSTRING call. | |
3635 | ||
27660e89 GM |
3636 | 2000-04-01 Gerd Moellmann <gerd@gnu.org> |
3637 | ||
3638 | * term.c (TN_no_color_video): New variable. | |
3639 | (term_init): Intitialize TN_no_color_video. | |
3640 | (enum no_color_bit): New enumeration. | |
3641 | (MAY_USE_WITH_COLORS_P): New macro. | |
3642 | (turn_on_face): Use it to determine if attributes may be used | |
3643 | combined with colors. | |
3644 | ||
3578db3c KR |
3645 | 2000-04-01 Ken Raeburn <raeburn@gnu.org> |
3646 | ||
3647 | * window.c (CURBEG, CURSIZE): Don't overload lisp object lvalues | |
3648 | with int lvalues via casts; instead, just yield lisp object | |
3649 | lvalues. | |
3650 | (enlarge_window): Variable sizep now points to Lisp_Object. Use | |
3651 | proper accessor macros. | |
3652 | (shrink_window_lowest_first): w->top is Lisp_Object; use XINT. | |
3653 | (grow_mini_window): Fix typo getting int value of root->height. | |
3654 | ||
6fc556fd KR |
3655 | * xdisp.c (compute_string_pos): Fix order of arguments to |
3656 | string_pos_nchars_ahead. | |
3657 | (handle_fontified_prop, add_to_log): Pass int, not Lisp_Object, as | |
3658 | count arg to variable-arg routines like Frun_hook_with_args and | |
3659 | Fformat. | |
587a49ab GM |
3660 | (back_to_previous_visible_line_start) |
3661 | (build_desired_tool_bar_string): Pass Lisp_Object, not int, to | |
6fc556fd KR |
3662 | fixed-arg routines like Fget_char_property and Fmake_string. |
3663 | (reconsider_clip_changes): Use XINT when comparing integer lisp | |
3664 | objects, or passing them as int arguments. | |
587a49ab GM |
3665 | (mark_window_display_accurate, insert_left_trunc_glyphs) |
3666 | (append_space, extend_face_to_end_of_line): Use make_number when | |
6fc556fd KR |
3667 | storing or passing integer values as lisp objects. |
3668 | (set_cursor_from_row, highlight_trailing_whitespace): Use | |
3669 | INTEGERP, not implicit test against zero, for glyph object. | |
3670 | (try_window_id): Don't use make_number when we want an int value. | |
3671 | ||
3672 | * xfaces.c (xlfd_symbolic_value): Make last argument a | |
3673 | Lisp_Object, to be consistent with callers. | |
3674 | (Fbitmap_spec_p): Use XINT to get numeric value of height. | |
3675 | (lface_hash): Apply XFASTINT to lisp values before folding in. | |
3676 | ||
3677 | * xfns.c (Fx_show_tip): Use make_number to get lisp objects to | |
3678 | fill in window width and height. Pass an int, not a lisp object, | |
3679 | as first arg to Finsert. | |
3680 | ||
6e7b2457 GM |
3681 | 2000-04-01 Gerd Moellmann <gerd@gnu.org> |
3682 | ||
610d841e GM |
3683 | * xfaces.c (realize_basic_faces): Block input while realizing |
3684 | the faces. | |
3685 | ||
6e7b2457 GM |
3686 | * keyboard.c (lispy_mouse_names): Add additional mouse names. |
3687 | ||
3688 | * termhooks.h (NUM_MOUSE_BUTTONS): Increase to 15. | |
3689 | ||
aa110c0c GM |
3690 | 2000-03-31 Gerd Moellmann <gerd@gnu.org> |
3691 | ||
3692 | * xterm.c (x_produce_glyphs): When displaying unibyte text | |
610d841e | 3693 | or ASCII, handle case that per-char metric is null. |
aa110c0c | 3694 | |
8801a864 KR |
3695 | 2000-03-30 Ken Raeburn <raeburn@gnu.org> |
3696 | ||
c6129d7e KR |
3697 | * lisp.h (NO_UNION_TYPE) [ENABLE_CHECKING]: Undef. |
3698 | ||
8801a864 KR |
3699 | * lisp.h (XCONS, XSTRING, XSYMBOL, XFLOAT, XPROCESS, XWINDOW, |
3700 | XSUBR, XBUFFER): Verify correct object type before returning | |
3701 | pointer, using eassert. | |
3702 | * frame.h (XFRAME): Likewise. | |
3703 | ||
3704 | * buffer.c (Frename_buffer, Fset_buffer_multibyte, | |
3705 | swap_out_buffer_local_variables, Fmove_overlay): Don't apply | |
3706 | XSYMBOL, XBUFFER, etc, to values that may be nil or of the wrong | |
3707 | type. | |
3708 | * data.c (set_internal): Likewise. | |
3709 | * dispextern.h (WINDOW_WANTS_MODELINE_P, | |
3710 | WINDOW_WANTS_HEADER_LINE_P): Likewise. | |
3711 | * fileio.c (auto_save_1): Likewise. | |
3712 | * insdel.c (check_markers): Likewise. | |
3713 | * marker.c (buf_charpos_to_bytepos, unchain_marker): Likewise. | |
3714 | * undo.c (record_insert): Likewise. | |
3715 | * vmsproc.c (child_sig): Likewise. | |
3716 | * window.c (unshow_buffer, window_loop): Likewise. | |
3717 | * xterm.c (x_erase_phys_cursor): Likewise. | |
3718 | ||
8e7af858 GM |
3719 | 2000-03-30 Gerd Moellmann <gerd@gnu.org> |
3720 | ||
3721 | * xfns.c (free_image_cache): Free the cache structure itself | |
3722 | last, after all its members have been freed. | |
3723 | ||
3724 | * lisp.h (xstrdup): Add prototype. | |
3725 | ||
3726 | * alloc.c (xstrdup): Moved here from xfaces.c. | |
3727 | (allocating_for_lisp): Variable removed. | |
3728 | (lisp_malloc): Block input around the calls to malloc and | |
3729 | mem_insert. | |
3730 | ||
3731 | * xfaces.c (realize_tty_face): Use find_symbol_value instead | |
3732 | of Fsymbol_value. | |
3733 | (xstrdup): Moved to alloc.c. | |
3734 | ||
e0b8c689 KR |
3735 | 2000-03-29 Ken Raeburn <raeburn@gnu.org> |
3736 | ||
b96f9fb7 KR |
3737 | * scroll.c (CHECK_BOUNDS): Renamed from CHECK. |
3738 | ||
3739 | * emacs.c (main): Fix sense of no-loadup test. | |
3740 | ||
e0b8c689 KR |
3741 | * config.in (ENABLE_CHECKING): Undef. |
3742 | ||
3743 | * lisp.h (struct interval): Replace "parent" field with a union of | |
3744 | interval pointer and Lisp_Object; add new bitfield to use as | |
3745 | discriminant. Change other flag fields to bitfields. | |
3746 | (CHECK): New macro for consistency checking. If ENABLE_CHECKING | |
3747 | is defined and the supplied test fails, print a message and | |
3748 | abort. | |
3749 | (eassert): New macro. Use CHECK to provide an assert-like | |
3750 | facility. | |
3751 | ||
3752 | * intervals.h (NULL_INTERVAL_P): Now applies only to real interval | |
3753 | pointers; abort if the value looks like a lisp object. | |
3754 | (NULL_INTERVAL_P, NULL_PARENT, HAS_PARENT, HAS_OBJECT, SET_PARENT, | |
3755 | SET_OBJECT, INTERVAL_PARENT, GET_INTERVAL_OBJECT, COPY_PARENT): | |
3756 | Modify for new interval parent definition. | |
3757 | ||
3758 | * alloc.c (mark_interval_tree, MARK_INTERVAL_TREE, | |
3759 | UNMARK_BALANCE_INTERVALS): Update references that need an | |
3760 | addressable lisp object in the interval structure. | |
3761 | (die): New function. | |
3762 | (suppress_checking): New variable. | |
3763 | ||
3764 | * intervals.c (interval_start_pos): Just return 0 if there's no | |
3765 | parent object. | |
3766 | ||
f83c5440 GM |
3767 | 2000-03-29 Gerd Moellmann <gerd@gnu.org> |
3768 | ||
3769 | * lread.c (read1): Accept `.' (period) as symbol start like in CL | |
3770 | and earlier Emacs versions. | |
3771 | ||
3772 | * keyboard.c (Ftop_level): Cancel busy-cursor. | |
3773 | ||
3774 | * eval.c (call_debugger): Cancel busy-cursor. | |
3775 | ||
fdce64ff KH |
3776 | 2000-03-29 Kenichi Handa <handa@etl.go.jp> |
3777 | ||
3778 | * search.c (Freplace_match): Adjust multibyteness of the current | |
3779 | buffer and NEWTEXT. Free allocated memory before signaling an | |
3780 | error. | |
3781 | ||
f6a3f532 SM |
3782 | 2000-03-28 Stefan Monnier <monnier@cs.yale.edu> |
3783 | ||
3784 | * regex.c (analyse_first): New function obtained by ripping out most | |
3785 | of re_compile_fastmap and generalizing it a little bit so that it | |
3786 | can also just return whether a given (sub)pattern can match the empty | |
3787 | string or not. | |
3788 | (regex_compile): Use `analyse_first' to decide whether the loop-check | |
3789 | needs to be done or not for *, +, *? and +? (the loop check is costly | |
3790 | for non-greedy repetition). | |
3791 | (re_compile_fastmap): Delegate the actual work to `analyse_first'. | |
3792 | ||
e9b309ac DL |
3793 | 2000-03-28 Dave Love <fx@gnu.org> |
3794 | ||
bb15bd9a DL |
3795 | * s/gnu-linux.h (GC_SETJMP_WORKS): Define for i386, sparc, m68k, |
3796 | alpha. | |
3797 | ||
e9b309ac DL |
3798 | * alloc.c: Include stdio.h. Test STDC_HEADERS, not __STDC__. |
3799 | ||
ed0767d8 SM |
3800 | 2000-03-27 Stefan Monnier <monnier@cs.yale.edu> |
3801 | ||
3802 | * regex.c (REGEX_FREE_STACK, RESET_FAIL_STACK): Make them usable as | |
3803 | an expression. | |
3804 | (enum re_opcode_t): Update description of succeed_n. | |
3805 | (PATFETCH): Always define. | |
3806 | (regex_compile): Use lookahead rather than PATUNFETCH (for repetition | |
3807 | operators, char classes, shy-groups and intervals). | |
3808 | Optimize special cases of intervals so as to only use succeed_n and | |
3809 | jump_n when really needed. | |
3810 | (re_compile_fastmap): Simplify handling of jump_n and succeed_n now | |
3811 | that we don't have to handle the special cases any more. | |
3812 | Simplify on_failure_jump handling as well. | |
3813 | ||
e11e7e46 JR |
3814 | 2000-03-28 Jason Rumney <jasonr@gnu.org> |
3815 | ||
3816 | * lread.c (Fload): Move safe_p definition to above #ifdef DOS_NT. | |
3817 | ||
88faab89 GM |
3818 | 2000-03-27 Gerd Moellmann <gerd@gnu.org> |
3819 | ||
182ff242 GM |
3820 | * s/freebsd.h (GC_SETJMP_WORKS): Define. |
3821 | ||
3822 | * s/msdos.h (GC_SETJMP_WORKS): Define. | |
427ec082 | 3823 | |
182ff242 GM |
3824 | * alloc.c (mark_maybe_object): New function. |
3825 | (mark_memory): Use it. | |
3826 | (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK): New macros. | |
3827 | (setjmp_tested_p, longjmp_done): New variables. | |
3828 | (test_setjmp): New function. | |
3829 | (mark_stack) [!GC_SETJMP_WORKS]: Call test_setjmp. | |
3830 | (init_alloc): Initialize setjmp_tested_p and longjmp_done. | |
3831 | ||
c1005d06 GM |
3832 | * xdisp.c (face_before_or_after_it_pos): Pass multibyteness |
3833 | to DEC_TEXT_POS and INC_TEXT_POS. | |
3834 | ||
3835 | * dispnew.c (direct_output_for_insert): Use DEC_TEXT_POS | |
3836 | with parameter MULTIBYTE_P. | |
3837 | ||
427ec082 | 3838 | * dispextern.h (INC_TEXT_POS, DEC_TEXT_POS): Add parameter |
c1005d06 GM |
3839 | MULTIBYTE_P. |
3840 | ||
7439e5b9 | 3841 | * editfns.c (Fsubst_char_in_region): Don't use INC_POS in unibyte |
182ff242 GM |
3842 | buffers because it looks for multibyte character byte sequences |
3843 | which don't exist in unibyte text. | |
7439e5b9 | 3844 | |
d9c545da GM |
3845 | * xterm.h (x_specified_cursor_type, x_copy_color): Add prototypes. |
3846 | ||
11fd416e | 3847 | * xfaces.c (register_color, unregister_color, unregister_colors) |
d9c545da GM |
3848 | [DEBUG_X_COLORS]: New functions. |
3849 | (x_free_colors) [DEBUG_X_COLORS]: Unregister colors. | |
3850 | ||
3851 | * xfns.c (x_set_cursor_color): Get color reference counts right. | |
3852 | ||
3853 | * xterm.c (x_copy_color): New function. | |
3854 | (x_alloc_nearest_color) [DEBUG_X_COLORS]: Call register_color. | |
3855 | ||
3856 | * buffer.h (MAX_PER_BUFFER_VARS): Renamed from MAX_BUFFER_LOCAL_VARS. | |
3857 | (PER_BUFFER_VAR_OFFSET): Renamed from BUFFER_LOCAL_VAR_OFFSET. | |
3858 | (PER_BUFFER_VAR_IDX): Renamed from BUFFER_LOCAL_VAR_IDX. | |
3859 | (PER_BUFFER_VALUE_P): Renamed from BUFFER_HAS_LOCAL_VALUE_P. | |
3860 | (SET_PER_BUFFER_VALUE_P): Renamed from SET_BUFFER_HAS_LOCAL_VALUE_P. | |
3861 | (PER_BUFFER_IDX): Renamed from BUFFER_LOCAL_IDX. | |
3862 | (PER_BUFFER_DEFAULT): Renamed from BUFFER_LOCAL_DEFAULT_VALUE. | |
3863 | (PER_BUFFER_VALUE): Renamed from BUFFER_LOCAL_VALUE. | |
3864 | (PER_BUFFER_SYMBOL): Renamed from BUFFER_LOCAL_SYMBOL. | |
3865 | (PER_BUFFER_TYPE): Renamed from BUFFER_LOCAL_TYPE. | |
3866 | ||
11fd416e GM |
3867 | * category.c, data.c, syntax.c, print.c, lread.c: Use new macro |
3868 | names for handling per-buffer variables. | |
d9c545da GM |
3869 | |
3870 | * buffer.c (buffer_permanent_local_flags): Use MAX_PER_BUFFER_VARS | |
3871 | instead of MAX_BUFFER_LOCAL_VARS. | |
3872 | (last_per_buffer_idx): Renamed from max_buffer_local_idx. | |
3873 | ||
3874 | * xfaces.c (lookup_face): Don't assert FACE_SUITABLE_FOR_CHAR_P. | |
3875 | ||
88faab89 GM |
3876 | * xfns.c (x_specified_cursor_type): New function. |
3877 | (x_set_cursor_type): Use it. | |
3878 | ||
3879 | * buffer.h (struct buffer): Add cursor_type. | |
3880 | ||
d80f42b7 SM |
3881 | 2000-03-26 Stefan Monnier <monnier@cs.yale.edu> |
3882 | ||
3883 | * regex.c (enum re_opcode_t): New opcode on_failure_jump_nastyloop. | |
427ec082 | 3884 | (print_partial_compiled_pattern, re_compile_fastmap): Handle new |
88faab89 | 3885 | opcode. |
d80f42b7 SM |
3886 | (regex_compile): Use on_failure_jump_nastyloop for non-greedy loops. |
3887 | (re_match_2_internal): Add code for on_failure_jump_nastyloop when | |
3888 | executing it as well as when popping it off the stack to find infinite | |
3889 | loops in non-greedy repetition operators. | |
3890 | ||
89e80928 GM |
3891 | 2000-03-26 Gerd Moellmann <gerd@gnu.org> |
3892 | ||
3d4ff2dd GM |
3893 | * doc.c (Qfunction_documentation): New variable. |
3894 | (syms_of_doc): Initialize Qfunction_documentation. | |
3895 | (Fdocumentation): If FUNCTION is a symbol with non-nil | |
3896 | `function-documentation' property, return a documentation derived | |
3897 | from that. | |
3898 | ||
bd96bd79 GM |
3899 | * buffer.c (syms_of_buffer): Add default-cursor-type. |
3900 | (init_buffer_once): Don't let cursor_type have a local value | |
3901 | in every buffer. | |
3902 | ||
19d1bc27 GM |
3903 | * xterm.c (x_display_and_set_cursor): Choose cursor depending |
3904 | on buffer-local value of cursor_type. | |
3905 | (x_draw_bar_cursor): Add parameter WIDTH. | |
3906 | ||
3907 | * buffer.c (reset_buffer): Initialize buffer's cursor_type. | |
3908 | (init_buffer_once): Set default cursor_type value to t. | |
3909 | Mark cursor_type as local everywhere. | |
3910 | (syms_of_buffer): New per-buffer variable cursor-type. | |
3911 | ||
89e80928 GM |
3912 | * buffer.h (struct buffer): Remove member local_var_flags, |
3913 | add local_flags. | |
3914 | (MAX_BUFFER_LOCAL_VARS): New macro. | |
3915 | (BUFFER_LOCAL_VAR_OFFSET, BUFFER_LOCAL_VAR_IDX) | |
3916 | (BUFFER_HAS_LOCAL_VALUE_P, SET_BUFFER_HAS_LOCAL_VALUE_P) | |
3917 | (BUFFER_LOCAL_IDX, BUFFER_LOCAL_DEFAULT_VALUE, BUFFER_LOCAL_VALUE) | |
3918 | (BUFFER_LOCAL_SYMBOL, BUFFER_LOCAL_TYPE): New macros. | |
3919 | ||
3920 | * print.c (print_object): Use new macros for per-buffer | |
3921 | variables. | |
3922 | ||
3923 | * category.c (Fset_category_table): Use new macros for per-buffer | |
3924 | variables. | |
3925 | ||
3926 | * buffer.c (buffer_permanent_local_flags): Make a char array. | |
3927 | (max_buffer_local_idx): New variable. | |
3928 | (reset_buffer_local_variables, Fbuffer_local_variables): Rewritten | |
3929 | for new handling of per-buffer variables. | |
3930 | (buffer_slot_type_mismatch): Use new macros for per-buffer vars. | |
3931 | (init_buffer_once): Initialize per-buffer vars differently. | |
3932 | Set max_buffer_local_idx. | |
3933 | ||
3934 | * syntax.c (Fset_syntax_table): Use new macros for per-buffer | |
3935 | variables. | |
3936 | ||
3937 | * lread.c (defvar_per_buffer): Use new macros for per-buffer | |
3938 | variables. | |
3939 | ||
3940 | * data.c (do_symval_forwarding, store_symval_forwarding) | |
3941 | (find_symbol_value, set_internal, default_value, Fset_default) | |
3942 | (Fkill_local_variable, Flocal_variable_p): Use new macros for | |
3943 | per-buffer variables. | |
3944 | ||
3945 | * Makefile.in (bootstrap-emacs): Use `mv -f' instead of `mv'. | |
3946 | ||
9a0dd3dc GM |
3947 | 2000-03-24 Gerd Moellmann <gerd@gnu.org> |
3948 | ||
b68c375f GM |
3949 | * xterm.c (x_term_init): Unblock input around call1 of |
3950 | Qvendor_specific_keysyms. | |
3951 | ||
9a0dd3dc GM |
3952 | * syntax.c (open_paren_in_column_0_is_defun_start): New variable. |
3953 | (find_defun_start): Consider an open parenthesis in column 0 | |
3954 | a defun start only if open_paren_in_column_0_is_defun_start is set. | |
3955 | (syms_of_syntax): New variable open-paren-in-column-0-is-defun-start. | |
3956 | ||
7973e637 SM |
3957 | 2000-03-24 Stefan Monnier <monnier@cs.yale.edu> |
3958 | ||
3959 | * eval.c (Fautoload): Add entry in load-history (if after dump). | |
3960 | * lread.c (load-history): Update docstring. | |
3961 | ||
39210e90 GM |
3962 | 2000-03-24 Gerd Moellmann <gerd@gnu.org> |
3963 | ||
3964 | * indent.c (Fvertical_motion): Always use the current buffer. | |
3965 | Temporarily change the window's buffer, if necessary. | |
3966 | ||
72db3ab5 GM |
3967 | 2000-03-23 Gerd Moellmann <gerd@gnu.org> |
3968 | ||
3969 | * xterm.c (fast_find_position): Make sure not to consider rows | |
3970 | not visible in the window. | |
3971 | ||
990b2375 SM |
3972 | 2000-03-22 Stefan Monnier <monnier@cs.yale.edu> |
3973 | ||
3974 | * regex.c (enum syntaxcode): Provide default for non-Emacs. | |
3975 | (re_compile_fastmap, re_match_2_internal): Undo Dave's previous fix. | |
3976 | ||
ff4df011 JR |
3977 | 2000-03-22 Jason Rumney <jasonr@gnu.org> |
3978 | ||
3979 | * w32menu.c (single_submenu): Set help string to NULL if none. | |
3980 | (w32_menu_show): Set help string correctly. | |
3981 | (add-menu-item): Set help string in MIIM_DATA for menu item. | |
3982 | Load SetMenuItemInfoA explicitly. | |
3983 | (w32_menu_display_help): New function. | |
427ec082 | 3984 | |
ff4df011 JR |
3985 | * w32fns.c (w32_wnd_proc): Handle WM_MENUSELECT message. |
3986 | (QCdata): Moved to xdisp.c. | |
3987 | ||
3988 | * w32term.c (w32_read_socket): Handle WM_MENUSELECT message. | |
3989 | (Vw32_charset_to_codepage_alist): Removed. | |
3990 | (Vw32_charset_info_alist): New variable. | |
3991 | (Qw32_charset_[ansi, default, symbol, shiftjis, hangul, gb2312, | |
3992 | chinesebig5, oem, easteurope, turkish, baltic, russian, arabic, | |
3993 | greek, hebrew, thai, johab, mac, unicode]): New symbols. | |
3994 | (x_produce_glyphs): Remove out of date #ifdef 0'd section. Replace | |
3995 | with TODO comment. | |
3996 | (w32_codepage_for_font): Use Vw32_charset_info_alist. | |
3997 | (syms_of_w32term): Remove Vw32_charset_to_codepage_alist. | |
3998 | Define Vw32_charset_info_alist and w32_charset symbols. | |
3999 | ||
4000 | 2000-03-22 Jason Rumney <jasonr@gnu.org> | |
4001 | ||
4002 | * makefile.nt (w32bdf.obj): Update dependencies. | |
4003 | ||
4004 | * w32bdf.c: Include frame.h and dispextern.h before fontset.h. | |
4005 | ||
4006 | * w32fns.c: Include fontset.h after dispextern.h. | |
4007 | (Fx_create_frame): Do not create fontset. | |
4008 | (w32_load_system_font): Doc fix. | |
4009 | (Fx_close_connection): Free full_name if it is not shared. | |
4010 | ||
4011 | * w32term.c: Include fontset.h after dispextern.h. | |
4012 | (x_get_glyph_face_and_encoding): New parameter two_byte_p. Callers | |
4013 | updated. | |
4014 | (w32_per_char_metric): If PCM is invalid, delete and return NULL. | |
4015 | (x_get_char_and_face_encoding): Use FACE_FOR_CHAR to get face_id. | |
4016 | (w32_font_is_double_byte): New function, needs body. | |
4017 | (x_append_glyph): Set glyph->glyph_not_available_p. | |
4018 | (x_produce_glyphs): Set it->glyph_not_available_p. Don't set | |
4019 | it->charset. If it->multibyte_p is zero and it->c is a multibyte | |
4020 | character, convert it to a unibyte character. | |
4021 | (struct glyph_string): Delete member `charset'. | |
4022 | (W32_TEXTOUT): Temporarily remove charset_dim until another way of | |
4023 | calculating it is found. | |
4024 | (x_set_mouse_face_gc): Call FACE_FOR_CHAR to get face_id. Handle | |
4025 | the case that per char metric is not available correctly. | |
4026 | (x_fill_glyph_string): Handle the case that the specific glyph is | |
4027 | not available correctly. | |
4028 | (BUILD_CHAR_GLYPH_STRINGS): Don't set s->charset. | |
4029 | (BUILD_COMPOSITE_GLYPH_STRING): Likewise. | |
4030 | (x_new_font): Call FS_LOAD_FONT, not fs_load_font. | |
4031 | (x_new_fontset): Call fontset_ascii to get ASCII font name of the | |
4032 | fontset. Don't call FS_LOAD_FONT. | |
4033 | ||
439d5cb4 KR |
4034 | 2000-03-22 Ken Raeburn <raeburn@gnu.org> |
4035 | ||
4036 | * intervals.h (NULL_INTERVAL): Cast to INTERVAL type. | |
4037 | (INT_LISPLIKE): New macro. | |
4038 | (NULL_INTERVAL_P): Use it. | |
4039 | (INTERVAL_HAS_PARENT, INTERVAL_HAS_OBJECT, SET_INTERVAL_PARENT, | |
4040 | SET_INTERVAL_OBJECT, INTERVAL_PARENT, COPY_INTERVAL_PARENT, | |
4041 | GET_INTERVAL_OBJECT, INTERVAL_PARENT_OR_NULL): New macros. | |
4042 | ||
4043 | * alloc.c (make_interval, gc_sweep): Use new macros; eliminate all | |
4044 | explicit references to "parent" field of struct interval and | |
4045 | associated unclean type conversions. | |
4046 | * intervals.c (create_root_interval, root_interval, rotate_right, | |
4047 | rotate_left, balance_possible_root_interval, split_interval_right, | |
4048 | split_interval_left, interval_start_pos, find_interval, | |
4049 | next_interval, previous_interval, update_interval, | |
4050 | adjust_intervals_for_insertion, delete_node, delete_interval, | |
4051 | adjust_intervals_for_deletion, merge_interval_right, | |
4052 | merge_interval_left, reproduce_tree, graft_intervals_into_buffer, | |
4053 | copy_intervals_to_string): Likewise. | |
4054 | * intervals.h (AM_LEFT_CHILD, AM_RIGHT_CHILD, RESET_INTERVAL): | |
4055 | Likewise. | |
4056 | * syntax.c (update_syntax_table): Likewise. | |
4057 | ||
4058 | * intervals.c (reproduce_tree_obj): New function, like | |
4059 | reproduce_tree but takes a Lisp_Object for the parent. Declare | |
4060 | with prototype. | |
4061 | (graft_intervals_into_buffer): Use it when appropriate. | |
4062 | (reproduce_tree): Declare with prototype. | |
4063 | (balance_possible_root_interval): Check that the parent is a lisp | |
4064 | object before trying to examine its type. | |
4065 | ||
ee1c5b21 GM |
4066 | 2000-03-22 Gerd Moellmann <gerd@gnu.org> |
4067 | ||
4068 | * xfaces.c (lface_same_font_attributes_p): Compare font attributes | |
4069 | as strings only if both are known to be strings. | |
4070 | ||
4071 | * s/openbsd.h (LIBS_TERMCAP): Undef. | |
4072 | ||
1fb352e0 SM |
4073 | 2000-03-21 Stefan Monnier <monnier@cs.yale.edu> |
4074 | ||
4075 | * regex.c (CHAR_CHARSET, CHARSET_LEADING_CODE_BASE): Add default | |
4076 | definitions for non-Emacs compilation. | |
4077 | (enum re_opcode_t): Remove (not)wordchar and move (not)syntaxspec | |
4078 | outside of `#ifdef emacs'. | |
4079 | (print_partial_compiled_pattern): Update. | |
4080 | (regex_compile): Use (not)syntaxspec(Sword) instead of (not)wordchar. | |
4081 | (re_compile_fastmap): Merge handling of charset and charset_not (for | |
4082 | emacs and non-emacs compilation as well). | |
4083 | Similarly for (not)categoryspec and (not)syntaxspec. | |
4084 | Don't use the fastmap when reaching `anychar' since the added | |
4085 | complexity is not justified. | |
4086 | (re_match_2_internal): Merge (not)wordchar (emacs and non-emacs) | |
4087 | and (not)syntaxspec. Merge (not)categoryspec. | |
4088 | ||
fdaa1f77 KH |
4089 | 2000-03-22 Kenichi Handa <handa@etl.go.jp> |
4090 | ||
ff1a0d8e KH |
4091 | * dispextern.h [!HAVE_WINDOW_SYSTEM] (FACE_SUITABLE_FOR_CHAR_P, |
4092 | FACE_FOR_CHAR): Define them differently for the configuration of | |
4093 | --without-x. | |
fdaa1f77 | 4094 | |
d152fb46 DL |
4095 | 2000-03-21 Dave Love <fx@gnu.org> |
4096 | ||
4097 | * fontset.c (Fset_fontset_font, Ffontset_font): Fix newlines in | |
4098 | doc string. | |
4099 | ||
d2cafc8c GM |
4100 | 2000-03-21 Gerd Moellmann <gerd@gnu.org> |
4101 | ||
4102 | * xfaces.c (check_lface_attrs) [GLYPH_DEBUG]: Fix syntax error. | |
4103 | (lface_fully_specified_p): Don't check contents of | |
4104 | LFACE_FONT_INDEX because that attribute is optional. | |
4105 | (realize_x_face): Remove now unwarranted xassert. | |
4106 | ||
9111d4b5 KH |
4107 | 2000-03-21 Kenichi HANDA <handa@etl.go.jp> |
4108 | ||
4109 | The following changes are to make font selection based on | |
4110 | characters, not charset. In addition, they recover fontset | |
4111 | facilities while utilizing the new font selection mechanism. | |
4112 | ||
6c4bfdc0 KH |
4113 | * Makefile.in (fontset.o): Depend on dispextern.h. |
4114 | ||
4115 | * alloc.c (mark_face_cache): Don't mark face->registry. | |
4116 | ||
9111d4b5 KH |
4117 | * dispextern.h (struct glyph): New member glyph_not_available_p. |
4118 | Use 22 bits for face_id. | |
4119 | (enum lface_attribute_index): Add LFACE_FONT_INDEX. | |
4120 | (struct face): Delete member registry, new member ascii_face. | |
4121 | (FACE_SUITABLE_FOR_CHAR_P): Renamed from | |
4122 | FACE_SUITABLE_FOR_CHARSET_P. Caller changed. | |
4123 | (FACE_FOR_CHAR): Renamed from FACE_FOR_CHARSET. Caller changed. | |
4124 | (struct it): Delete member charset, new member | |
4125 | glyph_not_available_p. | |
4126 | ||
4127 | * fontset.h (FONT_NOT_OPENED, FONT_NOT_FOUND): Macros removed. | |
4128 | (struct fontset_info, struct fontset_data): Structs removed. | |
4129 | (allloc_fontset_data, free_fontset_data, fs_regiser_fontset, | |
4130 | Vglobale_fontset_alist, font_idx_temp): Externs removed. | |
4131 | (fs_load_font, fs_query_fontset): Adjusted for new argument. | |
4132 | (fs_free_face_fontset, fontset_font_pattern, | |
4133 | face_suitable_for_char_p, face_for_char, | |
4134 | make_fontset_for_ascii_face): Extern them. | |
4135 | (FS_LOAD_FONT): Adjusted for the change of fontset implementation. | |
4136 | (FS_LOAD_FACE_FONT): New macro. | |
4137 | ||
4138 | * fontset.c: All codes rewritten or adjusted for the change of | |
4139 | fontset implementation. Now fontset is represented by char table. | |
4140 | (Vglobal_fontset_alist, font_idx_temp, my_strcasetbl): Variables | |
4141 | removed. | |
4142 | (my_strcasecmp): Function removed. | |
4143 | (Vfontset_table, next_fontset_id, Vdefault_fontset): New | |
4144 | variables. | |
4145 | (AREF, ASIZE): New macros. | |
4146 | (FONTSET_FROM_ID, FONTSET_ID, FONTSET_NAME, FONTSET_FRAME, | |
4147 | FONTSET_ASCII, FONTSET_BASE, BASE_FONTSET_P, FONTSET_REF, | |
4148 | FONTSET_REF_VIA_BASE, FONTSET_SET): New macros. | |
4149 | (fontset_ref, fontset_ref_via_base, fontset_set, make_fontset, | |
4150 | fontset_id_valid_p, font_family_registry, fontset_name, | |
4151 | fontset_ascii, free_face_fontset, face_suitable_for_char_p, | |
4152 | face_for_char, make_fontset_for_ascii_face, fontset_font_pattern): | |
4153 | New functions. | |
4154 | (fs_load_font): New arg FACE. Caller changed. | |
4155 | (fs_query_fontset): Argument changed. Caller changed. | |
4156 | (Fquery_fontset): call fs_query_fontset. | |
4157 | (fs_register_fontset, alloc_fontset_data, free_fontset_data): | |
4158 | Functions removed. | |
4159 | (clear_fontset_elements, check_registry_encoding, | |
4160 | check_fontset_name): New functions. | |
4161 | (syms_of_fontset): Set char-table-extra-slots property of fontset | |
4162 | to 3. Staticpro and initialize Vfontset_table and | |
4163 | Vdefault_fontset. Defsubr fontset_font and fontset_list. | |
4164 | ||
4165 | * frame.h (struct frame): Member `fontset_data' removed. | |
4166 | (FRAME_FONTSET_DATA): Macro removed. | |
4167 | ||
4168 | * frame.c (make_frame): Don't allocate f->fontset_data. | |
4169 | (Fdelete_frame): Don't free f->fontset_data. | |
4170 | ||
6c4bfdc0 KH |
4171 | * msdos.c (XMenuActivate): Args to lookup_derived_face changed. |
4172 | ||
9111d4b5 KH |
4173 | * xdisp.c (charset_at_position): Function removed. |
4174 | (init_iterator): Don't set member charset of struct `it'. | |
4175 | (handle_face_prop, reseat_to_string, set_iterator_to_next, | |
4176 | next_element_from_display_vector, insert_left_trunc_glyphs): | |
4177 | Likewise. | |
4178 | (face_before_or_after_it_pos): Call FACE_FOR_CHAR, not | |
4179 | FACE_FOR_CHARSET. | |
4180 | (get_next_display_element, append_space, | |
4181 | extend_face_to_end_of_line): Likewise. | |
4182 | ||
4183 | * xfaces.c (Qx_charset_registry, Vface_default_registry): | |
4184 | Variables removed. | |
4185 | (clear_font_table, frame_update_line_height, load_face_font): | |
4186 | Adjusted for the change of fontset implementation. | |
4187 | (load_face_fontset_font): Function removed. | |
4188 | (pixel_point_size): New function. | |
4189 | (font_list): Argument type changed. Caller changed. | |
4190 | (LFACE_FONT): New macro. | |
4191 | (check_lface_attrs): Check attr[LFACE_FONT_INDEX]. | |
4192 | (set_lface_from_font_name): Type of arg FONTNAME is changed to | |
4193 | Lisp_Object. Determine the font name by actually loading a font | |
4194 | by the specified pattern. Set LFACE_FONT (lface) to the specified | |
4195 | pattern. Even if a font is not found, don't try alternatives. | |
4196 | (Finternal_set_lisp_face_attribute): Handle `font' slot in lface. | |
4197 | (set_font_frame_param): If `font' is specified in lface, use it. | |
4198 | (Finternal_get_lisp_face_attribute): Handle `font' slot in lface. | |
4199 | (lface_same_font_attributes_p): Likewise. | |
4200 | (make_realized_face): Arguent changed. Caller changed. Set | |
4201 | face->ascii_face to face itself. | |
4202 | (free_realized_face): Free face->fontset if face is for ASCII. | |
4203 | (face_suitable_for_iso8859_1_p, face_suitable_for_charset_p, | |
4204 | deduce_unibyte_registry, x_charset_registry): Functions removed. | |
4205 | (free_realized_multibyte_face): New function. | |
4206 | (lookup_face, lookup_named_face, lookup_derived_face): Argument | |
4207 | changed. Caller changed. | |
4208 | (try_font_list): Argument type changed. | |
4209 | (face_fontset): Check `font' slot of ATTRS, not `family' slot. | |
4210 | (choose_face_font): Argument changed. Handle fontset properly. | |
4211 | (choose_face_fontset_font): Function removed. | |
4212 | (realize_default_face, realize_named_face): Don't remove the | |
4213 | former face here. | |
4214 | (realize_face): Argument changed. Caller changed. Remove face | |
4215 | with the arg former_face_id in advance. Load font for the new | |
4216 | face. | |
4217 | (realize_x_face): Argument changed. Caller changed. For a | |
4218 | multibyte character, share fontset with base_face. For a single | |
4219 | byte character, make a new realized fontset. Don't load a font | |
4220 | here. | |
4221 | (realize_tty_face): Argument changed. Caller changed. | |
4222 | (compute_char_face): Call FACE_FOR_CHAR, not FACE_FOR_CHARSET. | |
4223 | (face_at_buffer_position): Don't check multibyte_p for returning | |
4224 | DEFAULT_FACE_ID. | |
4225 | (face_at_string_position): Call FACE_SUITABLE_FOR_CHAR_P, not | |
4226 | FACE_SUITABLE_FOR_CHARSET_P. | |
4227 | (syms_of_xfaces): Remove code for Qx_charset_registry and | |
4228 | Vface_default_registry. | |
4229 | ||
6c4bfdc0 KH |
4230 | * xterm.c: Include fontset.h after dispextern.h. Undo the changes |
4231 | related to PER_CHAR_METRIC done by Gerd on 2000-03-03. | |
9111d4b5 KH |
4232 | (x_per_char_metric): Don't try FONT->default_char. Even if |
4233 | pcm->width is zero, glyph bits may exist. | |
4234 | (x_encode_char): Always initialize char2b->byte1. | |
4235 | (x_get_char_face_and_encoding): Call FACE_FOR_CHAR to get face_id. | |
4236 | (x_get_glyph_face_and_encoding): New arg two_byte_p. Caller | |
4237 | changed. | |
4238 | (x_append_glyph): Set glyph->glyph_not_available_p. | |
4239 | (x_produce_glyphs): Set it->glyph_not_available_p. Don't set | |
4240 | it->charset. Handle the case that per char metric is not | |
4241 | available. If it->multibyte_p is zero and it->c is a multibyte | |
4242 | character, convert it to a unibyte character. | |
4243 | (struct glyph_string): Delete member `charset'. | |
4244 | (x_set_mouse_face_gc): Call FACE_FOR_CHAR to get face_id. Handle | |
4245 | the case that per char metric is not available correctly. | |
4246 | (x_fill_glyph_string): Handle the case that the specific glyph is | |
4247 | not available correctly. | |
4248 | (BUILD_CHAR_GLYPH_STRINGS): Don't set s->charset. | |
4249 | (BUILD_COMPOSITE_GLYPH_STRING): Likewise. | |
4250 | (x_new_font): Call FS_LOAD_FONT, not fs_load_font. | |
4251 | (x_new_fontset): Call fontset_ascii to get ASCII font name of the | |
4252 | fontset. Don't call FS_LOAD_FONT. | |
4253 | ||
4254 | * xfns.c (Fx_create_frame): Don't cal fs_register_fontset. | |
4255 | (x_create_tip_frame): Likewise. | |
4256 | (Fx_close_connection): Free full_name of font_info. | |
4257 | ||
4258 | * fns.c (optimize_sub_char_table): New function. | |
4259 | (Foptimize_char_table): New function. | |
4260 | (syms_of_fns): Defsubr Soptimize_char_table. | |
4261 | ||
b33dd3b0 GM |
4262 | 2000-03-20 Gerd Moellmann <gerd@gnu.org> |
4263 | ||
4264 | * buffer.c (Fset_buffer_modified_p): Set update_mode_lines | |
4265 | only if buffer is displayed in some window. | |
4266 | ||
4267 | * xdisp.c (handle_single_display_prop): Initialize local `value'. | |
4268 | (try_window_reusing_current_matrix): Don't call scroll run | |
4269 | function if run's current and desired position are the same; | |
4270 | this prevents cursor flickering. | |
4271 | ||
4e8a9132 SM |
4272 | 2000-03-19 Stefan Monnier <monnier@cs.yale.edu> |
4273 | ||
4274 | * regex.h (RE_TRANSLATE. RE_TRANSLATE_P): Moved to regex.c. | |
4275 | ||
4276 | * regex.c (RE_STRING_CHAR): New macro. | |
4277 | (GET_CHAR_AFER_2): Remove. | |
4278 | (RE_TRANSLATE, RE_TRANSLATE_P): New macros moved from regex.h. | |
4279 | (enum re_opcode_t): Remove on_failure_jump_exclusive. | |
4280 | (print_partial_compiled_pattern, re_compile_fastmap) | |
4281 | (re_match_2_internal): Remove on_failure_jump_exclusive. | |
4282 | (regex_compile): Turn optimizable P+ loops into PP*, so that the | |
4283 | optimization only need to work for * (ie. can use of_keep_string_jump). | |
4284 | Remove the special case for .*\n since it is now covered by the general | |
4285 | optimization. | |
4286 | (re_search_2): Don't bother with `room'. | |
4287 | (skip_one_char): New function. | |
4288 | (skip_noops): Simplify since `memory' is not needed any more. | |
4289 | (mutually_exclusive_p): Restructure slightly to use `switch' and | |
4290 | add handling for "all" remaining cases. | |
4291 | (re_match_2_internal): Change on_failure_jump_smart to use | |
4292 | on_failure_keep_string_jump (and redirect the end-of-loop jump) | |
4293 | rather than on_failure_jump_exclusive. | |
4294 | ||
2136fdd4 GM |
4295 | 2000-03-19 Gerd Moellmann <gerd@gnu.org> |
4296 | ||
4297 | * xfns.c (select_visual): Don't set dpyinfo->n_planes to the | |
4298 | number of bits per RGB because it's everywhere used as the depth | |
4299 | of the visual. | |
4300 | ||
4301 | * term.c (calculate_costs): Remove code dealing with X frames. | |
4302 | ||
18e21ce8 | 4303 | 2000-03-19 Richard M. Stallman <rms@gnu.org> |
e53ae11c RS |
4304 | |
4305 | * lread.c (syms_of_lread): Doc fix for load-convert-to-unibyte. | |
4306 | ||
d7b511c4 GM |
4307 | 2000-03-18 Gerd Moellmann <gerd@gnu.org> |
4308 | ||
4309 | * lread.c (read_integer): Unread the last char not consumed. | |
4310 | ||
16b5d424 GM |
4311 | 2000-03-17 Gerd Moellmann <gerd@gnu.org> |
4312 | ||
4313 | * xterm.c (x_update_window_cursor): Don't update in frames | |
d7b511c4 | 4314 | which are in the process of being deleted. |
16b5d424 | 4315 | |
1fa28578 GM |
4316 | 2000-03-16 Gerd Moellmann <gerd@gnu.org> |
4317 | ||
83488cce GM |
4318 | * Makefile.in (mostlyclean): Add `*.core'. |
4319 | (clean): Add `bootstrap-emacs'. | |
4320 | ||
1fa28578 GM |
4321 | * lread.c (read_integer): New function. |
4322 | (read1): Support read syntax #o, #x, #b, #r. | |
4323 | ||
99633e97 SM |
4324 | 2000-03-15 Stefan Monnier <monnier@cs.yale.edu> |
4325 | ||
1fa28578 GM |
4326 | * regex.c (re_match_2): Fix string shortening (to fit `stop') to |
4327 | make sure POINTER_TO_OFFSET gives the same value before and after | |
4328 | PREFETCH. Use `dfail' to guarantee "atomic" matching. | |
99633e97 SM |
4329 | (PTR_TO_OFFSET): Use POINTER_TO_OFFSET. |
4330 | (debug): Now only active if > 0 rather than if != 0. | |
4331 | (DEBUG_*): Update for the new meaning of `debug'. | |
1fa28578 GM |
4332 | (print_partial_compiled_pattern): Add missing `succeed' case. Use |
4333 | CHARSET_* macros in the charset(_not) branch. Fix off-by-two bugs | |
4334 | in `succeed_n', `jump_n' and `set_number_at'. | |
99633e97 SM |
4335 | (store_op1, store_op2, insert_op1, insert_op2) |
4336 | (at_begline_loc_p, at_endline_loc_p): Add prototype. | |
1fa28578 GM |
4337 | (group_in_compile_stack): Move to after its arg's types are |
4338 | declared and add a prototype. | |
99633e97 | 4339 | (PATFETCH): Define in terms of PATFETCH_RAW. |
1fa28578 GM |
4340 | (GET_UNSIGNED_NUMBER): Add the usual `do { ... } while(0)' |
4341 | wrapper. | |
99633e97 | 4342 | (QUIT): Redefine as a nop except for NTemacs. |
1fa28578 GM |
4343 | (regex_compile): Handle intervals {,M} as if it was {0,M}. Fix |
4344 | indentation of the greedy-op and shy-group code. | |
99633e97 SM |
4345 | (at_(beg|end)line_loc_p): Fix argument's types. |
4346 | (re_compile_fastmap): Ifdef out failure_stack_ptr to shut up gcc. | |
4347 | (re_search_2): Use POS_AS_IN_BUFFER. Simplify `room' computation. | |
4348 | (MATCHING_IN_FIRST_STRING): Remove. | |
1fa28578 GM |
4349 | (re_match_2): Use POS_AS_IN_BUFFER. Ifdef out failure_stack_ptr |
4350 | to shut up gcc. Use FIRST_STRING_P and POINTER_TO_OFFSET. Use | |
4351 | QUIT unconditionally. | |
99633e97 | 4352 | |
699238d9 GM |
4353 | 2000-03-15 Gerd Moellmann <gerd@gnu.org> |
4354 | ||
4355 | * minibuf.c (Fminibuffer_complete): Set point to ZV if finding | |
4356 | a sole completion. | |
4357 | ||
4358 | * process.c (send_process): Add a hint that the function | |
4359 | can call Lisp code to its comment. | |
4360 | ||
4361 | * lread.c (load_dangerous_libraries): New variable. | |
4362 | (Vbytecomp_version_regexp): New variable. | |
4363 | (safe_to_load_p): New function. | |
4364 | (Fload): Handle files not compiled with Emacs specially. | |
4365 | (syms_of_lread): New Lisp variable load-dangerous-libraries. | |
4366 | ||
34e23e5a GM |
4367 | 2000-03-14 Gerd Moellmann <gerd@gnu.org> |
4368 | ||
9c763cca GM |
4369 | * lisp.h (free_frame_xic) [HAVE_X_I18N]: Add missing semicolon. |
4370 | ||
4371 | * xterm.c (xim_close_dpy, xim_initialize): Use X11R6-style XIM | |
4372 | support functions only if HAVE_X11R6_XIM is defined. | |
4373 | (xim_instantiate_callback): Define only if HAVE_X11R6_XIM. | |
4374 | ||
4375 | * s/sol2.h (INHIBIT_X11R6_XIM): Define. | |
4376 | ||
4377 | * xfns.c (X_I18N_INHIBITED): Don't define. | |
4378 | (create_frame_xic): Remove conditional compilation on | |
4379 | X_I18N_INHIBITED. | |
4380 | (x_kill_gs_process, x_window): Use FRAME_X_VISUAL. | |
4381 | ||
4382 | * config.in (HAVE_X_I18N): Moved here from xterm.h. | |
4383 | (HAVE_X11R6_XIM): Define. | |
4384 | ||
4385 | * xterm.h (HAVE_X_I18N) [HAVE_X11R6]: Moved to config.in. | |
4386 | ||
34e23e5a GM |
4387 | * xterm.c (x_term_init): Add support for X resource `synchronous'. |
4388 | If set, call XSynchronize. | |
4389 | ||
66f0296e SM |
4390 | 2000-03-13 Stefan Monnier <monnier@cs.yale.edu> |
4391 | ||
34e23e5a GM |
4392 | * regex.c: Declare a new type `re_char' used throughout the code |
4393 | for the string char type. It's `const unsigned char' to match the | |
4394 | rest of Emacs. Consistently make sure all pointers to strings use | |
4395 | it and make sure all pointers into the pattern use `unsigned | |
4396 | char'. | |
66f0296e | 4397 | (re_match_2_internal): Use `PREFETCH+STRING_CHAR' instead of |
34e23e5a GM |
4398 | GET_CHAR_AFTER_2. Also merge wordbound and notwordbound to reduce |
4399 | code duplication. | |
66f0296e SM |
4400 | |
4401 | * charset.h (GET_CHAR_AFTER_2): Remove. | |
4402 | (GET_CHAR_BEFORE_2): Use unsigned chars, like everywhere else. | |
4403 | ||
854a025c KR |
4404 | 2000-03-12 Ken Raeburn <raeburn@gnu.org> |
4405 | ||
4406 | * Makefile.in (temacs): Evaluate ALL_LDFLAGS into a temporary | |
4407 | variable before the invocation of YMF_PASS_LDFLAGS, in case both | |
4408 | of them try to use backquotes. | |
4409 | ||
b9d2c7e2 DL |
4410 | 2000-03-12 Dave Love <fx@gnu.org> |
4411 | ||
4412 | * unexelf.c: Restore changes of 1999-10-19. | |
4413 | (unexec): Don't adjust bss for sbss type SHT_PROGBITS; otherwise | |
4414 | fix its type and alignment; copy it from current process. | |
4415 | ||
5e5dff44 GM |
4416 | 2000-03-12 Gerd Moellmann <gerd@gnu.org> |
4417 | ||
9b2f3c38 GM |
4418 | * atimer.c (cancel_atimer): Break out of the loop as soon as timer |
4419 | has been found. Fix bug not computing timer's predecessor. | |
4420 | ||
427ec082 | 4421 | * fileio.c (Fread_file_name): Handle case that DIR contains a |
9172b88d GM |
4422 | file name. |
4423 | ||
e1cff360 GM |
4424 | * window.c (Fsave_window_excursion): Doc fix. |
4425 | ||
5e5dff44 GM |
4426 | * xfns.c (x_defined_color): Rewritten to use |
4427 | x_allocate_nearest_color. | |
4428 | ||
e411ce4b EZ |
4429 | 2000-03-12 Eli Zaretskii <eliz@is.elta.co.il> |
4430 | ||
4431 | * msdos.c (vga_installed): New function, code moved from | |
4432 | dos_set_window_size. | |
4433 | (Qbar, Qcursor_type, outside_cursor): New variables. | |
4434 | (syms_of_msdos): Intern and staticpro them. | |
4435 | (dos_ttraw) [__DJGPP__ >= 2, !HAVE_X_WINDOWS]: Save the cursor | |
4436 | shape used outside Emacs when called for the first time. | |
4437 | (dos_ttcooked) [__DJGPP__ >= 2, !HAVE_X_WINDOWS]: Restore the | |
4438 | cursor shape used outside Emacs. | |
4439 | (msdos_set_cursor_shape, IT_set_cursor_type): New functions. | |
4440 | (IT_frame_up_to_date): Call IT_set_cursor_type, in case the cursor | |
4441 | type has changed. | |
4442 | (IT_set_frame_parameters): Call IT_set_cursor_type if the frame | |
4443 | parameters specify the cursor. Make qreverse a global | |
4444 | variable (renamed to Qreverse). | |
4445 | ||
80460654 GM |
4446 | 2000-03-09 Gerd Moellmann <gerd@gnu.org> |
4447 | ||
4448 | * fns.c (Fy_or_n_p): Cancel busy-cursor. | |
4449 | ||
95cd4c40 SM |
4450 | 2000-03-08 Stefan Monnier <monnier@cs.yale.edu> |
4451 | ||
4452 | This is a big redesign of failure-stack and register handling, prompted | |
4453 | by bugs revealed when trying to add shy-groups. Overall, what happened | |
4454 | is that loops are now structured a little differently, groups can be | |
4455 | shy and the code is a little simpler. | |
4456 | ||
4457 | * regex.h: Update the copyright. | |
4458 | (RE_SHY_GROUPS): New value. | |
4459 | (RE_UNMATCHED_RIGHT_PAREN_ORD): Renumber. | |
4460 | (RE_SYNTAX_EMACS): Add RE_SHY_GROUPS. | |
4461 | ||
80460654 GM |
4462 | * regex.c (enum re_opcode_t): Remove jump_past_alt, |
4463 | maybe_pop_jump, push_dummy_failure and dumy_failure_jump. Add | |
4464 | on_failure_jump_(exclusive, loop and smart). Also fix the comment | |
4465 | for (start|stop)_memory since they now only take one argument (the | |
4466 | second has becomes unnecessary). | |
4467 | (print_partial_compiled_pattern): Adjust for changes in | |
4468 | re_opcode_t. | |
4469 | (print_compiled_pattern): Use %ld to printf long ints and flush to | |
4470 | make debugging a little easier. | |
95cd4c40 SM |
4471 | (union fail_stack_elt): Make the integer unsigned. |
4472 | (struct fail_stack_type): Add a `frame' element. | |
4473 | (INIT_FAIL_STACK): Init `frame' as well. | |
4474 | (POP_PATTERN_OP): New macro for re_compile_fastmap. | |
4475 | (DEBUG_PUSH, DEBUG_POP): Remove. | |
4476 | (NUM_REG_ITEMS): Remove. | |
4477 | (NUM_NONREG_ITEMS): Adjust. | |
80460654 GM |
4478 | (FAILURE_PAT, FAILURE_STR, NEXT_FAILURE_HANDLE) |
4479 | (TOP_FAILURE_HANDLE): New macros for the cycle detection. | |
95cd4c40 | 4480 | (ENSURE_FAIL_STACK): New macro for PUSH_FAILURE_(REG|POINT). |
80460654 GM |
4481 | (PUSH_FAILURE_REG, POP_FAILURE_REG, CHECK_INFINITE_LOOP): New |
4482 | macros. | |
4483 | (PUSH_FAILURE_POINT): Don't push registers any more. The pattern | |
4484 | address pushed is not the destination of the jump but the source | |
4485 | of it instead. | |
95cd4c40 SM |
4486 | (NUM_FAILURE_ITEMS): Remove. |
4487 | (POP_FAILURE_POINT): Adapt to the new stack structure (i.e. pop | |
80460654 GM |
4488 | registers before the actual failure point). Don't hardcode any |
4489 | meaning for str==NULL anymore. | |
95cd4c40 | 4490 | (union register_info_type, REG_MATCH_NULL_STRING_P, IS_ACTIVE) |
80460654 GM |
4491 | (MATCHED_SOMETHING, EVER_MATCHED_SOMETHING, SET_REGS_MATCHED): |
4492 | Remove. | |
95cd4c40 SM |
4493 | (REG_UNSET_VALUE): Use NULL (why not?). |
4494 | (compile_range): Remove declaration since it doesn't exist. | |
4495 | (struct compile_stack_elt_t): Remove inner_group_offset. | |
4496 | (old_reg(start|end), reg_info, reg_dummy, reg_info_dummy): Remove. | |
4497 | (regex_grow_registers): Remove dead code. | |
4498 | (FIXUP_ALT_JUMP): New macro. | |
80460654 GM |
4499 | (regex_compile): Add shy-groups Change loops to use |
4500 | on_failure_jump_smart&jump instead of | |
4501 | on_failure_jump&maybe_pop_jump. Change + loops to eliminate the | |
4502 | initial (dummy_failure_)jump. Remove c1_base (looks like unused | |
4503 | variable to me). Use `jump' instead of `jump_past_alt' and don't | |
4504 | bother with push_dummy_failure in alternatives since it is now | |
4505 | unnecessary. Use FIXUP_ALT_JUMP. Eliminate a useless `#ifdef | |
4506 | emacs' for (re)allocating the stack. | |
4507 | (re_compile_fastmap): Remove dead variables i and num_regs. Exit | |
4508 | from loop when bufp->can_be_null rather than jumping to `done'. | |
4509 | Avoid jumping backwards so as to ensure termination. Use | |
4510 | PATTERN_STACK_EMPTY and POP_PATTERN_OP. Improved handling of | |
4511 | backreferences. Remove dead code in handling of `anychar'. | |
95cd4c40 | 4512 | (skip_noops, mutually_exclusive_p): New functions taken from the |
80460654 GM |
4513 | handling of `maybe_pop_jump' in re_match_2_internal. Slightly |
4514 | improve mutually_exclusive_p to handle ".+\n". | |
4515 | (lowest_active_reg, highest_active_reg, | |
4516 | NO_(LOWEST|HIGHEST)_ACTIVE_REG) Remove. | |
4517 | (re_match_2_internal): Use %p instead of 0x%x when printf'ing | |
4518 | ptrs. Don't SET_REGS_MATCHED anymore. Remove many dead | |
4519 | variables. Push register (in `start_memory') on the stack rather | |
4520 | than storing it in old_reg(start|end). Remove the cycle detection | |
4521 | from `stop_memory', replaced by the use of on_failure_jump_loop | |
4522 | for greedy loops. Add code for the new on_failure_jump_<foo>. | |
4523 | Remove ad-hoc code in `on_failure_jump' to push more registers in | |
4524 | the case of a loop. Take out code from `maybe_pop_jump' into | |
4525 | separate functions and adapt it to the semantics of | |
4526 | `on_failure_jump_smart'. Remove jump_past_alt, dummy_failure_jump | |
4527 | and push_dummy_failure. Remove dummy_failure handling and | |
4528 | handling of `failures to jump to on_failure_jump' (this last one | |
4529 | was already dead code, it seems). | |
4530 | (group_match_null_string_p, alt_match_null_string_p) | |
4531 | (common_op_match_null_string_p): Remove. | |
95cd4c40 | 4532 | |
7397acc4 DL |
4533 | 2000-03-08 Dave Love <fx@gnu.org> |
4534 | ||
4535 | * config.in: Don't depend on __STDC__ for volatile. | |
4536 | Add POINTER_TYPE, PTR, PROTOTYPES. | |
4537 | ||
4538 | * hftctl.c, strftime.c: Use PROTOTYPES. | |
4539 | * eval.c (find_handler_clause): Likewise. | |
4540 | ||
4541 | * mem-limits.h: Use POINTER_TYPE. | |
4542 | ||
4543 | * lisp.h (P_): Define based on PROTOTYPES, not __STDC__. | |
4544 | (memory_warnings): Declare using POINTER_TYPE. | |
4545 | ||
5e91ff9e GM |
4546 | 2000-03-08 Gerd Moellmann <gerd@gnu.org> |
4547 | ||
feab4fba GM |
4548 | * xfns.c (x_set_cursor_type): If ARG is nil, give frame no cursor. |
4549 | ||
25edb08f GM |
4550 | * xdisp.c (display_echo_area): Temporarily inhibit garbage |
4551 | collection. | |
4552 | ||
5e91ff9e GM |
4553 | * xfns.c: Remove obsolete code in #if 0. |
4554 | (Fx_focus_frame): New function. | |
4555 | ||
a735b7e1 KH |
4556 | 2000-03-07 Miyashita Hisashi <himi@bird.scphys.kyoto-u.ac.jp> |
4557 | ||
4558 | * coding.c (coding_category_name): Add coding-category-utf-8, | |
4559 | coding-category-utf-16-be, coding-category-utf-16-le. | |
4560 | (UTF_8_1_OCTET_P, UTF_8_EXTRA_OCTET_P, UTF_8_2_OCTET_LEADING_P, | |
4561 | UTF_8_3_OCTET_LEADING_P, UTF_8_4_OCTET_LEADING_P, | |
4562 | UTF_8_5_OCTET_LEADING_P, UTF_8_6_OCTET_LEADING_P): New macros. | |
4563 | (detect_coding_utf_8): New function. | |
4564 | (UTF_16_INVALID_P, UTF_16_HIGH_SURROGATE_P | |
4565 | UTF_16_LOW_SURROGATE_P): New macros. | |
4566 | (detect_coding_utf_16): New function | |
4567 | (detect_coding_mask): When priorities are specified, skip any | |
4568 | categories that have `nil' coding-system. Fix bug of returning | |
4569 | wrong mask when PRIORITIES is specified and detect_coding_XXX() | |
4570 | returns a mask not set in PRIORITIES. | |
4571 | (detect_eol_type_in_2_octet_form): New function. | |
4572 | (detect_eol): selects detect_eol_type_XXX to call according to | |
4573 | cooding->category_idx. | |
4574 | (detect_coding_system): Remove `nil' coding-system in the result. | |
4575 | (Fupdate_coding_systems_internal): Update all coding-categories. | |
4576 | ||
4577 | * coding.h (CODING_CATEGORY_IDX_UTF_8, | |
4578 | CODING_CATEGORY_IDX_UTF_16_BE, CODING_CATEGORY_IDX_UTF_16_LE): New | |
4579 | macros. | |
4580 | (CODING_CATEGORY_IDX_RAW_TEXT, CODING_CATEGORY_IDX_BINARY, | |
4581 | CODING_CATEGORY_IDX_MAX): Adjusted for the above macros. | |
4582 | CODING_CATEGORY_IDX_UTF_16_LE. | |
4583 | (CODING_CATEGORY_MASK_UTF_8, CODING_CATEGORY_MASK_UTF_16_BE, | |
4584 | CODING_CATEGORY_MASK_UTF_16_LE): New macros. | |
4585 | (CODING_CATEGORY_MASK_ANY): Include the above macros. | |
4586 | (CODING_CATEGORY_MASK_UTF_16_BE_LE): New macro. | |
4587 | ||
9994cc69 GM |
4588 | 2000-03-07 Gerd Moellmann <gerd@gnu.org> |
4589 | ||
e9b4e5ff GM |
4590 | * doc.c (Fdocumentation_property): If value is not a string, |
4591 | and doesn't refer to etc/DOC, evaluate it to obtain a string. | |
4592 | ||
f7daf1e1 GM |
4593 | * xterm.c (x_connection_closed) [USE_X_TOOLKIT]: Don't try to |
4594 | close the display with XtCloseDisplay. This caused a bus error | |
4595 | on OpenWindows. | |
4596 | ||
9994cc69 GM |
4597 | * minibuf.c (Fminibuffer_complete): Move point to ZV when input is |
4598 | complete but not unique. | |
4599 | ||
4336c705 GM |
4600 | 2000-03-06 Gerd Moellmann <gerd@gnu.org> |
4601 | ||
18bb0684 GM |
4602 | * process.c (send_process): Remove local variable `procname' that |
4603 | might become invalid when a GC happens. Instead, access the | |
4604 | process name slot directly. | |
4605 | ||
4336c705 GM |
4606 | * xfns.c (x_set_menu_bar_lines_1): Adjust window's orig_top and |
4607 | orig_height if set. | |
4608 | ||
4609 | * frame.c (set_menu_bar_lines_1): Adjust window's orig_top and | |
4610 | orig_height if set. | |
4611 | ||
515d0d0e EZ |
4612 | 2000-03-06 Eli Zaretskii <eliz@is.elta.co.il> |
4613 | ||
4614 | * msdos.c (IT_note_mouse_highlight): Return immediately if frame's | |
4615 | glyph matrices have been freed. | |
4616 | ||
100b3cbb GM |
4617 | 2000-03-05 Gerd Moellmann <gerd@gnu.org> |
4618 | ||
50df5e5a | 4619 | * Makefile.in (tags): Include ../lwlib/TAGS in TAGS. |
6178bc23 | 4620 | (bootstrap-temacs): Set LC_ALL to C like for temacs. |
50df5e5a GM |
4621 | |
4622 | * xfns.c (QCdata): Moved to xdisp.c. | |
4623 | ||
4624 | * xdisp.c (QCdata): Moved here from xfns.c. | |
4625 | (syms_of_xdisp): Initialize QCdata. | |
4626 | ||
4627 | * frame.h (FRAME_INTERNAL_BORDER_WIDTH) [!HAVE_X_WINDOWS]: Define. | |
4628 | ||
4629 | * window.c (coordinates_in_window): Use | |
4630 | FRAME_INTERNAL_BORDER_WIDTH_SAFE instead of | |
4631 | FRAME_INTERNAL_BORDER_WIDTH. | |
4632 | ||
100b3cbb | 4633 | * xdisp.c (try_window_id): Recompute unchanged information if |
4336c705 | 4634 | it is obviously invalid. |
100b3cbb GM |
4635 | |
4636 | * xterm.c (x_term_init): Create a colormap if not using the | |
4637 | default visual. | |
4638 | ||
4639 | * xterm.h (select_visual): Change prototype. | |
4640 | ||
4641 | * xfns.c (select_visual): Rewritten. Recognize user-specified | |
4642 | visual classes. | |
4643 | (visual_classes): New variable. | |
4644 | ||
64d739c4 GM |
4645 | 2000-03-04 Gerd Moellmann <gerd@gnu.org> |
4646 | ||
4647 | * xfns.c (x_defined_color, x_set_mouse_color, lookup_rgb_color) | |
4648 | (lookup_pixel_color, x_laplace, x_build_heuristic_mask) | |
4649 | (png_load): Access colormap of frame using FRAME_X_COLORMAP. | |
4650 | (x_decode_color): Don't handle allocation of white and black | |
4651 | specially. | |
4652 | (x_window) [USE_X_TOOLKIT]: Set XtNvisual, XtNdepth, and | |
4653 | XtNcolormap resources. | |
4654 | (x_window) [!USE_X_TOOLKIT]: Pass colormap to XCreateWindow. | |
4655 | (Fx_create_frame): Initialize color members of x_output structure. | |
4656 | (xpm_load): Pass colormap to XPM lib. | |
4657 | ||
4658 | * xfaces.c (x_free_colors): Access colormap of frame using | |
4659 | FRAME_X_COLORMAP. Be paranoid about freeing black and white | |
4660 | when default colormap is used. | |
4661 | ||
4662 | * xterm.c (x_term_init): Set Colormap member of x_display_info | |
4663 | structure. Copy colormap if resource `privateColormap' is | |
4664 | specified (PseudoColor only). | |
4665 | (x_setup_relief_color): Access colormap of frame using | |
4666 | FRAME_X_COLORMAP. | |
4667 | ||
4668 | * xterm.h (struct x_display_info): Add Colormap member `cmap'. | |
4669 | (FRAME_X_COLORMAP, FRAME_X_VISUAL): New macros. | |
4670 | ||
c3cee013 JR |
4671 | 2000-03-04 Jason Rumney <jasonr@gnu.org> |
4672 | ||
4673 | * xfaces.c Change many FRAME_X... macros to FRAME_WINDOW... or | |
4674 | other non-platform-specific equivalents. | |
64d739c4 | 4675 | [WINDOWSNT]: Include w32term.h, fontset.h and define X |
c3cee013 JR |
4676 | specific functions and macros as their w32 equivalents where |
4677 | non-platform-specifics are not available. | |
4678 | [HAVE_X_WINDOWS]: Change most of these to HAVE_WINDOW_SYSTEM. | |
4679 | (x_create_gc, x_free_gc) [WINDOWSNT]: Add W32 versions. | |
4680 | (clear_font_table) [WINDOWSNT]: Call w32_unload_font. | |
4681 | (frame_update_line_height): Use macros to access f->output_data. | |
4682 | (defined_color): Remove FIXME comments; fixed. | |
4683 | (x_face_list_fonts, prepare_face_for_display): Put X specifics | |
4684 | into #ifdef blocks. Add WINDOWSNT blocks. | |
4685 | (Fx_list_fonts): Use macros for accessing font data. | |
4686 | (set_lface_from_font_name): Different default fonts for X and | |
4687 | WINDOWSNT. | |
4688 | (font_scalable_p) [WINDOWSNT]: Treat wildcard XLFD_AVGWIDTH as | |
4689 | scalable for backward compatibility. | |
64d739c4 | 4690 | (realize_tty_face) [MSDOS]: Do the same for WINDOWSNT. |
c3cee013 JR |
4691 | (syms_of_xfaces) [WINDOWSNT]: Allow scalable fonts by default. |
4692 | ||
64d739c4 | 4693 | * emacs.c (main) [HAVE_NTGUI]: Call syms_of_xfaces instead of |
c3cee013 JR |
4694 | syms_of_w32faces. |
4695 | ||
4696 | * makefile.nt (w32faces.obj): Remove. | |
4697 | (xfaces.obj): Add. | |
4698 | ||
807cc41c JR |
4699 | 2000-03-03 Jason Rumney <jasonr@gnu.org> |
4700 | ||
4701 | * keyboard.c (make_lispy_event): Call buffer_posn_from_coords with | |
4702 | correct parameters. | |
4703 | ||
0007072a KR |
4704 | 2000-03-03 Ken Raeburn <raeburn@gnu.org> |
4705 | ||
4706 | * unexelf.c (PT_LOAD, SHT_*, SHN_*) [__NetBSD__]: Only provide | |
4707 | standard ELF definitions here if the system header does not. | |
4708 | ||
71a6ba55 GM |
4709 | 2000-03-03 Gerd Moellmann <gerd@gnu.org> |
4710 | ||
4711 | * xterm.c (PER_CHAR_METRIC): Removed. | |
4712 | (x_per_char_metric_1, x_default_char): New functions. | |
4713 | (x_per_char_metric): If font's default char is invalid, return | |
4714 | metrics of a suitably chosen usable default char. | |
4715 | (x_draw_glyph_string_foreground): If font has an invalid default | |
64d739c4 GM |
4716 | char, replace occurrences of unprintable chars with a suitably |
4717 | chosen usable default char. | |
71a6ba55 | 4718 | |
900fa1f1 GM |
4719 | 2000-03-02 Gerd Moellmann <gerd@gnu.org> |
4720 | ||
42f55fe0 GM |
4721 | * xterm.c (note_mouse_highlight): Return quickly if frame's |
4722 | glyph matrices have been freed. | |
4723 | ||
4724 | * dispnew.c (free_glyphs): Block input while freeing matrices. | |
4725 | ||
900fa1f1 GM |
4726 | * xfns.c (x_clear_image, x_kill_gs_process): Use x_free_colors. |
4727 | ||
4728 | * xterm.c (x_alloc_lighter_color, x_setup_relief_color): Use | |
4729 | x_free_colors. | |
4730 | ||
4731 | * dispextern.h (x_free_colors): Add prototype. | |
4732 | ||
4733 | * xfaces.c (x_free_colors): New function. | |
4734 | (unload_color, free_face_colors): Use it. | |
4735 | ||
2f950292 EZ |
4736 | 2000-03-02 Eli Zaretskii <eliz@is.elta.co.il> |
4737 | ||
4738 | * msdos.h (FRAME_INTERNAL_BORDER_WIDTH): Define to zero. | |
4739 | ||
4740 | * window.c [MSDOS]: Include msdos.h. | |
4741 | ||
54d04320 DL |
4742 | 2000-03-02 Dave Love <fx@gnu.org> |
4743 | ||
4744 | * m/powerpcle.h, m/sparc.h: Don't set C_OPTIMIZE_SWITCH. | |
4745 | ||
4746 | * m/mips-siemens.h, m/news-r6.h, m/news-risc.h, m/tekxd88.h: Don't | |
4747 | set C_OPTIMIZE_SWITCH for gcc. | |
4748 | ||
0ba93ac4 KH |
4749 | 2000-03-02 Kenichi Handa <handa@etl.go.jp> |
4750 | ||
4751 | * coding.c (coding_save_composition): Be sure to allocate | |
4752 | composition data area in coding even if there's no composition in | |
4753 | the current run. | |
4754 | ||
a2bc11d4 JR |
4755 | 2000-03-01 Jason Rumney <jasonr@gnu.org> |
4756 | ||
4757 | * w32term.c: Equivalent changes to those made to xterm.c on | |
4758 | 2000-02-25 and 2000-02-24. | |
4759 | ||
4760 | * w32fns.c: Equivalent changes to those made to xfns.c on | |
4761 | 2000-02-25 and 2000-02-21. | |
4762 | ||
4763 | * sysdep.c: [WINDOWSNT]: Use sys_read and sys_write to ensure | |
4764 | correct line-end convention is followed. | |
4765 | ||
4766 | * w32menu.c [HAVE_BOXES]: Remove #undef. | |
4767 | (single_keymap_panes): Remove code for simulating checkmarks. | |
4768 | (single_menu_item): Remove notbuttons_ptr argument. Callers changed. | |
4769 | Remove code for drawing simulated checkmarks. | |
4770 | (w32_menu_show): make unibyte help string correctly. | |
4771 | (add_menu_item): draw standard Windows checkmarks. Draw radio | |
4772 | buttons as radio buttons if possible. | |
4773 | ||
72d19d75 GM |
4774 | 2000-03-01 Gerd Moellmann <gerd@gnu.org> |
4775 | ||
2df636f4 GM |
4776 | * sysdep.c (start_of_text): Don't define this function for NetBSD |
4777 | with ELF. | |
4778 | ||
427ec082 | 4779 | * m/pmax.h (START_FILES, CANNOT_DUMP) [__NetBSD__ || __OpenBSD__]: |
2df636f4 GM |
4780 | Don't define. |
4781 | (UNEXEC) [__NetBSD__ || __OpenBSD__]: Define to unexelf.o. | |
4782 | (LINKER): Don't undef if __NetBSD__ is defined. | |
4783 | ||
4784 | * m/mips.h (LINKER) [__NetBSD__ || __OpenBSD__]: Don't define. | |
4785 | ||
4786 | * fileio.c [__NetBSD__]: Define `unix'. | |
4787 | ||
72d19d75 GM |
4788 | * xfns.c (start_busy_cursor): Allow floats for busy-cursor-delay. |
4789 | ||
ed4d0512 GM |
4790 | 2000-02-29 Gerd Moellmann <gerd@gnu.org> |
4791 | ||
50b1039f GM |
4792 | * atimer.c (start_atimer): Don't abort when timers are stopped. |
4793 | (append_atimer_lists): New function. | |
4794 | (cancel_atimer, stop_other_atimers, run_all_atimers): Handle | |
4795 | arbitrary lists of stopped and running atimers. | |
4796 | ||
ed4d0512 GM |
4797 | * atimer.c (cancel_atimer): Handle canceling an atimer when |
4798 | some timers are stopped. | |
4799 | ||
4800 | * xfns.c (cancel_busy_cursor): Set busy_cursor_atimer to null | |
4801 | after canceling it. | |
4802 | ||
4803 | * fns.c (maybe_resize_hash_table): Handle case of new size | |
4804 | coming out as being the same as old size. | |
4805 | ||
387023ee JR |
4806 | 2000-02-27 Jason Rumney <jasonr@gnu.org> |
4807 | ||
4808 | * makefile.nt: Add atimer.h to dependencies. | |
4809 | * w32.c (init_environment): Set Vw32_num_mouse_buttons here. | |
4810 | * w32console.c: Only disable window system features for dispextern.h | |
4811 | (initialize_w32_display): Build a display info for the console. | |
4812 | * w32faces.c (tty_defined_color): Apply xfaces.c change from 02-17. | |
4813 | * w32fns.c (w32_wnd_proc) [WM_LBUTTON_DOWN, WM_RBUTTON_DOWN, | |
4814 | WM_LBUTTON_UP, WM_RBUTTON_UP]: Do not treat 4 or more button mice | |
4815 | as 2 button mice. | |
4816 | * w32gui.h (struct W32FontStruct): Revert last change after change | |
4817 | to xdisp.c. | |
4818 | * w32menu.c (single_submenu): Set up help string. | |
4819 | [!HAVE_MULTILINGUAL_MENU]: Don't overwrite item_name with descrip. | |
4820 | (w32_dialog_show): Set up help string. | |
4821 | * w32term.c (w32_display_info_for_display): Remove unused function. | |
4822 | (w32_draw_bitmap): Use pre-built bitmaps. | |
4823 | (w32_initialize_display_info): New function to initialize parts of | |
4824 | display info that are common to both GUI and console frames. | |
4825 | (w32_term_init): Use w32_initialize_display_info. Do not set | |
4826 | Vw32_num_mouse_buttons here, as it is not called for console | |
4827 | frames. Build bitmaps for indicating truncated lines etc. | |
4828 | (x_delete_display): Destroy pre-built bitmaps. | |
4829 | * xdisp.c (handle_single_display_prop): Use FONT_HEIGHT macro. | |
4830 | (echo_area_display): Change HAVE_X_WINDOWS to HAVE_WINDOW_SYSTEM. | |
4831 | ||
4516715a DL |
4832 | 2000-02-27 Dave Love <fx@gnu.org> |
4833 | ||
4834 | * lisp.h: Add a bunch of prototypes. | |
4835 | ||
171ca836 KH |
4836 | 2000-02-26 Kenichi Handa <handa@etl.go.jp> |
4837 | ||
4838 | * keyboard.c (read_char): Set `usec' correctly. | |
4839 | ||
4013921d KH |
4840 | 2000-02-25 Miyashita Hisashi <himi@bird.scphys.kyoto-u.ac.jp> |
4841 | ||
4842 | * ccl.c (ccl_driver) [CCL_MapMultiple]: When the mapped value is | |
4843 | `lambda', set reg[RRR] to the map index. | |
4844 | (ccl_driver) [CCL_MapSingle]: When the mapped value is found, set | |
4845 | reg[RRR] to 0. Otherwise, set it to -1. | |
4846 | ||
9244a058 GM |
4847 | 2000-02-25 Gerd Moellmann <gerd@gnu.org> |
4848 | ||
2df636f4 | 4849 | * emacs.c (main): Remove code snippet commented out with `//'. |
9244a058 | 4850 | |
18e21ce8 | 4851 | 2000-02-25 Richard M. Stallman <rms@gnu.org> |
427ec082 | 4852 | |
f43d79c1 GM |
4853 | * fileio.c (Ffile_symlink_p): If result starts with a `/' |
4854 | and contains a `:', prepend `/:'. | |
4855 | ||
4856 | * window.c (select_window_1): If selected_window is nil, | |
4857 | don't "swap out" the buffer's point. | |
4858 | (Fset_window_configuration): Set selected_window to nil | |
4859 | before calling Fselect_window. | |
4860 | (unshow_buffer): Don't set point in buffer from window's point | |
4861 | if another more recently selected window also shows the buffer. | |
4862 | ||
bed0c171 GM |
4863 | 2000-02-25 Gerd Moellmann <gerd@gnu.org> |
4864 | ||
449c3c52 GM |
4865 | * keyboard.c (recursive_edit_1): Cancel busy-cursor. |
4866 | ||
f5b58615 GM |
4867 | * xfns.c (inhibit_busy_cursor, busy_count): Removed. |
4868 | (Fx_show_busy_cursor, Fx_hide_busy_cursor): Removed. | |
4869 | (busy_cursor_atimer, busy_cursor_shown_p, Vbusy_cursor_delay): New | |
4870 | variables. | |
4871 | (DEFAULT_BUSY_CURSOR_DELAY): New define. | |
4872 | (start_busy_cursor, cancel_busy_cursor, show_busy_cursor) | |
4873 | (hide_busy_cursor): New functions. | |
4874 | (syms_of_xfns): DEFVAR_LISP Vbusy_cursor_delay. | |
4875 | ||
4876 | * minibuf.c (read_minibuf): Cancel busy-cursor. | |
4877 | ||
4878 | * keyboard.c (command_loop_1): Call start_busy_cursor before | |
4879 | Fcommand_execute and cancel_busy_cursor after it. | |
4880 | (timer_check): Remove busy-cursor code. | |
4881 | (Fread_key_sequence, Fread_key_sequence_vector): Start/cancel busy | |
4882 | cursor timer. | |
4883 | ||
4884 | * process.c (wait_reading_process_input): Remove busy-cursor code. | |
4885 | ||
4886 | * eval.c (Fsignal): Call cancel_busy_cursor instead of | |
4887 | Fx_hide_busy_cursor. | |
4888 | ||
4889 | * dispextern.h (Fx_show_busy_cursor, Fx_hide_busy_cursor): | |
4890 | Remove prototyoes. | |
4891 | (start_busy_cursor, cancel_busy_cursor): Add prototypes. | |
4892 | ||
4893 | * lisp.h (Fx_hide_busy_cursor): Remove prototype. | |
4894 | ||
4895 | * xterm.c (XTread_socket): Remove busy-cursor code. | |
4896 | ||
4eb8436f GM |
4897 | * dispnew.c (flush_stdout) [GLYPH_DEBUG]: New function. |
4898 | (build_frame_matrix_from_leaf_window): Put code handling | |
4899 | glyph row's not being a slice of a frame row in #if 0. | |
4900 | (sync_window_with_frame_matrix_rows): New function. | |
4901 | (frame_row_to_window): New function. | |
4902 | (mirror_line_dance): Handle copies between windows. | |
4903 | ||
3cb65b0e GM |
4904 | * lread.c (Fload): Use `xfree' instead of `free'. |
4905 | (init_obarray): Use `xmalloc' instead of `malloc'. | |
4906 | ||
bed0c171 GM |
4907 | * window.c (Fset_window_buffer): Set WINDOW to the window |
4908 | after decoding. | |
2add4349 GM |
4909 | (coordinates_in_window): Take frame's internal border width |
4910 | into account. | |
bed0c171 | 4911 | |
42088c12 GM |
4912 | 2000-02-24 Gerd Moellmann <gerd@gnu.org> |
4913 | ||
4914 | * xterm.c (x_display_and_set_cursor): Display cursor of | |
4915 | non-selected windows depending on the setting of | |
4916 | cursor_in_non_selected_windows. | |
4917 | ||
4918 | * xdisp.c (cursor_in_non_selected_windows): New variable. | |
4919 | (syms_of_xdisp): DEFVAR_BOOL it. | |
4920 | ||
d1e103b2 GM |
4921 | 2000-02-23 Gerd Moellmann <gerd@gnu.org> |
4922 | ||
723e779c GM |
4923 | * data.c (Fstring_to_number): If number is greater than what |
4924 | fits into an integer, return a float. | |
4925 | ||
d1e103b2 GM |
4926 | * eval.c (specbind): Remove references to |
4927 | keyword_symbols_constant_flag. | |
4928 | ||
4929 | * data.c (keyword_symbols_constant_flag): Removed. | |
4930 | (Fmakunbound, set_internal, syms_of_data): Remove references to | |
4931 | keyword_symbols_constant_flag. | |
4932 | ||
4933 | * bytecode.c (Fbyte_code): Remove keyword_symbols_constant_flag. | |
4934 | ||
214f877f KH |
4935 | 2000-02-23 Kenichi Handa <handa@etl.go.jp> |
4936 | ||
4937 | * syntax.c (multibyte_syntax_as_symbol): New variable. | |
4938 | (syms_of_syntax): Declare it as a Lisp variable. | |
4939 | (SYNTAX_WITH_MULTIBYTE_CHECK): New macro. | |
4940 | (scan_lists): If both sexpflag and multibyte_syntax_as_symbol are | |
4941 | nonzero, treat all multibyte characters as symbol. | |
42088c12 | 4942 | (init_syntax_once): Give syntax `word' to all multibyte |
214f877f KH |
4943 | characters. |
4944 | ||
130adcb7 EZ |
4945 | 2000-02-22 Eli Zaretskii <eliz@is.elta.co.il> |
4946 | ||
3cb65b0e | 4947 | * frame.c (Fdelete_frame): Don't let echo_area_window remain on |
d7d0dac0 | 4948 | a deleted frame. |
130adcb7 | 4949 | |
17cbbf95 GM |
4950 | 2000-02-21 Gerd Moellmann <gerd@gnu.org> |
4951 | ||
4952 | * frame.c (Fmouse_position): GCPRO retval instead of x and y. | |
4953 | ||
4954 | * xfns.c (x_window_to_frame, x_any_window_to_frame) | |
4955 | (x_non_menubar_window_to_frame): Check the busy-cursor window. | |
4956 | ||
beb0bc36 DL |
4957 | 2000-02-21 Dave Love <fx@gnu.org> |
4958 | ||
4959 | * frame.c (Vmouse_position_function): New variable. | |
4960 | (Fmouse_position): Use it. | |
4961 | (syms_of_frame): Install it. | |
4962 | ||
4963 | * charset.c (find_charset_in_str): Fix use of `c' instead of `c1'. | |
4964 | ||
1d92afcd GM |
4965 | 2000-02-20 Gerd Moellmann <gerd@gnu.org> |
4966 | ||
4967 | * fileio.c (Finsert_file_contents): Unbind the binding of | |
4968 | standard-output done by temp_output_buffer_setup. | |
329eed9f GM |
4969 | |
4970 | * eval.c (funcall_lambda): Don't bind Qmocklisp_arguments unless | |
4971 | Vmocklisp_arguments is nil. Inline Fcar and Fcdr. | |
4972 | (specbind, unbind_to): Handle most common case of non-constant | |
4973 | symbol with trivial value specially. | |
4974 | ||
4975 | * bytecode.c (Fbyte_code) <Bvarset>: Inline most common case. | |
4976 | ||
18e21ce8 | 4977 | 2000-02-20 Richard M. Stallman <rms@gnu.org> |
2d06696f RS |
4978 | |
4979 | * data.c (Fmake_variable_buffer_local): Doc fix. | |
4980 | Init found_for_buffer to 0. | |
4981 | (Fmake_variable_frame_local): If the variable has already | |
4982 | been buffer-local, set the check_frame field. | |
4983 | ||
1d4311c3 EZ |
4984 | 2000-02-20 Eli Zaretskii <eliz@is.elta.co.il> |
4985 | ||
4986 | * msdos.c (IT_write_glyphs): Allocate a larger screen_buf as data | |
4987 | produced for CODING_MODE_LAST_BLOCK requires. | |
4988 | ||
2dc95ddd DL |
4989 | 2000-02-18 Dave Love <fx@gnu.org> |
4990 | ||
4991 | * keyboard.c (echo_keystrokes): Remove declaration. | |
4992 | (Vecho_keystrokes) New variable. | |
4993 | (read_char, record_menu_key, read_key_sequence): Use it to allow | |
4994 | use of float value. | |
4995 | (syms_of_keyboard): Change Vecho_keystrokes declaration. | |
4996 | ||
4997 | * lread.c: Undef feature selection macros before defining. | |
4998 | ||
f0930f35 GM |
4999 | 2000-02-18 Gerd Moellmann <gerd@gnu.org> |
5000 | ||
5001 | * data.c (let_shadows_buffer_binding_p): Ignore specbindings | |
5002 | for symbols other than the symbol in question. | |
5003 | ||
e3d4de90 DL |
5004 | 2000-02-17 Dave Love <fx@gnu.org> |
5005 | ||
5006 | * s/sol2.h (C_DEBUG_SWITCH): Define to allow optimization. | |
5007 | ||
0b378936 GM |
5008 | 2000-02-17 Gerd Moellmann <gerd@gnu.org> |
5009 | ||
d621caf7 GM |
5010 | * emacs.c (main): Use #if GC_MARK_STACK instead of #ifdef. |
5011 | ||
0b378936 GM |
5012 | * alloc.c (enum mem_type): Compile unconditionally. |
5013 | ||
3b451f74 EZ |
5014 | 2000-02-17 Eli Zaretskii <eliz@is.elta.co.il> |
5015 | ||
5016 | * xfaces.c (tty_defined_color): Don't return faulire indication | |
5017 | for unspecified-fg and unspecified-bg pseudo-colors. | |
5018 | ||
10689a01 GM |
5019 | 2000-02-17 Gerd Moellmann <gerd@gnu.org> |
5020 | ||
1216f5e4 GM |
5021 | * alloc.c (mark_object): Don't mark symbol names in pure space. |
5022 | (gc_sweep): Don't unmark symbol names in pure space. | |
5023 | ||
5024 | * lisp.h (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS) | |
5025 | (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES) | |
5026 | [GC_MARK_STACK]: New defines. | |
427ec082 | 5027 | (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, UNGCPRO) |
1216f5e4 GM |
5028 | [GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS]: Define as no-ops. |
5029 | ||
5030 | * emacs.c (main) [GC_MARK_STACK]: Initialize stack_base. | |
5031 | ||
5032 | * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use | |
5033 | allocate_buffer instead of xmalloc. | |
5034 | ||
5035 | * alloc.c (toplevel): Include setjmp.h. | |
5036 | (PURE_POINTER_P): New define. | |
5037 | (enum mem_type) [GC_MARK_STACK]: New enumeration. | |
5038 | (Vdead) [GC_MARK_STACK]: New variable. | |
5039 | (lisp_malloc): Add parameter TYPE, call mem_insert if | |
5040 | GC_MARK_STACK is defined. | |
5041 | (allocate_buffer): New function. | |
427ec082 | 5042 | (lisp_free) [GC_MARK_STACK]: Call mem_delete. |
1216f5e4 GM |
5043 | (free_float) [GC_MARK_STACK]: Set type to Vdead. |
5044 | (free_cons) [GC_MARK_STACK]: Set car to Vdead. | |
5045 | (stack_base, mem_root, mem_z) [GC_MARK_STACK]: New variables. | |
5046 | (MEM_NIL) [GC_MARK_STACK]: New define. | |
5047 | (struct mem_node) [GC_MARK_STACK]: New structure. | |
5048 | (mem_init, mem_find, mem_insert, mem_delete, mem_insert_fixup) | |
5049 | (mem_delete_fixup, mem_rotate_left, mem_rotate_right) | |
5050 | (live_string_p, live_cons_p, live_symbol_p, live_float_p) | |
5051 | (live_misc_p, live_vector_p, live_buffer_p, mark_memory) | |
5052 | (mark_stack) [GC_MARK_STACK]: New functions. | |
5053 | (Fgarbage_collect) [GC_MARK_STACK]: Call mark_stack. | |
5054 | (clear_marks): Removed. | |
5055 | (gc_sweep): Set free conses' car, free floats' type, free | |
5056 | symbols' function to Vdead. Use lisp_free to free buffers. | |
5057 | (init_alloc_once): Initialize Vdead. | |
5058 | (survives_gc_p): Return non-zero for pure objects. | |
5059 | ||
5060 | * alloc.c: Add comments throughout the file. | |
5061 | ||
2503c8b1 GM |
5062 | * atimer.c (stop_other_atimers): Don't call cancel_atimer because |
5063 | that unblocks alarms. | |
5064 | ||
8389e1e2 GM |
5065 | * alloc.c, bytecode.c, data.c, dispnew.c, ecrt0.c, editfns.c, |
5066 | emacs.c, floatfns.c, fns.c, lread.c, print.c, config.in, lisp.h, | |
5067 | Makefile.in: Remove `LISP_FLOAT_TYPE' and `standalone'. | |
5068 | ||
10689a01 | 5069 | * frame.c (make_frame): Set frame initiallly to `garbaged'. |
427ec082 | 5070 | |
bfc17d18 KH |
5071 | 2000-02-17 Kenichi Handa <handa@etl.go.jp> |
5072 | ||
4a09dee0 KH |
5073 | * xdisp.c (decode_mode_spec_coding): Delete superfluous code to |
5074 | avoid infinite error signaling. Allocate sufficient memory for | |
5075 | eol_str in the case that eoltype is Lisp_Int. | |
bfc17d18 | 5076 | |
2b927d02 SM |
5077 | 2000-02-17 Stefan Monnier <monnier@cs.yale.edu> |
5078 | ||
5079 | * syntax.c (Fforward_comment): Undo the previous change, since cc-mode | |
5080 | depends on the previous behavior. | |
5081 | ||
b49cb764 GM |
5082 | 2000-02-16 Gerd Moellmann <gerd@gnu.org> |
5083 | ||
5084 | * sysdep.c (vfork) [!HAVE_VFORK]: Removed. | |
5085 | ||
99e95407 GM |
5086 | 2000-02-15 Gerd Moellmann <gerd@gnu.org> |
5087 | ||
5088 | * s/freebsd.h (BROKEN_PTY_READ_AFTER_EAGAIN): Define. | |
5089 | ||
5090 | * process.c (send_process) [BROKEN_PTY_READ_AFTER_EAGAIN]: | |
b49cb764 | 5091 | Workaround for FreeBSD bug. Clear output queue after EAGAIN in |
99e95407 GM |
5092 | write(2). |
5093 | ||
6ffd3cf7 RS |
5094 | 2000-02-15 Richard M. Stallman <rms@gnu.org> |
5095 | ||
5096 | * data.c (set_internal): Don't make variable buffer-local | |
5097 | if within a let-binding for the same buffer. | |
5098 | (let_shadows_buffer_binding_p): New function. | |
5099 | ||
5100 | * eval.c (specbind): For buffer-local value, | |
5101 | record the current buffer also. | |
5102 | (unbind_to): Cope with that change. | |
5103 | ||
cad53475 GM |
5104 | 2000-02-15 Gerd Moellmann <gerd@gnu.org> |
5105 | ||
5106 | * window.c (Fsave_window_excursion): Doc fix. | |
5107 | ||
1aa963c8 SM |
5108 | 2000-02-15 Stefan Monnier <monnier@cs.yale.edu> |
5109 | ||
5110 | * syntax.c (back_comment): Make sure we only consider comment-starters | |
5111 | of the relevant style and return -1 in case of a failure to find the | |
5112 | beginning of the comment. | |
5113 | (Fforward_comment): If back_comment fails, go back to the position just | |
5114 | after the comment-end. | |
5115 | (scan_lists): Add comment describing a very minor bug. | |
5116 | ||
b9b84fd3 SM |
5117 | 2000-02-14 Stefan Monnier <monnier@cs.yale.edu> |
5118 | ||
5119 | * minibuf.c (Ftry_completion, Fall_completions): Add a reference to | |
5120 | `completion-regexp-list' in the docstring. | |
5121 | ||
3a28db80 DL |
5122 | 2000-02-14 Dave Love <fx@gnu.org> |
5123 | ||
5124 | * xfaces.c (tty_defined_color): Declare color_idx unsigned long. | |
5125 | ||
fb4a568d SM |
5126 | 2000-02-14 Stefan Monnier <monnier@cs.yale.edu> |
5127 | ||
5128 | * regex.h (RE_SYNTAX_EMACS): Add RE_CHAR_CLASSES and RE_INTERVALS | |
5129 | to Emacs' syntax. Also fix the comment about set/not-set meanings | |
5130 | since Emacs syntax is not the value 0 any more. | |
5131 | * search.c (compile_pattern_1): Remove RE_CHAR_CLASSES from the syntax | |
5132 | since it's now part of RE_SYNTAX_EMACS. | |
5133 | ||
1063ebb5 DL |
5134 | 2000-02-12 Dave Love <fx@gnu.org> |
5135 | ||
5136 | * frame.h (SELECTED_FRAME): Use NULL, not 0 to avoid warnings on | |
5137 | Alpha. | |
5138 | ||
fb07a302 GM |
5139 | 2000-02-12 Gerd Moellmann <gerd@gnu.org> |
5140 | ||
5141 | * xdisp.c (syms_of_xdisp): Doc fix for scroll-conservatively. | |
5142 | ||
aaf2320c DL |
5143 | 2000-02-12 Dave Love <fx@gnu.org> |
5144 | ||
5145 | * s/aix3-2.h, s/osf-1.h: Define C_DEBUG_SWITCH for non-gcc. | |
5146 | ||
5147 | * s/ux4800.h, s/umips.h, s/umax.h, s/sol2.h, s/sco5.h, s/rtu.h: | |
fb07a302 GM |
5148 | * s/ptx4.h, s/umax.h, s/dgux.h, s/bsd4-2.h, s/bsd4-3.h: |
5149 | * s/hpux.h: Don't define HAVE_VFORK. | |
aaf2320c DL |
5150 | |
5151 | * s/gnu-linux.h: Don't define HAVE_VFORK or HAVE_SYS_SIGLIST. | |
5152 | ||
5153 | * s/nextstep.h: Don't define HAVE_ALLOCA. | |
5154 | ||
5155 | * config.in: Add vfork bits. | |
5156 | ||
eedf8bde GM |
5157 | 2000-02-12 Gerd Moellmann <gerd@gnu.org> |
5158 | ||
5159 | * process.c (Fopen_network_stream) [POLL_FOR_INPUT]: Register | |
5160 | unwind function to undo the effect of stopping atimers. | |
5161 | ||
5162 | * keyboard.c (bind_polling_period): Stop all timers except | |
5163 | poll_timer. | |
5164 | ||
5165 | * atimer.c (stopped_atimers): New variable. | |
5166 | (stop_other_atimers, run_all_atimers, unwind_stop_other_atimers): | |
5167 | New functions. | |
5168 | ||
5169 | * atimer.h (stop_other_atimers, run_all_atimers) | |
5170 | (unwind_stop_other_atimers): Add function prototypes. | |
427ec082 | 5171 | |
eedf8bde GM |
5172 | * s/hpux10.h (HAVE_XRMSETDATABASE): Define if not already defined. |
5173 | ||
8476c2f8 KR |
5174 | 2000-02-11 Ken Raeburn <raeburn@gnu.org> |
5175 | ||
5176 | * Makefile.in (LIBX): Link in tiff library before jpeg, since tiff | |
5177 | library may depend on jpeg. | |
5178 | (atimer.o): Depends on atimer.c. | |
5179 | ||
0e85e4a3 KH |
5180 | 2000-02-11 Kenichi Handa <handa@etl.go.jp> |
5181 | ||
5182 | * insdel.c (del_range_1): Call update_compositions. | |
5183 | (del_range_both): Call update_compositions just once.. | |
5184 | ||
97fa0cc8 DL |
5185 | 2000-02-10 Dave Love <fx@gnu.org> |
5186 | ||
5187 | * xfns.c (create_frame_xic): Fix initialization of automatic | |
5188 | aggregates for pcc. | |
5189 | ||
25566a3c KH |
5190 | 2000-02-09 Kenichi Handa <handa@etl.go.jp> |
5191 | ||
5192 | * ccl.c (CCL_MAKE_CHAR): New macro. | |
5193 | (ccl_driver) <CCL_TranslateCharacter>: Check the validity of | |
5194 | registers by CCL_MAKE_CHAR before calling translate_char. | |
5195 | <CCL_TranslateCharacterConstTbl> Likewise. | |
5196 | ||
69da54ba DL |
5197 | 2000-02-08 Dave Love <fx@gnu.org> |
5198 | ||
5199 | * lread.c (__EXTENSIONS__): Define. | |
5200 | ||
f7136ee8 GM |
5201 | 2000-02-08 Gerd Moellmann <gerd@gnu.org> |
5202 | ||
5203 | * puresize.h (BASE_PURESIZE): Increase to 650000. | |
5204 | ||
7768790b EZ |
5205 | 2000-02-07 Eli Zaretskii <eliz@is.elta.co.il> |
5206 | ||
5207 | * msdos.c (XMenuActivate): Turn off the cursor after displaying | |
5208 | the help message. | |
5209 | ||
38fd211b EZ |
5210 | 2000-02-07 Eli Zaretskii <eliz@is.elta.co.il> |
5211 | ||
5212 | * s/msdos.h (INTERNAL_TERMINAL): Add capabilities se, so, us, ue, | |
5213 | md, mh, mb, mr, and me to the fake termcap entry. | |
5214 | ||
66e4690f KR |
5215 | 2000-02-06 Ken Raeburn <raeburn@gnu.org> |
5216 | ||
5217 | * sound.c (sound_cleanup): Don't call device close routine if the | |
5218 | function pointer is null. | |
5219 | ||
a75dfea0 AI |
5220 | 2000-02-06 Andrew Innes <andrewi@gnu.org> |
5221 | ||
5222 | * dispextern.h: Change HAVE_X_WINDOWS to HAVE_WINDOW_SYSTEM, | |
5223 | around image definitions and prototypes. | |
5224 | (gamma_correct) [WINDOWSNT]: New prototype. | |
5225 | ||
5226 | * w32term.c (x_make_frame_visible): Replace call to | |
5227 | input_poll_signal with poll_for_input. | |
5228 | ||
5229 | * window.c [WINDOWSNT]: Include w32term.h. | |
5230 | ||
5231 | * xdisp.c [WINDOWSNT]: Include w32term.h. | |
5232 | ||
5233 | * makefile.nt: Add dependencies on w32gui.h. | |
5234 | (OBJ1): Include atimer.obj. | |
5235 | ($(BLD)\atimer.obj): New dependency rule. | |
5236 | ||
5237 | * w32.c (sigmask): New function (does nothing). | |
5238 | (sigunblock): Ditto. | |
5239 | ||
5240 | * frame.c [WINDOWSNT]: Include w32term.h. | |
5241 | ||
5242 | * w32gui.h (struct W32FontStruct): Add ascent and descent slots. | |
5243 | ||
5244 | * lread.c (syms_of_lread): Fix literal newlines. | |
5245 | ||
5246 | * emacs.c (USAGE): Split into USAGE1 and USAGE2, to work-around | |
5247 | the string constant limit (2048 bytes) in MSVC. | |
5248 | (main): Ditto. | |
5249 | ||
59ddecde GM |
5250 | 2000-02-05 INOUE Seiichiro <inoue@ainet.or.jp> |
5251 | ||
5252 | * xterm.c (x_display_and_set_cursor) [HAVE_X_I18N]: Set pre-edit | |
5253 | area. | |
5254 | (x_display_cursor) [HAVE_X_I18N]: Don't set it here. | |
5255 | (XTread_socket) [HAVE_X_I18N]: <KeyPress, KeyRelease>: Don't | |
5256 | dispatch the event. | |
5257 | ||
07590973 DL |
5258 | 2000-02-04 Dave Love <fx@gnu.org> |
5259 | ||
5260 | * fileio.c: Remove some unused vars. | |
5261 | (_GNU_SOURCE): Define (for euidaccess). | |
5262 | ||
5263 | * lread.c (_XOPEN_SOURCE): Declare (for ftello). | |
5264 | ||
5265 | * minibuf.c (read_minibuf_noninteractive): Remove undeclared | |
5266 | gcpro1, gcpro2. | |
5267 | (read_minibuf): Deal with allow_props correctly. | |
5268 | ||
649351f9 EZ |
5269 | 2000-02-03 Eli Zaretskii <eliz@is.elta.co.il> |
5270 | ||
5271 | * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Enlarge to 60000. | |
5272 | ||
66e4690f | 5273 | 2000-02-03 Ken Raeburn <raeburn@gnu.org> |
f1b9c7c1 KR |
5274 | |
5275 | * search.c (compile_pattern): If a cache entry has a nil regexp, | |
5276 | fill in that entry instead of clobbering a previously cached | |
5277 | string regexp. | |
5278 | ||
66e4690f | 5279 | 2000-02-02 Ken Raeburn <raeburn@gnu.org> |
15c9cf81 KR |
5280 | |
5281 | * puresize.h (BASE_PURESIZE): Increase to 610000. | |
5282 | ||
d240a249 GM |
5283 | 2000-02-02 Gerd Moellmann <gerd@gnu.org> |
5284 | ||
5285 | * frame.c (Fframe_parameters): Add GCPRO because tty_color_name | |
5286 | can GC. | |
5287 | ||
ca91fb26 KH |
5288 | 2000-02-02 Kenichi Handa <handa@etl.go.jp> |
5289 | ||
25660570 KH |
5290 | * ccl.c (ccl_driver) <CCL_WriteExprRegister>: Set jump_address |
5291 | instead of incrementing ic directly. | |
5292 | <CCL_WriteExprConst> Likewise. | |
5293 | <ccl_set_expr>: Set ic to jump_address. | |
5294 | ||
ca91fb26 KH |
5295 | * fileio.c (e_write): Fix the handling of |
5296 | CODING_FINISH_INSUFFICIENT_SRC. | |
5297 | ||
2ede9689 DL |
5298 | 2000-02-01 Dave Love <fx@gnu.org> |
5299 | ||
5300 | * editfns.c (Fpropertize): Doc fix. | |
5301 | ||
5302 | * process.c (Fstart_process): Doc fix. | |
5303 | ||
5304 | * eval.c: Fix various doc strings not to duplicate information | |
5305 | from help-manyarg-func-alist. | |
5306 | ||
5307 | * window.c (Fset_window_margins): Don't make interactive. Doc | |
5308 | fix. | |
5309 | ||
5310 | * doc.c (Vhelp_manyarg_func_alist): New variable. | |
5311 | (Fdocumentation): Use it. | |
5312 | (syms_of_doc): Define it. | |
5313 | ||
b6680a0e GM |
5314 | 2000-01-31 Gerd Moellmann <gerd@gnu.org> |
5315 | ||
2cb750ba GM |
5316 | * xterm.c (xim_open_dpy): Remove unused local variable. |
5317 | ||
74e9213b GM |
5318 | * emacs.c (USAGE): Use term `display options' instead of `X |
5319 | options'. | |
5320 | ||
5321 | * xdisp.c (Ftrace_to_stderr) [GLYPH_DEBUG]: New function. | |
5322 | (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it. | |
5323 | ||
b6680a0e GM |
5324 | * fns.c (sweep_weak_table): New function. |
5325 | (sweep_weak_hash_tables): Use it. Keep on marking until there | |
5326 | is no more change. | |
5327 | ||
994c5afe GM |
5328 | 2000-01-30 Gerd Moellmann <gerd@gnu.org> |
5329 | ||
5330 | * xterm.c (x_delete_display): Update next_noop_dpyinfo to ensure | |
5331 | that XTread_socket does not crash by trying to call XNoOp on a | |
5332 | closed display. | |
427ec082 | 5333 | |
f00276e3 JR |
5334 | 2000-01-30 Jason Rumney <jasonr@gnu.org> |
5335 | ||
5336 | * w32inevt.c (get_frame, w32_console_mouse_position, mouse_moved_to): | |
5337 | Change selected_frame to SELECTED_FRAME (). | |
5338 | (w32_console_mouse_position): Remove #ifndef MULE from around | |
5339 | `insist' parameter. | |
5340 | ||
5341 | * makefile.nt: Remove dosfns.obj. | |
5342 | ||
5343 | * term.c (term_init) [WINDOWSNT]: Initialize TN_max_colors. | |
5344 | ||
5345 | * w32fns.c (w32_defined_color): Check for valid frame before | |
5346 | applying gamma correction. Eliminate dependency on frame elsewhere. | |
5347 | (w32_load_system_font): Switch FIXED_PITCH and VARIABLE_PITCH. | |
5348 | (w32_to_x_font): Use resx and resy not height_in and width_in. | |
5349 | (x_to_w32_font): Doc fix. | |
5350 | (xlfd_strip_height): New function to strip and return font height. | |
5351 | (w32_font_match): Compare height separately from rest of xlfd | |
5352 | spec, using xlfd_strip_height. | |
5353 | ||
5354 | * w32term.c (w32_term_init): Swap resx and height_in, resy and | |
5355 | width_in. Use w32_defined_color in place of defined_color. | |
5356 | ||
5357 | * w32faces.c: Merge more of DOS and X specifics in preparation for | |
5358 | merge with xfaces.c. | |
5359 | (defined_color): Remove FIXME comment. | |
5360 | (tty_color_name): Provide w32-specific function. | |
5361 | (realize_tty_face): Handle FACE_TTY_DEFAULT*_COLOR specially. | |
5362 | ||
5363 | * w32console.c (turn_on_face, turn_off_face): Removed. | |
5364 | (w32_face_attributes): New function. | |
5365 | (Global_variables): Reduce scope where possible. | |
5366 | (clear_frame, ins_del_lines, scroll_line): Use char_attr_normal as | |
5367 | fill attribute. | |
5368 | (hl_mode): Don't modify text attributes. | |
5369 | (write_glyphs): Don't do anything if len <= 0. Use | |
5370 | w32_face_attributes to get attributes for drawing. Write | |
5371 | terminating codes using char_attr_normal. | |
5372 | (reset_terminal_modes, set_terminal_modes): Turn off highlight. | |
5373 | (update_begin, update_end): Likewise. | |
5374 | (vga_stdcolor_name): New function. | |
5375 | (initialize_w32_display): Remove char_attr_reverse and char_attr. | |
5376 | (Fset_screen_color): Remove char_attr_reverse. | |
5377 | ||
b08e8bb2 GM |
5378 | 2000-01-29 Gerd Moellmann <gerd@gnu.org> |
5379 | ||
5380 | * xfns.c (xic_set_preeditarea): Take window parameter and | |
5381 | window-relative pixel-positions. | |
5382 | ||
5383 | * xterm.c (x_display_cursor): Set XIC pre-edit area only if window | |
5384 | is its frame's selected window. | |
5385 | (xim_instantiate_callback): Likewise. | |
5386 | ||
5387 | * xfns.c (x_create_im): Removed. | |
5388 | (DEFAULT_STYLE, DEFAULT_FONT): Removed. | |
5389 | (supported_xim_styles): Renamed from supported_styles. | |
5390 | (best_xim_style): Renamed from best_style. | |
5391 | (create_frame_xic): Renamed from xic_create_frame. | |
5392 | (free_frame_xic): Renamed from xic_destroy_frame. | |
427ec082 | 5393 | |
b08e8bb2 GM |
5394 | 2000-01-29 INOUE Seiichiro <inoue@ainet.or.jp> |
5395 | ||
5396 | * xterm.c (XTread_socket) [HAVE_X_I18N]: If event is for none of | |
5397 | our frames, call XFilterEvent with 2nd parameter `None'. | |
5398 | (XTread_socket) <KeyPress> [HAVE_X_I18N]: Handle XmbLookupString | |
5399 | returning XBufferOverflow. | |
5400 | (XTread_socket) <ConfigureNotify> [HAVE_X_I18N]: Set XIC status | |
5401 | area. | |
5402 | (x_display_cursor) [HAVE_X_I18N]: Set XIC pre-edit area. | |
5403 | (x_new_fontset) [HAVE_X_I18N]: Create XIC status area fontset. | |
5404 | (xim_destroy_callback, xim_open_dpy, xim_instantiate_callback) | |
5405 | (xim_initialize, xim_close) | |
5406 | [HAVE_X_I18N && HAVE_X11R6]: New functions. | |
5407 | (x_destroy_window) [HAVE_X_I18N]: Call xic_destroy_frame. | |
5408 | (x_term_init) [HAVE_X_I18N]: Call xim_initialize. | |
5409 | (x_delete_display) [HAVE_X_I18N]: Call xim_close. | |
5410 | ||
5411 | * xterm.h (struct x_display_info) [HAVE_X_I18N]: Add members `xim' | |
5412 | and `xim_styles'. | |
5413 | (struct x_output) [HAVE_X_I18N]: Remove member `xim', add | |
5414 | `xic_style' and `xic_xfs'. | |
5415 | (FRAME_MENUBAR_HEIGHT, FRAME_X_XIM, FRAME_X_XIM_STYLES) | |
5416 | (FRAME_XIC_STYLE, FRAME_XIC_FONTSET): New macros. | |
5417 | (FRAME_XIM): Removed. | |
5418 | ||
5419 | * xfns.c (supported_styles): New variable. | |
5420 | (DEFAULT_STYLE, DEFAULT_FONT): New macros | |
5421 | (xic_create_xfontset, best_style, xic_create_frame) | |
5422 | (xic_destroy_frame, xic_set_preeditarea, xic_set_statusarea) | |
5423 | (xic_set_xfontset): New functions. | |
5424 | ||
142e109c DL |
5425 | 2000-01-28 Dave Love <fx@gnu.org> |
5426 | ||
5427 | * s/irix6-5.h: Revert last change after change to irix5-0.h. | |
5428 | ||
5429 | * m/iris4d.h (C_SWITCH_MACHINE): Don't use -G0. | |
5430 | ||
b02786f9 GM |
5431 | 2000-01-28 Gerd Moellmann <gerd@gnu.org> |
5432 | ||
d060bc9f GM |
5433 | * buffer.c (Fother_buffer): Don't call Fset_buffer_major_mode |
5434 | for *scratch* if it already existed. | |
5435 | ||
b02786f9 GM |
5436 | * emacs.c (USAGE): New macro. |
5437 | (main): Use it to display usage information. | |
5438 | ||
2c52d7e4 EZ |
5439 | 2000-01-27 Eli Zaretskii <eliz@is.elta.co.il> |
5440 | ||
5441 | Support for the menu-help feature: | |
5442 | ||
5443 | * msdos.h: Change prototypes of XMenuAddSelection and | |
5444 | XMenuActivate. | |
5445 | ||
5446 | * msdos.c (IT_clear_end_of_line): Print the extent of the cleared | |
5447 | part of the line to the termscript file. | |
5448 | (IT_clear_to_end): Clear the entire line, not just its beginning. | |
5449 | (menu_help_message, prev_menu_help_message): New variables. | |
5450 | (IT_menu_make_room): Make room for the help_text member. | |
5451 | (IT_menu_display): New argument disp_help; all callers changed. | |
5452 | If disp_help is non-zero, store the help text of the active menu | |
5453 | item in menu_help_message. | |
5454 | (XMenuAddPane): Initialize the help_text member to NULL. | |
5455 | (XMenuAddSelection): New argument help_text. Store it in the | |
5456 | XMenu structure. | |
5457 | (XMenuActivate): New argument help_callback. If the value of | |
5458 | menu_help_message has changed since the last time, display the | |
5459 | menu help message text while waiting for the mouse to move. Clear | |
5460 | the echo area before exiting. | |
5461 | (XMenuDestroy): Free the help_text member. | |
5462 | ||
ffe0bcd1 GM |
5463 | 2000-01-27 Gerd Moellmann <gerd@gnu.org> |
5464 | ||
5465 | * xmenu.c (xmenu_show) [!USE_X_TOOLKIT]: Pass help to | |
5466 | XMenuAddSelection. Pass help callback to XMenuActivate. | |
5467 | (menu_help_callback) [!USE_X_TOOLKIT]: New function. | |
5468 | ||
50dbd23f EZ |
5469 | 2000-01-27 Eli Zaretskii <eliz@is.elta.co.il> |
5470 | ||
5471 | * atimer.c (start_atimer) [!HAVE_SETITIMER]: Use EMACS_SET_SECS | |
5472 | and EMACS_SET_USECS. | |
5473 | ||
f5941bf8 GM |
5474 | 2000-01-26 Dave Love <fx@gnu.org> |
5475 | ||
6c67ddee DL |
5476 | * editfns.c (Fchar_after, Fchar_before): Doc fix. |
5477 | ||
f5941bf8 GM |
5478 | * bytecode.c (Fbyte_code): Use {BEFORE,AFTER}_POTENTIAL_GC where |
5479 | an error may be signalled. | |
5480 | ||
9e49c990 GM |
5481 | 2000-01-26 Gerd Moellmann <gerd@gnu.org> |
5482 | ||
fc3cb460 GM |
5483 | * s/irix6-5.h [__GNUC__ && __GNUC_MINOR__ >= 95]: Undef |
5484 | LD_SWITCH_SYSTEM inherited from irix5-0.h. | |
5485 | ||
9e49c990 GM |
5486 | * bytecode.c (Fbyte_code) [BYTE_CODE_SAFE]: Fix typo. |
5487 | ||
d0c037d8 GM |
5488 | 2000-01-25 Gerd Moellmann <gerd@gnu.org> |
5489 | ||
5490 | * charset.c (Fstring): If there is a multibyte char among | |
5491 | the args, always return a multibyte string. | |
5492 | ||
e12489f9 GM |
5493 | 2000-01-25 Gerd Moellmann <gerd@gnu.org> |
5494 | ||
5495 | * sysdep.c (sys_select): Turn atimers off and on instead of | |
5496 | recording and restoring old alarm handler | |
5497 | ||
5498 | * process.c (toplevel): Include atimer.h. | |
5499 | (create_process_1): Rewritten. | |
5500 | (create_process): Use atimers instead of alarm. | |
5501 | (wait_reading_process_input) [hpux]: Turn atimers off instead | |
5502 | of turning off SIGALRM. | |
5503 | (wait_reading_process_input): Turn off atimers instead off | |
5504 | calling stop_polling. | |
5505 | ||
5506 | * emacs.c (main): Call init_atimer. | |
5507 | ||
5508 | * keyboard.c (toplevel): Include systime.h and atimer.h. | |
5509 | (polling_for_input): Removed because unused. | |
5510 | (input_poll_signal) [POLL_FOR_INPUT]: Removed. | |
5511 | (poll_timer): New variable. | |
5512 | (poll_for_input, poll_for_input_1): New functions. | |
5513 | (start_polling, stop_polling): Rewritten. | |
5514 | ||
5515 | * keyboard.h (polling_for_input): Removed. | |
427ec082 | 5516 | |
e12489f9 GM |
5517 | * atimer.h, atimer.c: New files. |
5518 | ||
5519 | * Makefile.in (obj): Add atimer.o. | |
5520 | (atimer.o): New target. | |
5521 | ||
5522 | * blockinput.h (pending_atimers): Add extern declaration. | |
5523 | (UNBLOCK_INPUT): Rewritten. Handle pending atimers. | |
5524 | ||
5525 | * lisp.h (popup_activated_flag): Add extern declaration. | |
5526 | ||
5527 | * xmenu.c (popup_activated_flag): Make externally visible. | |
5528 | (popup_activate_callback) [USE_MOTIF]: Increment | |
5529 | popup_activated_flag. | |
5530 | (popup_deactivate_callback) [USE_MOTIF]: Decrement it. | |
5531 | ||
5532 | * xterm.c (toplevel): Include atimer.h. | |
5533 | (toolkit_scroll_bar_interaction): New variable. | |
5534 | (Fxt_process_timeouts): Removed. | |
5535 | (x_process_timeouts): New function. | |
5536 | (xt_action_hook): Clear toolkit_scroll_bar_interaction. | |
5537 | (x_send_scroll_bar_event): Set toolkit_scroll_bar_interaction. | |
5538 | (x_make_frame_visible): Call poll_for_input_1 instead of | |
5539 | input_poll_signal. Don't call alarm. | |
5540 | (x_initialize): Install timer calling x_process_timeouts. | |
427ec082 | 5541 | |
1e5279b9 DL |
5542 | 2000-01-24 Dave Love <fx@gnu.org> |
5543 | ||
6c67ddee | 5544 | * s/irix5-0.h: Don't set LD_SWITCH_SYSTEM -- we use unexelf now. |
1e5279b9 DL |
5545 | Don't use -cckr -- apparently not now necessary. |
5546 | ||
edf6aeb8 EZ |
5547 | 2000-01-24 Eli Zaretskii <eliz@is.elta.co.il> |
5548 | ||
5549 | * msdos.c (IT_menu_display): Truncate long menu lines at the right | |
5550 | screen boundary. | |
5551 | ||
9badad41 JR |
5552 | 2000-01-23 Jason Rumney <jasonr@gnu.org> |
5553 | ||
5554 | * w32fns.c (w32_defined_color): Apply gamma correction before | |
5555 | trying to map to the palette. | |
5556 | (w32_wnd_proc) [WM_ERASE_BACKGROUND]: Pass device context of frame | |
5557 | to w32_clear_rect. | |
5558 | ||
5559 | * w32term.c (w32_fill_rect): Do not try to deal with NULL hdc | |
5560 | here. Callers changed to always pass real device context. | |
5561 | (w32_draw_bitmap): Likewise. | |
5562 | (w32_get_glyph_overhangs): Likewise. | |
5563 | (w32_draw_box_rect): Make use of s->hdc rather than getting a new | |
5564 | one. | |
5565 | (w32_set_vertical_scroll_bar): Pass correct HWND parameters to | |
5566 | pfnSetScrollInfo and SetScrollRange. | |
5567 | (x_get_char_face_and_encoding): Don't turn iso8859-1 characters | |
5568 | back into MULE characters after decoding them. | |
5569 | (x_get_glyph_face_and_encoding): Likewise. | |
5570 | (w32_per_char_metric): Use GetCharExtentPoint32W as fallback when | |
5571 | GetCharABCWidthsW fails, since this is defined on Windows 9x. | |
5572 | (x_produce_glyphs): Calculate per char metrics for a character | |
5573 | that we know exists in default font when font_not_found_p is true. | |
5574 | ||
63bd786b JR |
5575 | 2000-01-22 Jason Rumney <jasonr@gnu.org> |
5576 | ||
5577 | * makefile.nt (intervals.obj, composite.obj): New modules. | |
5578 | (composite.h): Added as dependency where appropriate. | |
5579 | ||
5580 | * w32gui.h (XGCValue): New struct for emulating X GCs. | |
5581 | ||
5582 | * w32term.h (XCharStruct): New struct for emulating X. | |
5583 | ||
5584 | * w32console.c (turn_on_face, turn_off_face): New functions. | |
5585 | (change_line_highlight): New prototype for new redisplay. | |
5586 | (write_glyphs): Support multibyte text. Support faces. | |
5587 | ||
5588 | * w32faces.c: Complete rewrite for new redisplay based on new | |
5589 | xfaces.c. | |
5590 | ||
5591 | * w32fns.c: Use SELECTED_FRAME macro in place of selected_frame | |
5592 | throughout. struct frame * in place of FRAME_PTR. | |
5593 | Skeleton support for images, toolbars, tooltips from xfns.c. | |
5594 | (Fx_create_frame): Use system default for default scroll bar | |
5595 | width. | |
5596 | (w32_get_arg): Renamed from x_get_arg. | |
5597 | (Fx_file_dialog): New function. | |
5598 | (w32_list_fonts): Check cache before asking system. | |
5599 | (Vw32_enable_synthesized_fonts): New variable. | |
5600 | (Vw32_enable_italics): Obsolete, removed. | |
5601 | ||
5602 | * w32inevt.c (get_frame, w32_console_mouse_position, mouse_moved_to): | |
5603 | Use SELECTED_FRAME macro. | |
5604 | ||
5605 | * w32menu.c: Add skeleton support for help strings on menus. | |
5606 | (add_menu_item): Native checkbox and radio support added, but not | |
5607 | yet enabled due to bugs. | |
5608 | (push_menu_item): Add parameters type, selection and help. | |
5609 | Callers updated. | |
5610 | Formatting changes to reduce unnecessary diffs with xmenu.c. | |
5611 | ||
5612 | * w32select.c (Fw32_set_clipboard_data): Update call to | |
5613 | find_charset_in_str. | |
5614 | ||
5615 | * w32term.c: Complete rewrite for new redisplay based on new | |
5616 | xterm.c with necessary sections merged back in from old w32term.c. | |
5617 | ||
6ffd3cf7 | 5618 | 2000-01-21 Richard M. Stallman <rms@gnu.org> |
b50c9214 RS |
5619 | |
5620 | * data.c (set_internal): Further fix in same criterion. | |
5621 | ||
6ffd3cf7 | 5622 | 2000-01-20 Richard M. Stallman <rms@gnu.org> |
8cc95642 RS |
5623 | |
5624 | * data.c (set_internal): Fix the criteria for whether | |
5625 | to swap out the old cached binding. | |
5626 | ||
60af03f1 DL |
5627 | 2000-01-19 Dave Love <fx@gnu.org> |
5628 | ||
5629 | * lread.c: (syms_of_lread) [user-init-file]: Doc change. | |
5630 | ||
f9be074f KH |
5631 | 2000-01-18 Kenichi Handa <handa@etl.go.jp> |
5632 | ||
5633 | * regex.c (re_compile_fastmap): While checking a range table for | |
5634 | `charset', skip flag bits for a character class correctly. | |
5635 | ||
52b8dbf9 GM |
5636 | 2000-01-17 Gerd Moellmann <gerd@gnu.org> |
5637 | ||
d36100c9 GM |
5638 | * m/news-risc.h (LD_SWITCH_MACHINE): Define differently for GCC. |
5639 | ||
52b8dbf9 GM |
5640 | * xfns.c (x_window): Call lw_create_widget with new parameter |
5641 | list. | |
5642 | ||
5643 | * widget.c (EmacsFrameSetCharSize): Change size of children first | |
5644 | because of problems with main window geometry management under | |
5645 | Lesstif. | |
5646 | ||
5647 | * xmenu.c (enum menu_item_idx): New enumeration replacing defines | |
5648 | MENU_ITEMS_ITEM_.*. | |
5649 | (MENU_ITEMS_ITEM_HELP): New enumerator. | |
5650 | (push_menu_item): Add parameter HELP. Record help in menu_items. | |
5651 | (single_menu_item, single_submenu, list_of_items): Call | |
5652 | push_menu_item with new parameter. | |
5653 | (single_submenu): Set help string in widget value. | |
5654 | (menu_highlight_callback): New function. | |
5655 | (set_frame_menubar): Call lw_create_widget with new | |
5656 | parameter list. | |
5657 | (xmenu_show, xdialog_show): Ditto. | |
5658 | ||
3139018f GM |
5659 | 2000-01-13 Gerd Moellmann <gerd@gnu.org> |
5660 | ||
5661 | * sound.c (Fplay_sound): Improve doc string. | |
5662 | ||
83c8f461 RS |
5663 | 2000-01-11 Richard M. Stallman <rms@gnu.org> |
5664 | ||
5665 | * lisp.h (set_internal): Enter the new arg. | |
5666 | ||
5667 | * eval.c (specbind): Record buffer-local variables specially, | |
5668 | indicating which buffer's binding was saved. | |
5669 | (unbind_to): Restore buffer-local variables specially | |
5670 | in the proper buffer. | |
5671 | ||
5672 | * data.c (set_internal): New arg BUF. | |
427ec082 | 5673 | |
83c8f461 RS |
5674 | * eval.c (specbind, unbind_to): Pass new arg to set_internal. |
5675 | * data.c (Fset): Pass new arg to set_internal. | |
5676 | * bytecode.c (Fbyte_code): Pass new arg to set_internal. | |
427ec082 | 5677 | |
1fab1775 GM |
5678 | 2000-01-11 Gerd Moellmann <gerd@gnu.org> |
5679 | ||
5680 | * .gdbinit: Adapt to new strings. Add xbacktrace, xreload, | |
5681 | xprintsym. | |
5682 | ||
83c8f461 | 5683 | 2000-01-11 Richard M. Stallman <rms@gnu.org> |
6f59462e RS |
5684 | |
5685 | * minibuf.c (Ftry_completion): Doc fix. | |
5686 | ||
7a85e4df GM |
5687 | 2000-01-11 Gerd Moellmann <gerd@gnu.org> |
5688 | ||
5689 | * keyboard.c (Fclear_this_command_keys): Clear recent_keys | |
5690 | vector, too. | |
5691 | ||
a970dae4 AS |
5692 | 2000-01-11 Andreas Schwab <schwab@suse.de> |
5693 | ||
5694 | * coding.c (code_convert_region): Initialize total_skip. | |
5695 | ||
c65d14ee DL |
5696 | 2000-01-08 Dave Love <fx@gnu.org> |
5697 | ||
5698 | * eval.c (Fuser_variable_p): Check customizability too. | |
5699 | ||
834938d2 GM |
5700 | 2000-01-07 Gerd Moellmann <gerd@gnu.org> |
5701 | ||
5702 | * minibuf.c (Fcompleting_read): Doc fix. | |
5703 | ||
e0303cd6 GM |
5704 | 2000-01-05 Gerd Moellmann <gerd@gnu.org> |
5705 | ||
8a26744b GM |
5706 | * s/freebsd.h (C_SWITCH_SYSTEM): Add -I /usr/local/include and |
5707 | -L /usr/local/lib. | |
5708 | ||
e0303cd6 GM |
5709 | * xfns.c (x_create_im): New function to set IM and IC of a frame. |
5710 | Check that input style is supported before trying to create an | |
5711 | IC for it. | |
5712 | (x_window): Call x_create_im. | |
427ec082 | 5713 | |
2e471eb5 GM |
5714 | 2000-01-04 Gerd Moellmann <gerd@gnu.org> |
5715 | ||
560a7bd2 GM |
5716 | * xfns.c (current_gif_memory_src): New variable. |
5717 | (gif_load): Record the address of the current memory source | |
5718 | in current_gif_memory_src. | |
5719 | (gif_read_from_memory): Use current_gif_memory_src. | |
5720 | ||
f9ee84a3 GM |
5721 | * systime.h (EMACS_GET_TIME, EMACS_ADD_TIME, EMACS_SUB_TIME): Give |
5722 | macros statement form. | |
5723 | ||
d1299cde GM |
5724 | * sound.c (struct sound): Renamed from struct sound_file. |
5725 | (struct sound): Add members `data' and `header_size'. | |
5726 | (enum sound_attr): Add SOUND_DATA. | |
5727 | (current_sound, current_sound_device): Variables renamed from | |
5728 | sound_file and sound_device. | |
5729 | (parse_sound): Parse :data. | |
5730 | (parse_sound): Handle sound data in strings. | |
5731 | (find_sound_type): Function renamed from find_sound_file_type. | |
427ec082 | 5732 | (wav_init, au_init): Fail if sound's header_size is smaller than |
d1299cde GM |
5733 | needed header size. |
5734 | (wav_play, au_play): Play sounds from string data. | |
5735 | ||
2e471eb5 GM |
5736 | * puresize.h (BASE_PURE_SIZE): Increase to 600000. |
5737 | ||
5738 | * lisp.h: Add prototype for allocate_string_data. | |
5739 | ||
5740 | * alloc.c (Fgarbage_collect): Return number of live and free | |
5741 | strings. | |
5742 | ||
5743 | * alloc.c (mark_buffer): Remove code in #if 0. | |
5744 | (gc_sweep): Ditto. | |
5745 | (UNMARK_BALANCE_INTERVALS): Give the macro statement form. | |
5746 | (strings_consed): New variable. | |
5747 | (allocate_string): Set it. | |
5748 | (syms_of_alloc): Add DEFVAR_INT for strings_consed. | |
5749 | (Fmemory_use_counts): Return strings_consed. Use Flist. | |
5750 | ||
5751 | * alloc.c: General cleanup in comments etc. Remove conditional | |
5752 | compilation for `standalone'. | |
5753 | ||
5754 | * lisp.h (struct Lisp_String): Make DATA member `unsigned char *'. | |
5755 | ||
5756 | * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P): | |
5757 | (GC_STRING_BYTES, GC_STRING_CHARS): New macros. | |
5758 | (DONT_COPY_FLAG): Removed. | |
5759 | (SBLOCK_SIZE, LARGE_STRING_BYTES): New macros. | |
5760 | (struct sdata, struct sblock): New | |
5761 | (struct string_block): Rewritten. | |
5762 | (STRINGS_IN_STRING_BLOCK): New macro. | |
5763 | (oldest_sblock, current_sblock, total_strings, total_free_strings) | |
5764 | (large_sblocks, string_blocks, string_free_list): New variables. | |
5765 | (NEXT_FREE_LISP_STRING, SDATA_OF_STRING, SDATA_SIZE): New macros. | |
5766 | (init_strings): Rewritten. | |
5767 | (allocate_string, allocate_string_data, compact_small_strings) | |
5768 | (free_large_strings, sweep_strings): New functions. | |
5769 | (STRING_BLOCK_SIZE, STRING_BLOCK_OUTSIZE) | |
5770 | (struct string_block_head, current_string_block) | |
5771 | (first_string_block, large_string_blocks, STRING_FULLSIZE) | |
5772 | (STRING_PAD): Removed. | |
5773 | (make_uninit_multibyte_string, make_pure_string): Rewritten. | |
5774 | (Fgarbage_collect): Don't set mark bit in large strings. | |
5775 | (mark_object): Mark strings differently. Mark symbol names | |
5776 | differently. | |
5777 | (survives_gc_p): Test marked strings differently. | |
427ec082 | 5778 | (gc_sweep): Sweep strings differently, unmark strings in |
2e471eb5 GM |
5779 | symbol names. |
5780 | (compact_strings): Removed. | |
5781 | ||
42608ba8 EZ |
5782 | 2000-01-04 Eli Zaretskii <eliz@is.elta.co.il> |
5783 | ||
5784 | * xfaces.c (syms_of_xfaces): defsubr Scolor_gray_p and | |
5785 | Scolor_supported_p even if HAVE_X_WINDOWS is not defined. | |
5786 | ||
e0a09e1a KH |
5787 | 2000-01-04 Kenichi Handa <handa@etl.go.jp> |
5788 | ||
dd9f0750 | 5789 | * fileio.c (Finsert_file_contents): Signal error if visiting file |
427ec082 | 5790 | in a non-empty buffer. |
dd9f0750 | 5791 | |
3c0f3b15 | 5792 | * term.c (encode_terminal_code): Fix the previous change. |
e0a09e1a | 5793 | |
44cd3ae5 GM |
5794 | 2000-01-03 Gerd Moellmann <gerd@gnu.org> |
5795 | ||
5796 | * xfaces.c (syms_of_xfaces): Change Sface_color_gray_p to | |
5797 | Scolor_gray_p, Sface_color_supported_p to Scolor_supported_p. | |
5798 | ||
5799 | * s/hpux9.h (NO_EDITRES): Define even if HAVE_LIBXMU. | |
5800 | ||
c182a70f EZ |
5801 | 2000-01-03 Eli Zaretskii <eliz@is.elta.co.il> |
5802 | ||
5803 | * xdisp.c (handle_single_display_prop) [HAVE_WINDOW_SYSTEM]: No | |
5804 | need to test for MSDOS frames. | |
5805 | ||
24480d5b EZ |
5806 | 2000-01-03 Eli Zaretskii <eliz@is.elta.co.il> |
5807 | ||
5808 | * dosfns.c (unspecified_colors): Remove. | |
5809 | (msdos_stdcolor_idx): Use global variables unspecified_fg and | |
5810 | unspecified_bg. | |
5811 | (msdos_stdcolor_name): Return strings for unspecified fore- and | |
5812 | back-ground colors. | |
5813 | ||
5814 | * xfaces.c (Qunspecified_fg, Qunspecified_bg): Remove. | |
aaf2320c | 5815 | (syms_of_xfaces): Remove their staticpro's. |
24480d5b EZ |
5816 | (tty_color_name): Return Lisp strings for unspecified fore- and |
5817 | back-ground colors. | |
5818 | (Finternal_set_lisp_face_attribute): Remove the special treatment | |
5819 | for Qunspecified_{f,b}g. | |
5820 | (realize_default_face): Replace Qunspecified_{f,b}g with a Lisp | |
5821 | string. | |
5822 | ||
047f434a GM |
5823 | 2000-01-03 Gerd Moellmann <gerd@gnu.org> |
5824 | ||
5825 | * xdisp.c (reseat_at_next_visible_line_start): Position before | |
5826 | newline only if ending up on a newline. | |
5827 | (next_element_from_ellipsis): Return success. Handle case of | |
5828 | displaying no ellipsis. Fix case of ellipsis defined in display | |
5829 | table. | |
5830 | (next_element_from_buffer): Return 0 if next_element_from_ellipsis | |
5831 | returns 0. | |
5832 | ||
d684c676 EZ |
5833 | 2000-01-03 Eli Zaretskii <eliz@is.elta.co.il> |
5834 | ||
5835 | * xfaces.c (Fcolor_gray_p): Renamed from face-color-gray-p. | |
5836 | (Fcolor_supported_p): Renamed from face-color-supported-p. | |
5837 | ||
5fe1d139 EZ |
5838 | 2000-01-02 Eli Zaretskii <eliz@is.elta.co.il> |
5839 | ||
5840 | * xfaces.c (tty_defined_color): Pass frame to tty-color-desc. The | |
5841 | list of colors renamed to tty-defined-color-alist. | |
5842 | (tty_color_name): Pass the frame to tty-color-by-index. | |
5843 | (realize_tty_face): tty-color-alist is now a function which | |
5844 | accepts the frame as argument. | |
5845 | ||
5846 | * term.c (Ftty_display_color_p): Accept an optional argument | |
5847 | FRAME. | |
5848 | ||
816be8b8 EZ |
5849 | 2000-01-02 Eli Zaretskii <eliz@is.elta.co.il> |
5850 | ||
5851 | * term.c (insert_glyphs): Pass glyph, not &glyph, to | |
5852 | encode_terminal_code. | |
5853 | ||
b635321e EZ |
5854 | 2000-01-02 Eli Zaretskii <eliz@is.elta.co.il> |
5855 | ||
5856 | * dispnew.c (mode_line_string): Support termcap frames as well. | |
5857 | ||
9b784e96 GM |
5858 | 2000-01-01 Gerd Moellmann <gerd@gnu.org> |
5859 | ||
27189709 GM |
5860 | * syntax.c (Fforward_word): Undo previous change. |
5861 | ||
5862 | * editfns.c (Fconstrain_to_field): Don't constrain if | |
5863 | inhibit-field-text-motion is non-nil. | |
5864 | (Fline_beginning_position): Undo previous change. | |
5865 | (Fline_end_position): Ditto. | |
5866 | ||
5867 | * syntax.c (Fforward_word): Notice field boundaries only if | |
5868 | inhibit-field-text-motion is nil. | |
5869 | ||
5870 | * lisp.h: Add extern declaration for Vinhibit_field_text_motion. | |
5871 | ||
5872 | * editfns.c (Vinhibit_field_text_motion): New variable. | |
5873 | (inhibit-field-text-motion): New DEFVAR_LISP. | |
5874 | (Fline_beginning_position, Fline_end_position): Notice field | |
5875 | boundaries only if inhibit-field-text-motion is nil. | |
5876 | ||
45158a91 GM |
5877 | * xfns.c (x_create_x_image_and_pixmap): Remove parameter FILE. |
5878 | All calls adjusted. | |
5879 | (x_build_heuristic_mask): Likewise. | |
5880 | (xbm_load_image_from_file): Change error output. | |
5881 | (xbm_load, xpm_load, pbm_load, png_load, jpeg_load, tiff_load) | |
5882 | (gif_load, gs_load, x_kill_gs_process): Ditto. | |
5883 | ||
9b784e96 GM |
5884 | * xfns.c (gif_load): Avoid sign extension and thus out of bounds |
5885 | color indices when accessing raster pixels. | |
63cec32f GM |
5886 | (gif_image_p, png_image_p, jpeg_image_p, tiff_image_p): Allow only |
5887 | one of :file or :data. | |
5888 | (enum pbm_keyword_index): Add PBM_DATA. | |
5889 | (pbm_format): Add :data. | |
5890 | (pbm_image_p): Allow either :file or :data. | |
5891 | (pbm_read_file): New function. | |
5892 | (pbm_scan_number): Rewritten to read from string. | |
5893 | (pbm_load): Support :data. | |
9b784e96 | 5894 | |
2cb085db | 5895 | See ChangeLog.8 for earlier changes. |
6922b018 KH |
5896 | |
5897 | ;; Local Variables: | |
69a7ffa7 | 5898 | ;; coding: iso-2022-7bit |
6922b018 | 5899 | ;; End: |