1 1994-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3 * Version 19.25 released.
5 * xdisp.c (redisplay): Limit prev change to pause != 0.
7 * keyboard.c (command_loop_1): Allow direct output for insert
8 if have display table but it says nothing for this char code.
9 Don't allow it if char code has a glyph with a face code.
11 * process.c (create_process): Get a pty for any non-nil
12 Vprocess_connection_type value.
14 1994-05-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
16 * s/bsd386.h (TABDLY, TAB3): Defined.
17 (SYSV_SYSTEM_DIR): Defined.
19 * unexhp9k800.c (roundup): Undef before defining.
21 * xdisp.c (redisplay): If have window change at end, redisplay again.
23 * lread.c (defvar_bool, defvar_int, defvar_lisp, defvar_lisp_nopro):
26 * s/hpux8.h (LD_SWITCH_SYSTEM): Delete the -L options.
27 (LD_SWITCH_X_DEFAULT): Put them here instead.
29 * Makefile.in.in (LD_SWITCH_X_DEFAULT): Define if not defined.
30 (LIBX): Use LD_SWITCH_X_DEFAULT.
32 * xterm.c (x_iconify_frame): Call x_set_offset,
33 if x_make_frame_visible would do so.
34 (x_make_frame_visible): Don't call x_set_offset if frame is iconic.
35 (XTread_socket): For ConfigureNotify, if wm decorations exist,
38 * Makefile.in.in (mostlyclean): Don't mention xmakefile*.
40 * emacs.c (main): In batch mode, don't set the pgrp.
42 1994-05-27 Paul Eggert (eggert@twinsun.com)
44 * callproc.c (child_setup): If PWD is set, set it in the child so that
45 it points at the child's working directory.
47 1994-05-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
49 * m/mips4.h (C_DEBUG_SWITCH) [not __GNUC__]: Add -Wf option.
51 * s/hpux9.h (C_SWITCH_SYSTEM): Defined.
53 * keyboard.c [HAVE_X_WINDOWS]: Include xterm.h.
55 * xterm.c (x_is_vendor_fkey): Function deleted.
56 (XTread_socket, case KeyPressed): Don't clear the vendor-specific bit.
57 Pass thru almost any vendor-specific keysym.
59 * s/linux.h (HAVE_XRMSETDATABASE): Define if not defined.
61 1994-05-27 Paul Eggert (eggert@twinsun.com)
63 * editfns.c (difftm): Don't store a long value into an int variable.
65 1994-05-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
67 * fileio.c (Finsert_file_contents): Check for beginning of file.
69 1994-05-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
71 * systime.h: Make previous change limited to HPUX.
73 1994-05-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
75 * systime.h: If _STRUCT_TIMEVAL is defined, also define __TIMEVAL__.
77 1994-05-25 Morten Welinder (terra@diku.dk)
79 * msdos.c (output_string): New function.
80 (internal_flush): Use output_string for faster screen update.
81 (internal_flush): Clear to end of line by writing a string of
84 1994-05-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
86 * xfns.c (Vx_sensitive_text_pointer_shape):
87 Renamed from Vx_cross_pointer_shape.
88 (syms_of_xfns): Provide Lisp var x-sensitive-text-pointer-shape.
90 * xmenu.c (menu_item_equiv_key): Look for equiv keys both before
91 and after one stage of symbol function indirection.
93 * xterm.c (note_mouse_movement): Use frame's window in XQueryPointer.
94 Special case if mouse isn't on that window.
95 (note_mouse_highlight): Handle negative args and too-large args.
97 * lread.c (openp): Don't use O_RDONLY.
99 1994-05-24 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
101 * search.c (Freplace_match): Improve capitalization heuristics.
103 * minibuf.c (Fminibuffer_complete_word): GCPRO completion and tem.
105 * undo.c (Fprimitive_undo): GCPRO next and list.
106 Check argument type before calling XINT.
108 1994-05-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
110 * buffer.c (verify_overlay_modification): GCPRO tail and overlay.
111 Avoid copying tail twice.
113 1994-05-24 Andreas Schwab (schwab@informatik.uni-dortmund.de)
115 * keymap.c (describe_map): Fix the call to Fequal.
117 1994-05-24 Morten Welinder (terra@diku.dk)
119 * msdos.c (do_visible_bell): Renamed from visible_bell to avoid
120 potential conflict with variable of the same name. Caller changed.
121 (internal_flush): Code for audio bell inserted.
122 * s/msdos.h (INTERNAL_TERMINAL): Allow audio bell.
124 * msdos.c (dos_rawgetc): Doc fix. Make C-, S-, and M- modifiers
125 independent. Make modifiers work with mouse. Improve C-S-<ascii>
126 handling by using look-up tables. Fix kp-decimal problem.
128 1994-05-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
130 * Version 19.24 released.
132 * s/hpux8.h (LD_SWITCH_SYSTEM): Put back -Xlinker for GCC.
134 * Makefile.in.in (LIBXT): Move -lXmu before -lXt.
136 * term.c (update_end): Undo previous change.
138 * frame.c (other_visible_frames): No longer static.
140 * window.c (window_loop): Fix test of dedicated flag in prev change.
142 * window.c (window_loop, UNSHOW_BUFFER case):
143 Put prev change in #ifdef MULTI_FRAME.
145 * keyboard.c (menu_bar_one_keymap):
146 When there's no item string, use Qnil.
147 Don't ever put `undefined' into the list of definitions.
149 1994-05-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
151 * window.c (window_loop, UNSHOW_BUFFER case): Kill a special frame.
153 * xterm.c (x_set_window_size): If cursor outside new size, mark it off.
154 * dispnew.c (change_frame_size): Keep cursor coords in range.
156 * s/linux.h (HAVE_GETTIMEOFDAY, HAVE_MKDIR, HAVE_RMDIR)
157 (HAVE_XSCREENNUMBEROFSCREEN): Define these if not already defined.
159 1994-05-22 Morten Welinder (terra@diku.dk)
161 * unexec.c [MSDOS]: Don't include files from the dos extender
162 and debugger. Use the <coff.h> that was put in the right place
163 a couple of djgpp versions ago. Consequently, use `unsigned short'
164 for `word16' and `unsigned long' for `word32'.
166 1994-05-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
168 * xterm.c (note_mouse_highlight): Handle case of highlight extending
170 (fast_find_position): Fix bugs when no text on screen
171 and when the mouse is on an empty line.
173 * s/hpux9shr.h: New file.
175 * s/hpux8.h (LD_SWITCH_SYSTEM): Add conditionals for HPUX_USE_SHLIBS.
176 Delete explicit -Xlinker in GCC case.
178 * unexhp9k800.c: Include config.h.
179 [HPUX_USE_SHLIBS]: Include dl.h.
180 (brk_on_dump): New variable.
181 (unexec): Set brk_on_dump.
182 (copy_file): Change buffer size to 8192.
184 * window.c (change_window_height): Test for DELTA too small
185 only after making it smaller based on maxdelta.
187 1994-05-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
189 * fileio.c (Fdelete_directory): Allow dir names as well as file names.
191 * Makefile.in.in (${etc}DOC): Ignore error from rm.
192 (MSDOS_SUPPORT): New variable.
193 (lisp): Use MSDOS_SUPPORT.
195 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Commented out.
197 1994-05-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
199 * xfns.c (x_set_background_color): Set scroll bar backgrounds.
201 1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
203 * xterm.c (x_wm_set_window_state) [USE_X_TOOLKIT]: Use XtSetValues.
204 (x_iconify_frame) [USE_X_TOOLKIT]: New code for invisible window case.
205 (XtNinitialState) [USE_X_TOOLKIT]: New #define.
206 (x_make_frame_invisible): Mostly combine toolkit/non-toolkit cases,
207 in the process fixing a dumb bug.
209 1994-05-20 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
211 * lread.c (openp): Only lusers assume that O_RDONLY == 0.
213 1994-05-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
215 * Makefile.in.in (UNEXEC_ALIAS): New variable, used
216 to make the unex...o target.
218 * xfaces.c (Fset_face_attribute_internal): Always return valid data.
220 * textprop.c (syms_of_textprop): Set up Lisp fn get-char-property.
222 1994-05-19 Andreas Schwab (schwab@issan.informatik.uni-dortmund.de)
224 * fileio.c (Finsert_file_contents): Declare buffer as unsigned
225 char. When comparing with file size convert same_at_start to
226 distance to buffer start. If the file matches the buffer
227 contents truncate the buffer to the size of the file.
229 1994-05-19 Jim Blandy (jimb@totoro.bio.indiana.edu)
231 * keyboard.c (read_char_minibuf_menu_prompt): Don't forget to
232 initialize nobindings.
234 1994-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
236 * Makefile.in.in (ORDINARY_LINK): Define by default
237 if __GNU_LIBRARY__ and not LINUX.
239 * s/isc4-0.h (EXTRA_INITIALIZE): Definition deleted.
241 * s/isc3-0.h (EXTRA_INITIALIZE): Define here.
243 * keyboard.c (lispy_function_keys): Add `backtab'.
245 * frame.c (syms_of_frame): Set up frame-first-window as Lisp fn.
247 * indent.c: Add "args" to dummy definition of compute-motion.
249 * sysdep.c [BROKEN_TIOCGWINSZ]: Undef TIOCSWINSZ too.
251 * Makefile.in.in (FRAME_SUPPORT): Add menu-bar.el.
253 * dispnew.c: Include errno.h.
255 * widget.c (EmacsFrameSetCharSize): Once again preserve x and y pos,
256 but not the same way as before.
258 * xmenu.c (other_menu_bar_item_p): Return 0 if no menu bar.
260 * fileio.c (Fwrite_region): Set update_mode_lines.
262 * xmenu.c (xmenu_show): Don't look in menubar for core.height
265 * xterm.c (x_iconify_frame): Fix error messages.
267 1994-05-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
269 * dispnew.c (PENDING_OUTPUT_COUNT): If __GNU_LIBRARY__,
270 use GNU_LIBRARY_PENDING_OUTPUT_COUNT if defined.
272 * keyboard.c (lispy_function_keys): Add various kp- keys for X11R6.
274 * fileio.c (syms_of_fileio): Doc fix.
276 * s/linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Both definitions
277 renamed from PENDING_OUTPUT_COUNT.
279 * process.c (create_process): Don't complain about error
282 * window.c (Fset_window_buffer): Fix dedicated window error call.
283 (window_loop, case UNSHOW_BUFFER): Clear dedicated flag.
285 * fileio.c (Finsert_file_contents): Declare `buffer' as unsigned char.
287 * dispnew.c: Include systime.h after xterm.h.
289 * m/tek4300.h (WORDS_BIG_ENDIAN): Define this, not BIG_ENDIAN.
291 * emacs.c (syms_of_emacs), config.h.in:
292 EMACS_CONFIGURATION renamed from CONFIGURATION.
294 1994-05-17 Andreas Schwab (schwab@issan.informatik.uni-dortmund.de)
296 * eval.c (Fbacktrace): Properly nest parentheses.
297 (Fbacktrace_frame): Don't bomb on invalid frame number.
299 1994-05-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
301 * keyboard.c (command_loop_1): Fix test for valid display table entry,
302 for backwards motion.
304 * Makefile.in.in (ALL_LDFLAGS): Add LDFLAGS.
305 (MAKE): Don't override a previous value of MAKE set by configure.
307 * dispnew.c (update_frame): Fix test of outq and baud_rate.
309 * emacs.c (shut_down_emacs): Don't call intern.
311 1994-05-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
313 * Version 19.23 released.
315 1994-05-17 Morten Welinder (terra@diku.dk)
317 * msdos.c (gettimeofday): New function substituting the library
318 function of the same name.
319 (init_gettimeofday): New function.
320 (init_environment): Call init_gettimeofday after possibly
321 setting TZ environment variable.
322 * msdos.h: Add template for init_gettimeofday.
324 1994-05-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
326 * buffer.c (fix_overlays_in_range): New function.
327 * editfns.c (Ftranspose_regions): Call it. Also update point as
330 1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
332 * xmenu.c (xmenu_show): Completely ignore nameless panes
333 except for the first pane. Ignore named panes too if KEYMAPS.
335 * widget.c (setup_frame_gcs): Move cursor_bits variable out of
336 setup_frame_gcs and rename to setup_frame_cursor_bits.
338 * eval.c (syms_of_eval): Doc fixes.
340 1994-05-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
342 * xterm.c (x_display_box_cursor): Preserve mouse highlight
343 if the old cursor was in it.
345 * editfns.c (Fcurrent_time_zone): Add cast.
347 * s/bsd386.h (LOCALTIME_CACHE): Defined.
349 * m/pmax.h (LOCALTIME_CACHE): Define, if not OSF1.
351 * xfns.c (validate_x_resource_name): Don't let Vx_resource_name
352 have invalid characters.
354 1994-05-14 Morten Welinder (terra@diku.dk)
356 * msdos.c (crlf_to_lf): Fix off-by-one condition.
358 1994-05-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
360 * keyboard.c (bind_polling_period): Never decrease polling_period.
362 * fileio.c (Fdo_auto_save): Save listdesc as an integer, only if open.
363 (do_auto_save_unwind): Corresponding changes.
365 * keyboard.c (echo): Don't echo motion events.
367 * fileio.c (Fcopy_file): Close output before setting its times.
368 Close both before discarding the unwind protects.
370 1994-05-13 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
372 * buffer.c (Foverlay_lists): Doc fix.
373 (Fnext_overlay_change): Doc fix.
375 1994-05-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
377 * xterm.c (XTread_socket): For button events, clear compose_status.
379 * Makefile.in.in (LIBXTR6): New variable. Test HAVE_X11XTR6.
381 * config.h.in (HAVE_X11XTR6): Add #undef.
383 * editfns.c (save_excursion_restore): Don't run activate-mark-hook
384 if mark position is unchanged.
386 * emacs.c (main): PRIO_PROCESS renamed to SET_EMACS_PRIORITY.
387 * callproc.c (child_setup): PRIO_PROCESS renamed to SET_EMACS_PRIORITY.
388 Don't call nice if emacs_priority is positive.
389 * sysdep.c (sys_subshell): PRIO_PROCESS renamed to SET_EMACS_PRIORITY.
390 Don't call nice if emacs_priority is positive.
392 1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
394 * Makefile.in.in: Handle Motif and Open-look.
395 (LIBW): New variable.
398 * process.c (POLL_FOR_INPUT): Define, if appropriate.
400 1994-05-12 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
402 * xdisp.c (display_text_line): Fix check for end of buffer.
404 1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
406 * xterm.c (dumpglyphs): For cursor foreground, try the
407 face's background before the face's foreground.
408 (XTread_socket): Call note_mouse_movement for EnterNotify.
410 * process.c (Fopen_network_stream):
411 Call bind_polling_period; later unbind the binding.
413 * keyboard.c (syms_of_keyboard): Set up Qpolling_period.
414 (bind_polling_period): New function.
416 * callproc.c (init_callproc): Never set Vdata_directory based on
417 the executable's location. But maybe set it from source dir.
419 1994-05-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
421 * systty.h [__GNU_LIBRARY__]: Include <termios.h>.
423 1994-05-11 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
425 * xmenu.c (xmenu_show): New var mb_item. Use it to determine the
426 menubar item that led to the menu.
427 (Fx_popup_menu): Suppress duplicate test case in the way to determine
428 whether the menu is handling a menu bar click.
430 1994-05-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
432 * buffer.c (Frename_buffer): Reject empty string as new name.
434 1994-05-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
436 * process.c (exec_sentinel): Don't deactivate the mark.
437 Check for asynch buffer switch.
439 1994-05-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
441 * s/bsd4-2.h (BSD): Define as 42.
442 (BSD4_2): Define as 1. This makes it like bsd4-3.h.
444 * floatfns.c: Don't declare logb if it is a macro.
446 1994-05-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
448 * keyboard.c (read_char): Preserve echo area on asynch buffer switch.
450 1994-05-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
452 * dispnew.c [__GNU_LIBRARY__]: Redefine PENDING_OUTPUT_COUNT even
455 1994-05-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
457 * fileio.c (Finsert_file_contents) [MSDOS]: Ignore the replace feature.
459 * buffer.c (syms_of_buffer): Doc fix.
461 * keyboard.c (syms_of_keyboard): Doc fix.
463 1994-05-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
465 * keyboard.c (safe_run_hooks): New function, extracted from
466 command_loop_1. Bind inhibit_quit.
468 1994-05-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
470 * xmenu.c (string_width): Deleted.
472 * xterm.c (x_set_window_size) [USE_X_TOOLKIT]:
473 Preserve the main widget's x and y position.
475 1994-05-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
477 * process.c (process_send_signal): If PREFER_VSUSP,
478 use VSUSP instead of VSWTCH.
479 * s/sco4.h (PREFER_VSUSP): Defined.
480 * s/irix5-0.h (PREFER_VSUSP): Defined.
482 * fileio.c (Fdo_auto_save): Write a list of all auto save file names.
483 (Vauto_save_list_file_name): Specify file name to put them in.
484 (syms_of_fileio): Set up Lisp var.
486 1994-05-07 Morten Welinder (terra@diku.dk)
488 * callproc.c [MSDOS]: Rename Vbinary_process to Vbinary_process_output.
489 (syms_of_callproc) [MSDOS]: Rename lisp variable binary-process to
490 binary-process-output.
491 (Fcall_process, syms_of_callproc) [MSDOS]: Use new names.
492 (Vbinary_process_input) [MSDOS]: New variable.
493 (syms_of_callproc) [MSDOS]: Declare binary-process-input.
494 (Fcall_process_region) [MSDOS]: Bind binary-process-input temporarily
496 (init_callproc) [MSDOS]: Don't add lib-src as the wrapped binaries
499 1994-05-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
501 * buffer.c (Qbuffer_file_type): Var deleted.
502 * callproc.c (Qbuffer_file_type): Var added.
504 * keyboard.c (read_char): Don't test do_mouse_tracking;
505 instead, do prepare_menu_bars only if commandflag > 1.
506 (read_char): Do call add_command_key for mouse-movement events.
507 Test detect_input_pending, not EVENT_QUEUES_EMPTY, for kbd menus.
508 But don't test either one for mouse menus.
510 * undo.c (record_delete): Record the old point value
511 only right after a boundary.
513 1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
515 * s/dgux5-4r3.h: Use dgux5-4r2.h under new name.
517 * puresize.h (PURESIZE): Increase to 235000 and 205000.
519 1994-05-06 Morten Welinder (terra@diku.dk)
521 * s/msdos.h: Define NO_MATHERR.
522 * floatfns.c: Don't guard DOMAIN && SING && OVERFLOW check by
525 1994-05-06 Francesco Potortì (pot@cnuce.cnr.it)
527 * m/delta.h (SYSTEM_MALLOC): Deleted. The problem isn't there.
529 1994-05-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
531 * xterm.c (x_set_offset): Set gravity and size hint
532 before moving the window.
534 * keyboard.c (make_lispy_event): Ignore mouse events for deleted frame.
536 * xterm.c (XTread_socket):
537 For ReparentNotify, use x_top_window_to_frame.
538 Also recompute frame position using x_real_positions.
539 For ConfigureNotify, don't ignore send_events.
540 Also recompute frame position using x_real_positions.
542 1994-05-05 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
544 * window.c: Use PT, not point.
545 (Fdelete_other_windows): Do nothing if w->start is outside region.
546 Don't temporarily move point when recomputing window position.
548 1994-05-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
550 * xfns.c (x_real_positions): New function.
552 * keyboard.c (make_lispy_movement): Don't call pixel_to_glyph_coords
555 * xterm.c (x_set_offset): Update XNegative and YNegative for new pos.
556 (x_calc_absolute_position): Clear XNegative and YNegative.
558 * xrdb.c (x_load_resources) [USE_X_TOOLKIT]: Don't call XrmInitialize.
560 * keymap.c (describe_map): Ignore bindings for all except
561 symbols and integers.
563 * unexelfsgi.c (unexec): Handle debugging info properly.
565 * s/freebsd.h: Don't use netbsd.h. Do all those things right here.
567 1994-05-05 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
569 * xmenu.c (Fx_popup_menu): Restore accidentally-deleted call to
571 (xmenu_show): Disallow empty menus.
573 1994-05-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
575 * keyboard.c (last_point_position_buffer): New variable.
576 (command_loop_1): Set it.
577 * undo.c (record_delete): Test it.
578 * commands.h (last_point_position_buffer): Declared.
580 * Makefile.in.in: Put in a separator for where to start cpp procssing.
581 Above that, use Make-style comments.
582 This goes with changes in ../configure.in.
584 1994-05-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
586 * s/isc4-0.h (NEED_SIOCTL, ISC4_0): Declared.
588 * sysdep.c: Test ISC4_0 along with TIOCGWINSZ.
590 * process.c (wait_reading_process_input): Don't call prepare_menu_bars
591 unless we are going to redisplay for a garbaged frame.
592 (read_process_output): Call prepare_menu_bars if waiting for input.
593 (exec_sentinel): Call prepare_menu_bars if waiting for input.
595 * s/dgux5-4r3.h, s/dgux5-4r2.h: Renamed from ..4R..
597 * eval.c (error): Fix logic in call to xmalloc/xrealloc.
599 * xterm.c (x_make_frame_invisible): Use XWithdrawWindow again.
601 * s/sol2.h, s/sol2-3.h (LD_SWITCH_SYSTEM):
602 Use ./prefix-args, not -Xlinker directly.
604 1994-05-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
606 * xfns.c (x_set_cursor_color): Fix typo.
608 * xselect.c (x_own_selection): Catch errors around XSetSelectionOwner.
610 * buffer.c (syms_of_buffer): Doc fix.
612 * xdisp.c (display_text_line): Since HPOS is negative, avoid
613 writing before the beginning of the charstarts line.
615 * minibuf.c (read_minibuf): Clear previous_echo_glyphs.
617 1994-05-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
619 * dired.c (file_name_completion_stat): Use both lstat and stat.
621 1994-05-02 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
623 * xterm.c (show_mouse_face): Fix test for cursor in highlighted area.
624 (note_mouse_highlight): Reorder test for simplicity.
625 (note_mouse_highlight, show_mouse_face, clear_mouse_face,
626 x_destroy_window): Use row/col instead of buffer position to keep
627 track of highlighted area.
629 1994-05-02 Francesco Potortì (pot@cnuce.cnr.it)
631 * m/delta.h (SYSTEM_MALLOC): Defined, since GNU malloc does not work.
632 (BCOPY_UPWARD_SAFE): Defined to 0 for the Green Hills compiler.
634 1994-05-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
636 * process.c (create_process): Undo April 19 setsid change.
638 1994-05-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
640 * xterm.h (struct x_display): New field size_hint_flags.
641 * xfns.c (Fx_create_frame): Set the size_hint_flags field.
642 Don't call x_calc_absolute_position.
643 * xterm.c (x_calc_absolute_position): Use size_hint_flags.
644 New FLAGS arg deleted. Callers changed.
646 * xfns.c (x_figure_window_size): Handle `-' for top or left.
647 (Fx_parse_geometry): Handle one element at a time.
648 Give `-' when appropriate.
649 (x_figure_window_size): Allow just height or just width.
651 * xterm.c (x_wm_set_size_hint): Don't try to handle negative positions.
652 (x_calc_absolute_position):
653 New arg FLAGS. Use XNegative and YNegative.
654 (x_set_offset): Pass new arg.
656 * xfns.c (x_figure_window_size): Set USPosition only if user-position
657 is non-nil; otherwise, if pos is specified, set PPosition.
658 Likewise for USSize and PSize.
659 (Fx_create_frame): Use XNegative and YNegative to set win_gravity.
660 [USE_X_TOOLKIT] (x_window): Use XNegative and YNegative
661 to set win_gravity. Pass new arg to x_calc_absolute_position.
663 * editfns.c (Ftranspose_regions): Take addresses only after move gap.
664 Cast result of alloca. Use xmalloc instead, for large objects.
665 Always copy the middle portion directly; never put it in temp.
666 Always move the gap to START1 or END2, whichever is nearer.
668 * keyboard.c (Ftrack_mouse): Call prepare_menu_bars at the start.
669 (read_char): Don't call prepare_menu_bars if doing mouse tracking.
671 1994-04-30 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
673 * puresize.h (PURESIZE) [MULTI_FRAME]: Increase to 232000.
675 1994-04-30 Paul Reilly (pmr@churchy.gnu.ai.mit.edu)
677 * s/dgux5-4R3.h: New file.
679 * s/dgux5-4R2.h: New file.
681 * s/dgux.h (SVR4): Make conditional on ELF environment.
682 (INTERRUPT_INPUT, ORDINARY_LINK): Set by default.
683 (C_COMPILER, LINKER and MAKE_COMMAND): Remove.
685 * process.c (IN_ADDR, NUMERIC_ADDR_ERROR): Made conditional on
686 HAVE_BROKEN_INET_ADDR.
688 1994-04-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
690 * keyboard.c (record_asynch_buffer_change): Block SIGIO.
691 (force_auto_save_soon): Call record_asynch_buffer_change.
693 * emacs.c (memory_warning_signal): Call force_auto_save_soon.
695 * keyboard.c (force_auto_save_soon): New function.
697 * process.c (Fopen_network_stream): Retry the connect if EADDRINUSE.
700 1994-04-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
702 * eval.c (init_eval): Initialize when_entered_debugger to -1.
704 1994-04-29 Jim Blandy (jimb@totoro.bio.indiana.edu)
706 * data.c (Ffset, Ffmakunbound): Signal an error if SYM is nil or t.
708 1994-04-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
710 * data.c, floatfns.c, lread.c [MSDOS]: Re-enable some #undef's.
712 1994-04-29 Karl Fogel (kfogel@phylo)
714 * editfns.c (Ftranspose_regions): New function.
715 (transpose_markers): Helper func for above.
716 (syms_of_frame): Call defsubr for Stranspose_regions.
718 1994-04-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
720 * xterm.h (x_mouse_grabbed): Declared.
721 * xmenu.c (xdialog_show): Clear x_mouse_grabbed.
723 * frame.c (Fframe_live_p): Alternative defn for not MULTI_FRAME.
724 (syms_of_frame): Call defsubr for it.
726 * process.c: Doc fixes.
728 * xterm.c (x_wm_set_size_hint): Always set PWinGravity.
729 Rename the args. Compute x and y fields from negative positions.
730 Use XGetWMNormalHints if X11R4 or newer.
731 (x_make_frame_visible): Call x_set_offset only if not USE_X_TOOLKIT.
732 (x_make_frame_invisible): Call x_wm_set_size_hint.
733 (x_set_offset): Pass 0 as 3rd arg to x_wm_set_size_hint.
734 (x_set_window_size): Likewise. Set win_gravity field here if nec.
736 * xfns.c (Fx_create_frame): Pass 0 as 3rd arg to x_wm_set_size_hint.
737 (x_figure_window_size): Fix typo setting XNegative.
739 * minibuf.c (Fminibuffer_complete): Add third arg to Fset_window_start.
741 * buffer.c (init_buffer_once): Initialize buffer_file_type field right.
743 * m/dos386.h (HAVE_MOUSE): Defined.
744 (PURESIZE): Increase value.
746 * xdisp.c (decode_mode_spec): Fix handling of `%t'.
748 * msdos.c, dosfns.c: Finish downcasing mouse_init1, mouse_off,
749 mouse_check_moved, mouse_pressed, mouse_released, mouse_on, mouse_init.
751 * dispnew.c (update_frame): Fix previous change:
752 Unconditionally bzero at the end.
754 1994-04-29 Morten Welinder (terra@diku.dk)
756 * msdos.c (visible_bell): Now static. Make the asm volatile.
757 Don't expect register %gs to survive calls to other functions
758 (just to be safe, %gs will survive at present).
760 * keyboard.c (make_lispy_movement): If HAVE_MOUSE then include
761 the mouse handling code.
762 * msdos.c (glyph_to_pixel_coords, pixel_to_glyph_coords):
763 New functions imitating those in xterm.c.
765 * s/msdos.h (getppid): Definition deleted.
767 * msdos.c (dos_rawgetc): Key numbers are biased by 0xff00.
769 * dosfns.c (Fmode25, Fmode4350): Clean up the coding and return
770 a well-defined value.
771 (syms_of_dosfns): Doc fix.
773 1994-04-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
775 * keymap.c (Fsingle_key_description): Undo previous change.
776 (describe_map): Skip string entries.
778 * minibuf.c (do_completion): Initialize vars before gcpro.
780 1994-04-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
782 * dispnew.c (update_frame): Move those assignments even farther down.
784 * xterm.c (x_wm_set_size_hint): Don't set PMaxSize.
785 Don't touch win_gravity field if no PWinGravity.
787 1994-04-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
789 * print.c: Doc fixes.
791 * keymap.c (describe_map_tree, describe_buffer_bindings): gcpro stuff.
792 (describe_buffer_bindings): Delete unused code.
794 1994-04-28 Per Abrahamsen (abraham@research.att.com)
796 * keymap.c (Fsingle_key_description): Accept strings as keys since
797 the buffer menu uses them.
799 1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
801 * dispnew.c (update_frame): Move assignments to current_frame
804 * floatfns.c (logb): Test HPUX, not hpux.
806 * s/sunos4-1.h (LIBS_SYSTEM): #if 0'd.
808 * xmenu.c (Fx_popup_menu): Doc fix.
810 * xfns.c (x_window) [USE_X_TOOLKIT]: Call XSetWMHints.
812 1994-04-28 Michael D. Ernst (mernst@monozygote.research.microsoft.com)
814 * fileio.c (inhibit-file-name-handlers): Correct documentation.
816 1994-04-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
818 * xterm.c (XTread_socket): Only top window cares about LeaveNotify.
820 * frame.c (Fframe_parameters) [!MULTI_FRAME]: Unstub it again.
822 1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
824 * emacs.c (syms_of_emacs): Doc fix.
826 * callproc.c (child_setup): Test PRIO_PROCESS, as in sys_subshell.
828 * m/hp800.h: Renamed from hp9000s800.h.
829 (hp9000s800): Undo previous change.
831 * process.c (create_process): If vfork fails, close forkin and forkout.
833 1994-04-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
835 * xterm.c (x_make_frame_visible): Use XtMapWidget, not XtPopup.
837 * m/hp9000s800.h (hp800): Define this instead of hp9000s800.
839 * Makefile.in.in (mostlyclean): Remove liblw.a.
841 * lread.c (read1): Allow `\C- ' and `\C-?'.
843 1994-04-27 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
845 * unexmips.c (unexec): Cast pointers.
848 * Makefile.in.in: Use C-style comments.
850 * frame.c (Fframe_parameters) [!MULTI_FRAME]: Replace with stub.
851 (Fframe_parameters, Fmodify_frame_parameters) [!MULTI_FRAME]:
852 Remove extra docstring.
854 1994-04-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
856 * s/sunos4-0.h (LD_SWITCH_SYSTEM): Undo previous change.
858 * xterm.c (XTread_socket, case ClientMessage): Don't call
859 XSetInputFocus if event is not for an existing frame.
861 * xmenu.c (xmenu_show, xdialog_show):
862 If we unread some events, set interrupt_input_pending.
864 * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Never pass motion
865 events to the toolkit.
867 CONFIGURATION now comes via config.h.
868 * Makefile.in.in (emacs.o): Use the default .c.o command.
869 (configuration): Make variable deleted.
870 * config.h.in (CONFIGURATION): Add #undef.
872 * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Undo previous change.
873 (x_wm_set_size_hint): Do set max_height, max_width, and PMaxSize flag.
875 1994-04-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
877 * process.c (create_process) [HAVE_TERMIOS && LDISC1]: Use tcsetattr.
879 1994-04-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
881 * alloc.c (mark_object, case frame): Mark menu_bar_vector field.
883 1994-04-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
885 * keyboard.c (Vunread_command_events):
886 Renamed from unread_command_events.
888 * command.h (Vunread_command_events): Renamed.
889 * lread.c (read_filtered_event): Use Vunread_command_events.
890 * minibuf.c (temp_echo_area_glyphs): Use Vunread_command_events.
892 * keyboard.c (read_char): Don't use menus if we have events waiting.
894 * xterm.c (XTread_socket) [USE_X_TOOLKIT]: Let toolkit handle
897 1994-04-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
899 * insdel.c: Use PT, not point.
900 (gap_left, gap_right, adjust_markers): Make these functions static.
901 (adjust_point): New function.
902 (insert_1, insert_from_string_1, del_range_1): Use it.
904 * xterm.c (x_term_init): Add explicit cast.
905 (XTmouse_position): Don't use last_mouse_frame if it's dead.
906 (XTread_socket): Ditto.
908 * textprop.c (F*_property_change): Typecheck limit argument.
910 1994-04-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
912 * xdisp.c (syms_of_xdisp): Set up Qmenu_bar_update_hook.
913 (update_menu_bar): Run that hook.
914 Fix failure to update menu bar when w->update_mode_line was nil.
916 * frame.h (struct frame): New fields menu_bar_vector and
918 * frame.c (make_frame): Initialize fields menu_bar_vector and
921 * keyboard.c (menu_bar_item): Put a list of keymaps into the third
922 slot of an item in menu_bar_items_vector.
924 1994-04-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
926 * fileio.c (Finsert_file_contents): Fix accessing buffer_file_type
927 since it is t or nil. Change to handle t or nil as value
928 of find-buffer-file-type.
930 * buffer.c (Fkill_all_local_variables): Doc fix.
932 1994-04-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
934 * process.c (create_process): Use SETUP_SLAVE_PTY only if pty_flag.
935 Likewise for child_setup_tty.
937 * window.c (Fselect_window): Use Fselect_frame.
939 * frame.c (Fset_frame_selected_window): New function.
940 (syms_of_frame): Set up Lisp function.
942 * lisp.h (Vascii_canon_table, Vascii_eqv_table): Declared.
944 * buffer.c (reset_buffer_local_variables): Use Vascii_eqv_table
945 and Vascii_canon_table.
947 * window.c: Implement special frames for specified buffers.
948 (Vspecial_display_buffer_names, Vspecial_display_regexps)
949 (Vspecial_display_function): New variables.
950 (syms_of_window): Set up Lisp variables.
951 (Fdisplay_buffer): Handle them.
953 1994-04-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
955 * Makefile.in.in (alloca.o): Use config_h.
956 (config_h): Use M_FILE and S_FILE.
957 (S_FILE, M_FILE): New variables hold names of config files.
959 * fileio.c (syms_of_fileio): New Lisp var inhibit-file-name-operation.
960 (Ffind_file_name_handler): Obey that variable. Use new meaning
961 for inhibit-file-name-handlers.
963 * config.h.in (HAVE_LIBRESOLV): Add #undef.
964 * s/sunos4-1.h (LIBS_SYSTEM): Test HAVE_LIBRESOLV, not HAVE_RES_INIT.
965 Do not test HAVE_GETHOSTNAME.
967 * s/sunos4-1.h (LIBS_SYSTEM): Invert the HAVE_RES_INIT condition.
969 1994-04-22 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
971 * fileio.c (Ffind_file_name_handler): New argument OPERATION.
974 1994-04-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
976 * process.c (max_process_desc): New variable.
977 (wait_reading_process_output): Don't look for process output
978 beyond that many bits.
979 (create_process, Fopen_network_stream, deactivate_process): Update it.
980 (init_process): Initialize it.
982 * frame.c (Fmouse_pixel_position, Fset_mouse_pixel_position):
984 (syms_of_frame): Set up Lisp functions.
986 * xterm.c (x_set_mouse_pixel_position): New function.
988 1994-04-21 Simon Leinen (simon@lia.di.epfl.ch)
990 * process.c (send_process): If fpathconf fails, use 250.
992 1994-04-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
994 * emacs.c (init_cmdargs): Check only for etc and lib-src subdirs
995 when setting Vinstallation_directory.
996 (syms_of_emacs): Make Lisp vars invocation-name, invocation-directory
997 and installation-directory.
999 * lread.c (init_lread): Maybe put build-time Lisp dirs on load-path.
1001 * callproc.c (init_callproc): Set Vdoc_directory like Vdata_directory.
1003 * lread.c (init_lread): Improve warning message.
1005 * xterm.c (x_make_frame_visible): Args to x_set_offset were swapped.
1007 1994-04-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1009 * xterm.h (x_top_window_to_frame): Declare this function.
1011 1994-04-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1015 * Makefile.in.in (TAGS): Split off included tags file lisp/TAGS.
1016 (../lisp/TAGS): New target uses recursive make.
1017 (ctagsfiles, lisptagsfiles): New variables.
1019 * xfns.c (x_window): Test FRAME_EXTERNAL_MENU_BAR
1020 to decide on calling initialize_frame_menubar.
1022 1994-04-20 Francesco Potortì (pot@fly.cnuce.cnr.it)
1024 * m/delta.h (HAVE_SOCKETS): Defined if HAVE_INET_SOCKETS is defined.
1026 1994-04-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1028 * frame.c (Fmodify_frame_parameters, Fframe_parameters):
1029 Define even if not MULTI_FRAME.
1031 * config.h.in (HAVE_INET_SOCKETS): Add #undef.
1033 * xterm.c (XTread_socket): Delete the non-NEW_SELECTIONS code
1034 and simplify the toolkit conditional for those cases.
1036 * xterm.c (XTread_socket, case ClientMessage):
1037 Always use x_window_to_frame.
1039 * xfns.c (x_top_window_to_frame): New function.
1041 1994-04-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1043 * process.c (create_process): Call setsid only if pty_flag.
1045 * xterm.c (x_make_frame_invisible): Explicitly clear visible and
1046 iconified flags, as well as the async flags.
1048 1994-04-19 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1050 * keymap.c (describe_map): Merge with describe_map_2.
1051 (describe_map_tree, describe_map): Skip keymaps we've seen before.
1053 * keyboard.c (read_avail_input): Don't retry read.
1055 1994-04-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1057 * keyboard.c (Vlast_event_frame): Define unconditionally.
1058 (syms_of_keyboard): Always make the Lisp var.
1060 * Makefile.in.in (${etc}DOC): Delete redundant version.el from cmd.
1062 1994-04-19 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1064 * keyboard.c (read_avail_input): Test EINTR, not EAGAIN.
1065 Write loop as a do-while.
1067 * puresize.h (PURESIZE) [!MULTI_FRAME]: Increase to 200000.
1069 1994-04-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1071 * xterm.c (XTread_socket): Call XSetInputFocus.
1073 1994-04-18 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1075 * config.h.in (EMACS_INT, EMACS_UINT): Omit if NOT_C_CODE.
1077 1994-04-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1079 * mem-limits.h (get_lim_data): Handle NO_LIM_DATA.
1081 * xterm.c (x_make_frame_invisible) [USE_X_TOOLKIT]: Use XtPopdown.
1082 (XTread_socket): Call _XEditResCheckMessages only if HAVE_X11R5.
1084 * m/convex.h (CRT0_DUMMIES): Ignore one arg.
1085 (LIBS_TERMCAP): Use the system's termcap.
1087 * process.c (create_process): Fix previous change.
1089 1994-04-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1091 * xfns.c (Xatom_editres_name): Declared.
1092 (Fx_open_connection): Initialize it.
1093 * xterm.c (Xatom_editres_name): Variable defined.
1094 (XTread_socket): Handle that kind of message.
1095 (x_term_init): Specify -name option in XtAppInitialize.
1097 * xterm.c (Qface, Qmouse_face): Supply missing Lisp_Object.
1099 * config.h.in (EMACS_INT, EMACS_UINT): New typedefs.
1101 * casetab.c (set_case_table): Handle nil for EQV with non-nil CANON.
1102 (Fcase_table_p): Accept nil for EQV with non-nil CANON.
1104 * keyboard.c (read_avail_input): Test both aix386 and _BSD.
1106 * window.c (set_window_width):
1107 Don't delete root window for being too narrow.
1109 * xterm.c (dumpglyphs): When HL=2, check explicitly for using
1110 the frame's default font or not.
1112 * keyboard.c (read_char_x_menu_prompt): Don't check for value = nil
1113 if value was originally a cons.
1115 * xmenu.c (xmenu_show): Fix typo in last change.
1117 1994-04-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1119 * frame.c (Fmouse_position): Don't clip.
1120 * keyboard.c (make_lispy_movement): Don't clip.
1122 1994-04-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1124 * s/netbsd.h: Add NO_SHARED_LIBS conditional.
1125 * s/freebsd.h: Rewrite to use netbsd.h and define NO_SHARED_LIBS.
1127 * keyboard.c (read_avail_input): Fix previous change--test _BSD.
1129 * data.c (Fsetq_default): Doc fix.
1131 * eval.c (Fsetq): Doc fix.
1133 * Makefile.in.in (configuration): Use SET_MAKE to get
1134 the value of $(MAKE).
1136 1994-04-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1138 * keyboard.h (map_prompt): Declared.
1140 * xmenu.c (xmenu_show): Don't cons on subprefix_stack[j] if nil.
1142 * keyboard.c (read_avail_input): Don't generate SIGHUP of aix386;
1143 only on other AIX systems.
1145 * xterm.c (XTread_socket):
1146 For UnmapNotify, use x_any_window_to_frame.
1148 * process.c (create_process): Test TIOCSETD along with NTTYDISC.
1150 * frame.c (Fset_frame_position): Pass new arg to x_set_offset.
1152 * xterm.c (x_set_offset): New arg CHANGE_GRAVITY.
1153 (x_make_frame_visible): Pass new arg.
1155 * xfns.c (Fx_create_frame): Delete excess args to x_wm_set_size_hint.
1157 * xterm.c (x_wm_set_size_hint): Args spec_x and spec_y deleted.
1158 (x_set_offset, x_set_window_size): Don't pass those args.
1160 * fileio.c (Finsert_file_contents): Fix test for unchanged file.
1162 * xterm.c (x_destroy_window): Just clear out mouse_face... vars.
1164 * keyboard.c (syms_of_keyboard): Init and staticpro system_key_syms.
1165 (modify_event_symbol): Use the cdr of the alist entry.
1166 Whenever value is nil, intern a new symbol.
1168 * Makefile.in.in (LIBX): Put LIBXT after LD_SWITCH_X_SITE.
1170 1994-04-15 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1172 * xdisp.c (fix_glyph) [HAVE_X_WINDOWS]: When glyph face is 0, use
1173 the computed face as given.
1175 * keyboard.c (read_avail_input): Fix comment delimiter.
1177 * m/pmax.h (C_SWITCH_X_MACHINE): Add -DNeedVarargsPrototypes=0.
1179 1994-04-14 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1181 * scroll.c (calculate_scrolling): Add explicit casts.
1183 1994-04-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1185 * xterm.c (x_wm_set_size_hint): Use win_gravity from frame.
1187 * xterm.h (x_display): New field win_gravity.
1188 * xfns.c (Fx_create_frame): Set win_gravity field.
1190 * xfns.c (x_window, both versions):
1191 Don't call x_calc_absolute_position.
1192 * xterm.c (x_make_frame_visible): Call x_set_offset.
1194 * xterm.c (x_make_frame_visible): Don't call XMapSubwindows.
1195 (x_iconify_frame): Likewise.
1197 * s/isc4-0.h (LIBS_SYSTEM): Defined.
1199 * keyboard.c (make_lispy_event): Put mouse event code
1200 into MULTI_FRAME conditional.
1202 * xfns.c (Fx_list_fonts): Error if non-X frame used.
1204 * xdisp.c (update_menu_bar): Take frame as arg.
1205 (update_menu_bars): Function deleted.
1206 (prepare_menu_bars): Call update_menu_bar; do it for all frames.
1207 Simplify computation of all_windows; ignore irrelevant criteria.
1209 * xterm.h (HAVE_X11R4): If we define HAVE_X11R5, define this too.
1211 * xterm.c (pending_autoraise_frame): New variable.
1212 (x_new_focus_frame): Don't autoraise here; just set that var.
1213 (XTread_socket): Raise that frame here.
1215 1994-04-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1217 * emacs.c (inherited_pgroup): Conditionalize on BSD_PGRPS.
1219 * s/netbsd.h (TABDLY): Defined.
1221 * doc.c, fileio.c, unexsunos4.c [HAVE_UNISTD_H]: Include unistd.h.
1223 * dired.c (Ffile_attributes): Cast st_size to int.
1225 * xmenu.c (last_menu_bar_item_end): New variable.
1226 (xmenu_show): Set that var.
1227 (other_menu_bar_item_p): Return 0 if mouse is not in any menu bar item.
1229 * keymap.c (describe_map_tree): Fix call to Flookup_key.
1231 * xfns.c (x_window): Don't call initialize_frame_menubar
1233 (Fx_create_frame): Default menu-bar-lines parm before calling x_window.
1235 1994-04-13 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1237 * dispnew.c (Vglyph_table): Doc fix.
1239 * frame.c (Fmouse_position) [MULTI_FRAME]: Use pixel_to_glyph, not
1240 glyph_to_pixel. Skip the conversion if args are nil.
1241 [!MULTI_FRAME]: All results are nil. Remove extra docstring.
1243 * window.c (Fnext_window, Fprevious_window, Fdisplay_buffer): Test
1244 MULTI_FRAME when frame-walking.
1245 (Fset_window_configuration): Only call X fns if HAVE_X_WINDOWS.
1247 * fns.c (Fy_or_n_p, Fyes_or_no_p): Test HAVE_X_MENU in popup code.
1249 1994-04-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1251 * indent.c (compute_motion): Do not abort if window shows some
1253 (Fcompute_motion): Use whatever buffer is current.
1255 1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1257 * s/bsd4-2.h (BSD): Give it a number as definition.
1259 * s/sol2-3.h: Fix #include file name.
1261 * xterm.c (x_destroy_window): Call clear_mouse_face if necessary.
1263 * xmenu.c (xmenu_show, xdialog_show): Add casts in assignments
1264 to widget_value fields from string contents.
1265 (dispatch_dummy_expose): Cast arg to XtDispatchEvent.
1266 [!USE_X_TOOLKIT] (xmenu_show): Right-justify char equivalents.
1267 Use alloca for concatenated strings, if alloca is fast.
1269 * lisp.h (Fprocess_send_eof, Foverlay_get): Declared.
1271 * keymap.c (Fkey_binding): Declare accept_default.
1273 * sysdep.c (sys_siglist) [sun]: Check SIGFREEZE and SIGTHAW defined.
1275 1994-04-12 Per Bothner (bothner@cygnus.com)
1277 Provide a hook for elisp to signal a changed window size
1278 to a process inferior.
1279 * sysdep.c (set_window_size): New function.
1280 * process.c (Fset_process_window_size): New function.
1282 1994-04-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1284 * eval.c (specbind): Use find_symbol_value.
1286 * xfaces.c (frame_update_line_height): Don't call x_set_window_size.
1287 Return 1 if line_height changed.
1288 (Fset_face_attribute_internal): Call x_set_window_size here if nec.
1289 * xterm.c (x_new_font): Always call x_set_window_size.
1291 * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Use XtTranslateCoords.
1293 * process.c (send_process): Test pty_flag field for nil, not 0.
1295 1994-04-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1297 * s/sunos4-0.h (LD_SWITCH_SYSTEM): Alternate definition if __GNUC__.
1299 * callproc.c: If we include fcntl.h, define INCLUDED_FCNTL.
1300 * systty.h: Check for INCLUDED_FCNTL already defined.
1302 * xterm.c (x_wm_set_size_hint): If PROMPTING is 0,
1303 copy the old win_gravity field.
1304 If USPosition is set, don't set PWinGravity.
1306 * keyboard.c (read_avail_input): Separate local var n_to_read
1307 so that reading doesn't clobber that info when it sets nread.
1309 * s/isc4-0.h (LIBS_SYSTEM): Defined.
1311 * emacs.c (main): Fix typo in prev. change.
1313 * Makefile.in.in (temacs): Include ${ALL_LDFLAGS} within
1314 the call to YMF_PASS_LDFLAGS.
1316 1994-04-11 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1318 * keyboard.c (make_lispy_event): Initialize item.
1320 * indent.c (vmotion): Use minibuf_prompt_width despite window-start.
1322 * print.c (printchar, strout): Use FRAME_PTR, not struct frame *.
1324 * frame.c (Fmouse_position) [!MULTI_FRAME]: Declare col and row.
1326 1994-04-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1328 * keyboard.c (make_lispy_movement): Conditionalize on MULTI_FRAME.
1329 (kbd_buffer_get_event): Call make_lispy_movement only if MULTI_FRAME.
1331 * xselect.c (x_decline_selection_request): Call XFlushQueue.
1333 * eval.c (Fsetq): Doc syntax fix.
1334 * print.c (syms_of_print): Doc syntax fix.
1335 * editfns.c (Fuser_real_login_name): Doc syntax fix.
1336 * data.c (Fsetq_default, Fmake_local_variable): Doc syntax fix.
1338 1994-04-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1340 * xterm.c (x_wm_set_size_hint): If change_gravity is 0,
1341 just don't set the gravity.
1343 1994-04-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1345 * xterm.c (dumpglyphs): Clear any extra pixel rows below the text.
1347 * xfns.c (x_figure_window_size): Don't call x_calc_absolute_position.
1348 (x_window): Separate into two alternative definitions.
1349 Call x_calc_absolute_position here.
1351 * widget.c (EmacsFrameSetCharSize): Do not attempt to preserve
1352 the window position.
1354 * xfns.c (Fx_list_fonts): Doc fix.
1356 * buffer.c (Vafter_change_functions, Vbefore_change_functions):
1358 (syms_of_buffer): Set up Lisp vars.
1359 * buffer.h (Vafter_change_functions, Vbefore_change_functions):
1362 * insdel.c (before_change_functions_restore)
1363 (after_change_functions_restore): New functions.
1364 (signal_before_change): Handle Vbefore_change_functions.
1365 (signal_after_change): Handle Vafter_change_functions.
1367 * cmds.c (internal_self_insert): Test Vafter_change_functions,
1368 Vbefore_change_functions.
1370 * xfaces.c (frame_update_line_height): Check param_faces[i] not null.
1372 * emacs.c (main): Handle EXTRA_INITIALIZE.
1374 * s/isc4-0.h: New file.
1376 * keymap.c (get_keymap): Pass 1 as ERROR to get_keymap_1.
1377 (get_keyelt): New arg AUTOLOAD means load keymaps indirected thru.
1378 All callers changed; most pass 0.
1379 (Fdefine_key, Flookup_key): Load all the keymaps we look in.
1381 * editfns.c (make_buffer_string): Copy properties whenever we
1382 have some, even if they don't change.
1384 * xterm.c (x_display_box_cursor): Explicitly clear full height of line.
1385 (dumpglyphs): New arg just_foreground. Callers changed.
1386 (x_set_window_size): Call XSync.
1388 * xterm.c (note_mouse_highlight): Do nothing if buffer has changed.
1390 * xterm.c (x_new_font): Fix setting line_height.
1392 Support fonts of different heights, using tallest as line height:
1394 * xfaces.c (frame_update_line_height): New function.
1395 (Fset_face_attribute_internal): Call that.
1397 * xterm.c (x_new_font): If frame is new, set line_height field.
1398 Otherwise call frame_update_line_height.
1400 * xterm.h (struct x_display): New field line_height.
1401 (VERTICAL_SCROLL_BAR_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW)
1402 (CHAR_TO_PIXEL_ROW): Use line_height field.
1404 * xterm.c (stufflines, scraplines, dumprectangle, x_do_pending_expose)
1405 (pixel_to_glyph_coords, x_draw_box, clear_cursor, x_display_bar_cursor)
1406 (x_set_resize_hint, x_set_mouse_position, x_wm_set_size_hint)
1407 (XTclear_end_of_line, redraw_previous_char): Use line_height field.
1408 * xfns.c (x_char_height): Use line_height field.
1409 * widget.c (get_default_char_pixel_size): Use line_height field.
1410 * dispnew.c (update_line): Use line_height field.
1411 * xmenu.c (Fx_popup_menu): Use line_height field.
1413 1994-04-09 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1415 * indent.c (Fvertical_motion): Use window arg, not selected_window.
1417 1994-04-08 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu)
1419 * xterm.c (show_mouse_face): Change the mouse cursor accordingly.
1421 * xterm.h (cross_cursor): New field for struct x_display.
1423 * xfns.c (syms_of_xfns): Define Vx_cross_pointer_shape.
1424 (Vx_cross_pointer_shape): New variable.
1425 (Vx_cross_pointer_shape): Create a mouse face cursor for the mouse-face
1428 1994-04-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1430 * xmenu.c (Fx_popup_dialog): Doc fix.
1431 (list_of_items): Handle nil in item list as left/right boundary.
1432 (push_left_right_boundary): Record the boundary.
1433 (xmenu_show): Disregard a boundary if any.
1434 (xdialog_show): Really obey a boundary.
1436 1994-04-07 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1438 * intervals.h (Qintangible): New symbol, replacing Qhidden.
1439 * textprop.c (syms_of_textprop): Initialize it.
1440 * intervals.c (set_point): Skip past intangible regions.
1442 * term.c (system_uses_terminfo): New variable.
1443 (syms_of_term): New function, to initialize it.
1444 * emacs.c (main): Call syms_of_term.
1446 * termhooks.h (enum event_kind): Add buffer_switch_event.
1447 * keyboard.c (kbd_buffer_get_event): Make it lispy.
1448 (record_asynch_buffer_change): New. Store it in the event queue.
1449 * process.c (read_process_output): If buffer changes, record that fact.
1451 * minibuf.c (Vminibuffer_exit_hook): New variable.
1452 (read_minibuf): Run hook when exiting minibuffer.
1454 * xdisp.c (copy_part_of_rope): Replace non-glyph with 0.
1456 * insdel.c (insert_1): New function, extracted from insert.
1457 (insert_from_string_1): Likewise, taken from insert_from_string.
1458 (insert, insert_from_string): Call the new functions.
1459 (insert_before_markers, insert_from_string_before_markers): Adjust
1460 the markers before calling the after-change function.
1462 1994-04-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1464 * scroll.c (struct matrix_elt): Use int, not short.
1465 Use unsigned char for insertcount and deletecount.
1466 (INFINITY): Increase to 1000000.
1468 1994-04-06 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1470 * minibuf.c (Fminibuffer_prompt_width): Undo previous change.
1471 * xdisp.c (display_text_line): minibuffer_prompt_width is a
1472 distance, not an absolute position.
1474 * editfns.c (Fformat): Reword confusing error message.
1475 * doprnt.c (doprnt): Likewise.
1477 * eval.c (Fsetq): Doc fix.
1479 1994-04-05 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1481 * xdisp.c (display_string): Allow for hpos < 0 when clearing array.
1483 * indent.c (vmotion): Don't use minibuf_prompt_width if
1484 window-start has suppressed the prompt.
1486 * minibuf.c (Fminibuffer_prompt_width): Allow for negative value.
1488 * buffer.c (Fget_buffer_create): Disallow empty string.
1490 * keymap.c (describe_buffer_bindings): Move XSYMBOL to after SYMBOLP.
1491 Exclude trailing null in string copies.
1493 * indent.c (compute_motion): Add window argument. All callers changed.
1495 * minibuf.c (do_completion): gcpro some things.
1497 * minibuf.c, xdisp.c: Use PT, not point.
1499 1994-04-04 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1501 * textprop.c (Fget_char_property): Doc fix.
1503 * dired.c (file_name_completion): Honor completion-regexp-list.
1505 * search.c (Freplace_match): Don't capitalize unless all matched
1506 words are capitalized.
1508 * buffer.c (verify_overlay_modification): Run modification-hooks
1509 for any deletion that intersects the overlay.
1511 1994-04-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1513 * fileio.c (Fdo_auto_save): Don't turn off auto save mode.
1514 Instead, store -1 in b->save_length. And don't auto save
1515 if there is -1 there.
1517 * xterm.c (note_mouse_highlight): Temporarily widen the buffer.
1519 * xdisp.c (display_text_line): Rename startp to leftmargin.
1520 Use that, not p1start, when checking for char off left edge.
1522 * dispnew.c (verify_charstarts): Handle truncation of lines.
1524 * xdisp.c (mark_window_display_accurate, redisplay):
1525 Set window_end_valid to the buffer displayed, not Qt.
1526 * xterm.c (note_mouse_highlight): Check window still shows that buffer.
1528 1994-04-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1530 * xterm.c (show_mouse_face): Turn off cursor only if it's
1531 in the area being manipulated.
1532 (XTupdate_begin): Don't turn off highlight if we aren't updating
1533 the window that it is in.
1535 * buffer.c (overlays_at): Fix previous change.
1537 * lisp.h (gc_in_progress): Declared.
1539 * xterm.c (note_mouse_highlight): Do nothing if gc_in_progress.
1540 Set mouse_face_deferred_gc when that case arise.
1541 (XTframe_up_to_date): If mouse_face_deferred_gc, redo highlighting.
1543 * xdisp.c (display_text_line): Properly handle charstarts for hscroll,
1544 and for continuation in mid character.
1545 (message2): Call frame_up_to_date_hook.
1547 * xterm.c (undefer_mouse_highlight, defer_mouse_highlight): New fns.
1548 * alloc.c (Fgarbage_collect): Call ..._mouse_highlight.
1550 * buffer.c (overlays_at): Use XGCTYPE.
1552 * buffer.h (OVERLAY_POSITION): Use XGCTYPE.
1554 * xmenu.c (Fx_popup_dialog): If POSITION is t, use selected frame.
1556 1994-04-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1558 * xdisp.c (redisplay): do_verify_charstarts controls whether to
1559 call verify_charstarts.
1560 Fix one-off when checking for the last line.
1562 * xterm.c (note_mouse_highlight): Reject out-of-range pos value
1563 before it causes an error.
1565 * dispnew.c (verify_charstarts): Count right for continued lines.
1566 (direct_output_for_insert): Add charstarts entry after the new char.
1567 Use the right point value for the inserted character.
1569 * xdisp.c (display_text_line): Always store in charstart
1570 even if at endp. When clearing charstart, do the whole width.
1572 * dispnew.c (scroll_frame_lines): When updating charstarts,
1573 treat all columns alike--don't zero out any.
1574 Fix end tests of loops over i.
1575 (adjust_window_charstarts): Fix typo.
1577 * xterm.c (fast_find_position): Always return coords within the window.
1579 * xdisp.c (redisplay): Call verify_charstarts.
1581 * dispnew.c (verify_charstarts): New function.
1583 * xdisp.c (redisplay): Don't call adjust_window_charstarts
1584 if on last text line of window.
1586 * xterm.c (note_mouse_highlight): Handle disable_mouse_highlight.
1588 1994-04-01 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1590 * buffer.c (list_buffers_1): Set buffer contents, then mode.
1592 1994-04-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1594 * dispnew.c (scroll_frame_lines): Fix previous changes.
1596 1994-04-01 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu)
1598 * xterm.c (x_wm_set_size_hint): Add USE_X_TOOLKIT conditional and call
1599 XtGetValues to get the width and the height of the Emacs frame.
1601 * xdisp.c (update_menu_bar): Pass 0 to set_frame_menubar.
1603 * widget.c (EmacsFrameSetCharSize): Clean up code.
1604 Replace XtVaSetValues by XtSetValues.
1606 1994-04-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1608 * xterm.c (construct_menu_click, construct_mouse_click):
1609 Use XSET when setting result->x and result->y.
1611 * xmenu.c (xmenu_show): Undo part of March 11 change:
1612 Do call lw_destroy_all_widgets at the end.
1614 * dispnew.c (scroll_frame_lines): Typo in previous change.
1615 Arg POS_ADJUST replaced with arg NEWPOS.
1616 * xdisp.c (try_window_id): Pass new arg to scroll_frame_lines.
1618 * xdisp.c (redisplay): In previous change, handle case where
1621 * xterm.c (note_mouse_highlight): Use the value from sort_overlays.
1622 Make the window's buffer current temporarily.
1623 window_end_pos is relative to Z, not ZV.
1625 1994-03-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1627 * dispnew.c (adjust_window_charstarts): New function.
1628 (direct_output_for_insert): Call it.
1629 (make_frame_glyphs): If EMPTY, don't leave junk in ->total_charstarts.
1631 * xdisp.c (redisplay): Call adjust_window_charstarts
1632 to update the charstarts of following lines.
1634 1994-03-31 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1636 * callproc.c (child_setup): Check out==err when relocating fds.
1638 1994-03-31 Frederic Pierresteguy (fp@hal.gnu.ai.mit.edu)
1640 * xfns.c (x_window) [USE_X_TOOLKIT]: When doing geometry management,
1641 don't compute the size of the menubar if there is no menubar.
1643 1994-03-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1645 * xterm.c (XTread_socket, MotionNotify and LeaveNotify cases):
1646 If not in any frame, call clear_mouse_face.
1648 1994-03-31 Frederic Pierresteguy (fp@geech.gnu.ai.mit.edu)
1650 * xterm.h: Define HAVE_X11R4 if AIX3_2 is defined.
1652 * xfns.c (x_window) [USE_X_TOOLKIT]: New args window_prompting and
1654 Don't pass top_pos and left_pos to XtCreatePopupShell.
1655 Call initialize_frame_menubar before creating the Emacs frame if it is
1656 not the minibuffer. Call XtManageChild for the menubar widget if any.
1657 Compute some geometry management.
1658 (Fx_create_frame): Pass window_prompting and minibuffer_only to
1660 Don't call x_wm_set_size_hint.
1661 Don't call initialize_frame_menubar.
1663 * xmenu.c (set_frame_menubar): New arg, first_time.
1664 Don't update the menubar the first time it is created via x_window.
1665 (initialize_frame_menubar): Pass 1 to set_frame_menubar.
1667 * widget.c (set_frame_size): Don't compute any geometry management.
1669 1994-03-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1671 * xterm.c (x_term_init): Set frame_up_to_date_hook.
1672 (XTframe_up_to_date): New function.
1673 * termhooks.h (frame_up_to_date_hook): Declared.
1674 * term.c (frame_up_to_date_hook): Defined.
1675 * xdisp.c (redisplay): Call frame_up_to_date_hook.
1677 1994-03-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1679 * scroll.c (do_scrolling): Handle charstarts like glyphs.
1681 * dispnew.c (scroll_frame_lines): Handle charstarts like glyphs.
1682 (direct_output_for_insert): Likewise.
1683 (preserve_other_columns): Likewise.
1685 * systty.h (INCLUDED_FCNTL): Define, if include fcntl.h.
1686 * xterm.c [INCLUDED_FCNTL]: Don't include fcntl.h again.
1688 1994-03-30 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1690 * minibuf.c (Fminibuffer_prompt, Fminibuffer_prompt_width): New funcs.
1692 1994-03-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1694 * indent.c (Fcompute_motion): Doc fix.
1695 (Fcompute_motion): Don't use XFASTINT on possibly-negative coords.
1697 1994-03-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1699 * dispnew.c (update_line): Update charstarts like glyphs.
1701 1994-03-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1703 * systime.h (EMACS_TIME_NEG_P): Cast to signed.
1705 1994-03-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1707 * xterm.c (XTupdate_begin): Turn off mouse face display, and defer it.
1708 (XTupdate_end): Undefer.
1709 (mouse_face_defer): New variable.
1710 (mouse_face_mouse_frame, mouse_face_mouse_x, mouse_face_mouse_y):
1713 * xfaces.c (compute_char_face): New arg MOUSE.
1714 (Qmouse_face): New variable.
1715 (syms_of_xfaces): Initialize Qmouse_face.
1716 * xterm.c (dumpglyphs): Handle HL = 3 by using mouse_face_face_id.
1717 (note_mouse_movement): Check for mouse face.
1718 (show_mouse_face, fast_find_position): New functions.
1719 (clear_mouse_face): New functions.
1720 (mouse_face_beg, mouse_face_end, mouse_face_face_id): New variables.
1721 (mouse_face_window): New variable.
1722 (syms_of_xterm): Init and staticpro it.
1724 * xdisp.c (display_text_line): Pass new arg to compute_char_face.
1725 Fill in charstarts array.
1726 (display_string): Clear part of charstarts array.
1728 1994-03-29 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1730 * window.c (Fwindow_width): Delete unnecessary variable declarations.
1732 * indent.c (Fcompute_motion): Typecheck all arguments.
1734 1994-03-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1736 * xdisp.c (display_text_line): Fill in charstart values.
1738 * dispextern.h (struct frame_glyphs): New fields charstarts
1739 and total_charstarts.
1740 * dispnew.c (make_frame_glyphs):
1741 Initialize charstarts, total_charstarts.
1742 (free_frame_glyphs): Free those fields.
1744 1994-03-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1746 * xdisp.c (display_text_line): Handle selective display at window edge.
1748 * dired.c (file_name_completion): Don't step on dirname.
1750 * xterm.c (x_find_modifier_meanings): Skip zero entries.
1752 1994-03-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1754 * dired.c (file_name_completion): Protect things from GC.
1756 * buffer.c (verify_overlay_modification):
1757 Copy TAIL before a hook, in case the hook recenters the overlay lists.
1759 * s/dgux.h (LIBS_SYSTEM): Commented out.
1761 1994-03-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1763 * fileio.c (Vinhibit_file_name_handlers): New var.
1764 (syms_of_fileio): Set up Lisp var.
1765 (Ffind_file_name_handler): Obey the variable.
1767 * minibuf.c (Vcompletion_regexp_list): New var.
1768 (syms_of_minibuf): Set up Lisp var.
1769 (Ftry_completion, Fall_completions):
1770 Limit possible completions to strings matching those regexps.
1772 * search.c (Freplace_match): Doc fix.
1774 1994-03-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1776 * minibuf.c (read_minibuf): Return val via unbind_to.
1778 1994-03-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1780 * commands.h (this_command, last_command): Declared.
1782 * minibuf.c (Fminibuffer_complete): Scroll the completion window
1785 * print.c (debug_print): New function.
1786 * .gdbinit (pr): Use debug_print.
1788 1994-03-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1790 * frame.c (Fframe_first_window): New function.
1792 1994-03-24 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1794 * editfns.c (Fformat): Validate number and type of arguments.
1796 * xmenu.c (xmenu_show): Enable asynchronous events.
1798 * keymap.c (Fwhere_is_internal): Skip duplicate keybindings.
1800 * xfns.c (x_report_frame_params): Sample visibility.
1801 (x_get_arg): Use downcased string in compare.
1803 * process.c (status_notify): Use assignment, not initialization.
1804 * textprop.c (add_properties, remove_properties): Ditto.
1805 * window.c (unshow_buffer, window_loop, Fdisplay_buffer): Ditto.
1806 * xdisp.c (x_consider_frame_title, decode_mode_spec): Ditto.
1807 * xfns.c (x_set_frame_parameters, x_get_arg, x_window,
1808 Fx_create_frame, Fx_create_frame): Ditto.
1809 * xselect.c (x_get_local_selection, x_handle_selection_request): Ditto.
1810 * xterm.c (x_window_to_scroll_bar, x_new_font): Ditto.
1812 1994-03-24 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1814 * xfns.c (Fx_create_frame): Add USE_X_TOOLKIT conditional around the
1815 call to initialize_frame_menubar.
1817 1994-03-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1819 * intervals.c (verify_interval_modification): For insertion in
1820 middle of an interval, use the same criterion as between intervals
1821 for whether read-only forbids it.
1823 1994-03-23 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1825 * alloc.c (make_event_array): Use assignment, not initialization.
1826 * buffer.c (sort_overlays, Fmake_overlay): Ditto.
1827 * callint.c (check_mark, Fcall_interactively): Ditto.
1828 * callproc.c (call_process_cleanup, getenv_internal): Ditto.
1829 * cmds.c (internal_self_insert): Ditto.
1830 * data.c (store_symval_forwarding, Fsymbol_value): Ditto.
1831 * fileio.c (Finsert_file_contents): Ditto.
1832 * filelock.c (lock_file): Ditto.
1833 * frame.c (next_frame, prev_frame, other_visible_frames,
1834 Fdelete_frame): Ditto.
1835 * intervals.c (adjust_intervals_for_insertion,
1836 merge_properties_sticky, delete_interval): Ditto.
1837 * keymap.c (access_keymap, store_in_keymap, Fcopy_keymap,
1838 Fdefine_key, Faccessible_keymaps, Fwhere_is_internal): Ditto.
1839 * lread.c (read_filtered_event, intern): Ditto.
1840 * minibuf.c (read_minibuf): Ditto.
1841 * msdos.c (run_msdos_command): Ditto.
1843 * sysdep.c (reset_sys_modes): Turn off O_NDELAY.
1845 * window.c (Fscroll_up, Fscroll_down, Fscroll_other_window): Doc fix.
1847 * frame.c (do_switch_frame): Common code for Fselect_frame and
1848 handle_switch_frame.
1850 * xfns.c (x_get_focus_frame): New function.
1852 1994-03-23 Frederic Pierresteguy (fp@geech.gnu.ai.mit.edu)
1854 * xmenu.c (update_frame_menubar): Function renamed from
1855 update_one_frame_psheets.
1856 (initialize_frame_menubar): New function.
1857 (set_frame_menubar): Call menu_bar_items when items is NIL.
1859 * xfns.c (Fx_create_frame): Call initialize_frame_menubar.
1861 1994-03-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1863 * buffer.c (reset_buffer): Init auto_save_failure_time slot.
1865 1994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1867 * keymap.c (where_is_string, Fwhere_is): Deleted.
1868 (syms_of_keymap): Corresponding changes.
1870 1994-03-22 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1872 * keymap.c (Fdefine_key): Check for non-events in keyvector.
1874 * minibuf.c (read_minibuf): Don't redirect focus unless minibuf is
1877 * lread.c (read1): Check for invalid modifier bits in a string.
1878 (unreadchar): Don't back up the pointer when unreading EOF.
1880 1994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1882 * callproc.c (Fcall_process): Make sure to close descriptors.
1883 (call_process_cleanup): Always close descriptor.
1885 1994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1887 * widget.c (set_frame_size): Put #if 0 around a lot of useless code.
1888 Compute explicitly the geometry of the toplevel widget.
1889 Call XtSetValues not XtVaSetValues.
1891 1994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1893 * emacs.c (__do_global_ctors, __do_global_ctors_aux)
1894 (__do_global_dtors): Don't define if GCC_CTORS_IN_LIBC.
1895 (__CTOR_LIST__, __DTOR_LIST__): Likewise.
1897 1994-03-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1899 * keyboard.c (init_keyboard): Don't handle SIGINT if using X.
1901 1994-03-21 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1903 * keyboard.c (add_command_key): Use assignment, not initialization.
1904 (command_loop_1, read_char, kbd_buffer_store_event,
1905 kbd_buffer_get_event, make_lispy_event, make_lispy_movement,
1906 apply_modifiers_uncached, parse_modifiers, apply_modifiers,
1907 reorder_modifiers, read_key_sequence): Ditto.
1909 1994-03-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1911 * data.c (Qwholenump): New variable.
1912 (syms_of_data): Set and gcpro Qwholenump.
1913 * lisp.h (Qwholenump): Declared.
1914 (CHECK_NATNUM): Use Qwholenump.
1916 1994-03-21 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1918 * keymap.c (Fcopy_keymap): Account for menus and equiv-key cache.
1919 (Fkeymapp): Doc fix.
1921 1994-03-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1923 * data.c (Fstring_to_number): Doc fix.
1925 1994-03-20 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1927 * data.c (Fmake_local_variable): Void variables stay void.
1929 1994-03-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1931 * alloca.c, alloca.s, gmalloc.c: Make them symlinks again.
1933 * fns.c (Fy_or_n_p, Fyes_or_no_p): Call Fx_popup_dialog the new way.
1934 (Fyes_or_no_p): Always display just one dialog box
1935 whether or not USE_X_TOOLKIT.
1937 1994-03-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1939 * xmenu.c (xdialog_show): Delete args x, y.
1940 (Fx_popup_dialog): Don't pass those args; don't compute them.
1941 Second arg is now just one pane. Lots of simplification.
1942 Always start by decoding POSITION arg to get a frame.
1943 [! USE_X_TOOLKIT]: Put the menu in middle of that frame.
1945 * s/freebsd.h (HAVE_TERMIOS, NO_TERMIO): Defined.
1947 * Makefile.in.in (emacs): rm emacs before the ln.
1948 (tagsfiles): Accept capital letters.
1950 * process.c (wait_reading_process_input, both versions): Don't call
1951 redisplay_preserve_echo_area unless do_display.
1953 * emacs.c (syms_of_emacs): Don't initialize Vinstallation_name
1954 and Vinstallation_directory.
1956 * fns.c (Fyes_or_no_p) [USE_X_TOOLKIT]: Display just one menu.
1958 * xmenu.c (Fx_popup_dialog, Fx_popup_menu): Require 2 args.
1959 (Fx_popup_dialog): Don't fail to set X, Y from POSITION.
1960 (xdialog_show): Call lw_modify_all_widgets properly.
1961 Generate dialog's name at run time to specify number of buttons.
1962 Report error if too many buttons to handle or if multiple panes.
1964 1994-03-18 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1966 * lisp.h (MAKE_GLYPH, GLYPH_CHAR, GLYPH_FACE): Handle termcap
1967 frames as well as X.
1968 (FAST_MAKE_GLYPH, FAST_GLYPH_CHAR, FAST_GLYPH_FACE): New macros.
1969 * xdisp.c (fix_glyph): Handle termcap frames as well as X.
1970 (display_text_line, copy_part_of_rope, display_mode_line): Ditto.
1971 * dispnew.c (direct_output_for_insert): Ditto.
1972 * xterm.c (dumpglyphs): Use the fast macros.
1974 1994-03-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
1976 * xmenu.c (list_of_items): Arg to push_menu_item was missing.
1978 1994-03-18 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1980 * Makefile.in.in (LIBXT): Add -lXext.
1982 1994-03-18 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1984 * s/netbsd.h (LD_SWITCH_SYSTEM): Undo previous change.
1986 1994-03-17 Jim Blandy (jimb@totoro.bio.indiana.edu)
1988 * indent.c (compute_motion): Doc fixes.
1990 1994-03-17 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
1992 * Makefile.in.in (X_WINDOWS_SUPPORT): New macro.
1993 (lisp): Include X_WINDOWS_SUPPORT. Also add version.el; it is no
1994 longer changed by building.
1996 1994-03-17 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
1998 * process.c (create_process): Skip the ioctl if fd is -1.
2000 * lread.c (openp, Fload): GCPRO some things.
2001 * callproc.c (Fcall_process): Ditto.
2002 * process.c (Fstart_process): Ditto.
2004 * s/netbsd.h (LD_SWITCH_SYSTEM, HAVE_WAIT_HEADER): Define these.
2006 1994-03-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2008 * data.c (Fchar_or_string_p, Fintegerp, Fnatnump): Doc fix.
2010 * minibuf.c (read_minibuf): Disallow trailing junk.
2012 1994-03-16 Morten Welinder (terra@diku.dk)
2014 * fileio.c (Ffile_modes) [MSDOS]: Set exec-bit based on file suffix.
2015 * s/msdos.h: Use bcopy when moving gap.
2017 1994-03-16 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2019 * fns.c (Frandom): Eliminate bias in random number generator.
2021 * floatfns.c (FLOAT_TO_INT, FLOAT_TO_INT2, range_error2): New macros.
2022 (ceiling, floor, round, truncate): Use them.
2024 1994-03-15 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2026 * xdisp.c (redisplay): Don't consider minibuffer name for frame title.
2027 (update_menu_bar): Delete unused second argument. Callers changed.
2029 * fileio.c (Frename_file, Fcopy_file, Fadd_name_to_file,
2030 Fmake_symbolic_link): Fix typo in previous change.
2032 * s/netbsd.h (LOCALTIME_CACHE): Define this symbol.
2034 1994-03-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2036 * fileio.c (Frename_file): Use RETURN_UNGCPRO when run handler.
2037 (Fcopy_file, Fadd_name_to_file, Fmake_symbolic_link): Likewise.
2039 1994-03-15 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2041 * xdisp.c (message1): Call message2 instead of duplicating code.
2043 1994-03-14 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2045 * floatfns.c (Flogb): Check for 0.0. Emulate logb if needed.
2047 * xterm.c (x_scroll_bar_expose): Don't make the right border thicker.
2048 * xterm.h (VERTICAL_SCROLL_BAR_RIGHT_BORDER): Change from 3 to 2.
2050 * frame.c (terminal-frame) [! MULTI_FRAME]: Create this variable.
2052 * minibuf.c (read_minibuf): Make minibuffer frame visible when
2053 minibuffer activated.
2055 * frame.c (Fhandle_switch_frame): Ignore switch to dead frame.
2057 * fileio.c (Fread_file_name): Delete docstring of second version.
2058 * frame.c (framep, selected-frame, frame-char-height, frame-char-width,
2059 frame-pixel-height, frame-pixel-width, set-frame-height,
2060 set-frame-width, set-frame-size): Ditto.
2062 * buffer.c (buffer-display-table, buffer-undo-list): Ditto.
2064 * xdisp.c (redisplay_window): Avoid dividing negative numbers.
2065 * window.c (window_scroll, Fmove_to_window_line): Ditto.
2066 * search.c (search_buffer): Avoid boolean/integer confusion.
2068 * dispnew.c (Fredraw_frame) [! MULTI_FRAME]: Make noninteractive.
2070 1994-03-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2072 * xmenu.c (Fx_popup_dialog, Fx_popup_menu): Handle case where
2073 mouse_position_hook doesn't store anything.
2075 1994-03-14 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2077 * widget.c (EmacsFrameSetCharSize): Set the values of left_pos and
2078 top_pos to the values of the toplevel widget coordinates.
2080 1994-03-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2082 * xmenu.c (Fx_popup_dialog) [! USE_X_TOOLKIT]: Call Fx_popup_menu.
2084 * indent.c (Fvertical_motion): New optional arg WINDOW.
2085 * window.c (Fdelete_other_windows): Pass new arg to Fvertical_motion.
2086 (window_scroll, Frecenter, Fmove_to_window_line): Likewise.
2088 * fileio.c (Finsert_file_contents): Don't let same_at_end be less
2091 1994-03-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2093 * puresize.h (PURESIZE): Reduce to 230000.
2095 1994-03-11 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2097 * floatfns.c (Fexpt): Delete extraneous `for' statement.
2099 * process.c (get_process): Allow arg to be a buffer object.
2101 * xdisp.c (x_consider_frame_title): New function, extracted from
2103 (redisplay): Update frame title on iconified frames.
2105 1994-03-11 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2107 * xmenu.c (xdialog_show): New function to handle the display of dialog
2109 (Fx_popup_dialog): New function.
2110 (dialog_selection_callback): New function.
2111 (xmenu_show) [USE_X_TOOLKIT]: Don't call lw_destroy_all_widgets at the
2113 Do the work of construct_mouse_click in the ButtonRelease case.
2115 * Makefile.in (LIBXT): Add -lXext to the list.
2117 * widget.c (EmacsFrameSetCharSize): Call XawPanedSetRefigureMode.
2118 Call XtSetValues not XtVaSetValues.
2120 * fns.c (Fyes_or_no_p): Call Fx_popup_dialog instead of Fx_popup_menu.
2121 (Fy_or_n_p): Likewise.
2123 1994-03-10 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2125 * filelock.c (lock_superlock): Synchronize NFS cache.
2127 * search.c (Fre_search_forward, Fre_search_backward): Doc fix.
2129 1994-03-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2131 * indent.c (compute_motion): Initialize prev_hpos.
2133 * keyboard.c (command_loop_1): On entry, set this_command
2134 after running Vpost_command_hook.
2136 * puresize.h (PURESIZE): Increment to 240000.
2138 * xmenu.c (Fx_popup_menu): If POSITION is nil,
2139 don't require an open X connection.
2140 (single_keymap_panes, keymap_panes, menu_item_enabled_p):
2142 (Fx_popup_menu): Pass new arg (1 if POSITION is nil).
2143 (menu_item_enabled_p): If NOTREAL, always return t.
2145 * xmenu.c (single_keymap_panes) [!USE_X_TOOLKIT]:
2146 Append > to item_string if submenu.
2148 1994-03-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2150 * xmenu.c [USE_X_TOOLKIT]: Display submenus in Xt style.
2151 (menu_items): Record where submenus start and end.
2152 (menu_items_submenu_depth): New variable.
2153 (init_menu_items): Init it.
2154 (push_submenu_start, push_submenu_end): New functions.
2155 (grow_menu_items): New function.
2156 (push_menu_pane, push_menu_item): Use it.
2157 (push_menu_pane): Increment menu_items_n_panes only if depth is 0.
2158 (single_keymap_panes) [USE_X_TOOLKIT]: Record submenus in menu_items.
2159 (xmenu_show) [USE_X_TOOLKIT]: Give submenus to toolkit.
2161 * xdisp.c (display_mode_line): Highlight partial-width mode lines
2162 for a non-termcal frame.
2164 * lisp.h (GLYPH_MODE_LINE_FACE): New macro.
2166 * callproc.c: Don't kill remaining processes if child exits.
2167 (call_process_exited): New variable.
2168 (Fcall_process): Set it.
2169 (call_process_cleanup): Test it.
2171 1994-03-09 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2173 * window.c (Fselect_window): Undo previous minibuffer patch.
2174 * callint.c (Fcall_interactively): Don't select an active minibuffer.
2176 1994-03-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2178 * window.c (window_loop): Delete MULTI_FRAME
2179 conditional within the loop, spuriously added in prev change.
2180 Don't ignore invisible or iconified frames for GET_BUFFER_WINDOW;
2181 instead, let Fnext_window skip them if appropriate.
2183 1994-03-08 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2185 * window.c (Fselect_window): Don't select an inactive minibuffer.
2187 1994-03-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2189 * window.c (Fdisplay_buffer): If pop_up_frames != 0,
2190 consider just visible frames when looking for existing window.
2192 * undo.c (syms_of_undo): staticpro pending_boundary.
2194 1994-03-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2196 * process.c (send_process) [_PC_MAX_CANON]: Also test #ifdef
2197 HAVE_FPATHCONF before trying to use fpathconf.
2198 * config.h.in: Add #undef HAVE_FPATHCONF.
2200 * term.c (term_get_fkeys_data): Variable removed.
2201 (term_get_fkeys_define_1, term_get_fkeys_define): Functions removed.
2202 (term_get_fkeys_address): New variable, to pass arg through
2204 (term_get_fkeys): Set that to ADDRESS; just do condition-case
2205 around call to term_get_fkeys_1, ignoring all errors.
2206 (term_get_fkeys_1): New function, containing body of term_get_fkeys.
2207 Don't use term_get_fkeys_define_1; call Fdefine_key directly.
2209 1994-03-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2211 * window.c (Fprevious_window, Fnext_window): ALL_FRAMES = visible
2212 means consider only visible frames.
2213 (window_loop): Likewise for FRAMES.
2214 (Fget_buffer_window, Fget_largest_window, Fget_lru_window): Doc fix.
2215 (Fdelete_windows_on): Doc fix.
2217 * frame.c (next_frame, prev_frame): If MINIBUF is `visible',
2218 consider only visible frames.
2219 (Fnext_frame, Fprevious_frame): Doc fix.
2220 (syms_of_frame): Staticpro Qvisible.
2221 * lisp.h (Qvisible): Declared.
2223 1994-03-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2225 * indent.c (Fcompute_motion): New function.
2227 * window.c (Fwindow_width): Doc fix.
2229 1994-03-07 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2231 * doprnt.c (doprnt): Do the right thing for negative size spec.
2233 * minibuf.c (temp_echo_area_glyphs): Use quit_char, not C-g.
2234 (Fminibuffer_complete, Fminibuffer_complete_word): Doc fix.
2235 (get_minibuffer): Make name buffer large enough.
2237 * window.c (Fscroll_other_window): Doc fix.
2239 1994-03-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2241 * alloc.c (mark_object): Add no-op cast.
2243 * eval.c (error): Use doprnt. Make buffer larger as necessary.
2245 * casefiddle.c (operate_on_word): Don't move point; store in *NEWPOINT.
2246 (Fupcase_word, Fdowncase_word, Fcapitalize_word):
2247 Set point after changing case. Rename opoint to beg.
2249 * undo.c (pending_boundary): New variable.
2250 (syms_of_undo): Initialize it.
2251 (Fundo_boundary): Use pending_boundary.
2252 (record_insert, record_delete, record_property_change):
2253 Set pending_boundary.
2255 1994-03-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2257 * vmsproc.c: Include config.h, lisp.h, buffer.h, process.h, commands.h,
2259 (write_to_vms_process): Change =- to -=.
2260 (create_process): Set status field instead of obsolete flags field.
2261 (child_sig): Likewise.
2263 * emacs.c (shut_down_emacs): Set Vrun_hooks to nil.
2264 * minibuf.c (read_minibuf): Don't call Vrun_hooks if it is nil.
2265 * keyboard.c (command_loop_1, read_key_sequence, Fcommand_execute):
2266 Don't call Vrun_hooks if it is nil.
2267 * editfns.c (save_excursion_restore): Don't call Vrun_hooks if nil.
2268 * buffer.c (Fkill_buffer, Fkill_all_local_variables):
2269 Don't call Vrun_hooks if it is nil.
2271 * fileio.c (Fdo_auto_save): Doc fix.
2273 * lisp.h (ARRAY_MARK_FLAG): Define here.
2274 * alloc.c (ARRAY_MARK_FLAG): Not here.
2276 1994-03-04 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2278 * keyboard.c (command_loop_1): Fix misplaced assignment of
2279 last_point_position.
2281 1994-03-04 Paul Eggert (eggert@twinsun.com)
2283 * data.c (isnan): New macro.
2284 (float_arith_driver): min and max yield NaN if any argument is a NaN.
2286 1994-03-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2288 * xmenu.c (update_one_frame_psheets): Call EmacsFrameSetCharSize to
2289 force the paned widget to resize to the right value.
2290 (xmenu_show): No need to check a second time whether the mouse has
2291 moved to another menu bar item. This slows down execution.
2293 * widget.c (EmacsFrameSetCharSize): Don't call XtMakeResizeRequest.
2294 Use XtVaSetValues for geometry management.
2296 1994-03-04 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2298 * xmenu.c [USE_X_TOOLKIT] (xmenu_show): Pass display to
2301 1994-03-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2303 * search.c (skip_chars): Treat `-' as alias for space, if syntaxp.
2305 * fileio.c (Finsert_file_contents): Pass del_range_1 two ends,
2308 1994-03-03 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2310 * process.h (chan_process): Don't specify size.
2312 1994-03-03 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2314 * fileio.c (Fread_file_name): Do the right thing when
2315 insert-default-directory is nil.
2316 Allow for doubled dollar signs in dir when computing pos.
2318 * commands.h: New variable last_point_position.
2319 * keyboard.c (command_loop_1): Set it to the value of point.
2320 * undo.c (record_delete): Save this value in the undo record,
2321 rather than the current value of point.)
2323 * buffer.c (Fget_file_buffer): Doc fix.
2325 * s/aix3-2.h (C_SWITCH_SYSTEM): Increase maxmem when using IBM's
2328 1994-03-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2330 * process.c (chan_process, Vprocess_alist): No longer static.
2331 * process.h (chan_process, Vprocess_alist): Declared.
2333 * puresize.h (PURESIZE) [MULTI_FRAME]: Incremented to 230000.
2335 * minibuf.c (Fdisplay_completion_list): Restore original buffer
2336 before running completion-setup-hook.
2338 * frame.c (Fdelete_frame): Don't initialize a Lisp_Object.
2339 Clean up line breaks.
2341 * process.c: Include unistd.h.
2342 (pty_max_bytes): New variable.
2343 (send_process): Send an eof after each pty_max_bytes bytes.
2345 * keyboard.c (menu_bar_items): When moving an item to the end,
2346 shift all the following ones forward one slot.
2348 1994-03-02 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2350 * xfns.c (Fx_list_fonts): Avoid confused increment of info.
2352 * syntax.c (Fforward_comment): Do the right thing at eob.
2354 1994-03-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2356 * keyboard.c (menu_bar_items): Accept old vector as arg.
2358 (menu_bar_one_keymap, menu_bar_item): Associated changes.
2359 (make_lispy_event): Use FRAME_MENU_BAR_LINES as vector.
2360 * frame.c (make_frame): Init menu_bar_items field to 0.
2361 * xdisp.c (update_menu_bar): Change call to menu_bar_items.
2362 (display_menu_bar): Use FRAME_MENU_BAR_LINES as vector.
2363 * xmenu.c (map_event_to_object, set_frame_menubar):
2364 Use FRAME_MENU_BAR_LINES as vector.
2366 1994-03-01 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2368 * s/aix3-2.h: Use -g with the native compiler.
2369 * s/aix3-2-5.h: New file. Use -O with the native compiler.
2371 1994-03-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2373 * lisp.h (struct handler): New field chosen_clause.
2374 * eval.c (Fsignal): Record the clause in chosen_clause.
2375 (Fcondition_case, internal_condition_case): Look there.
2376 (internal_condition_case_1): Look there.
2378 * fileio.c (Finsert_file_contents): If undo_list was t, leave it t.
2380 * alloc.c (memory_signal_data): No longer static.
2381 (syms_of_alloc): Stick Qerror onto memory_signal_data.
2382 * lisp.h (memory_signal_data): Declare it.
2383 * eval.c (Fsignal): If DATA is memory_signal_data, don't add to it.
2385 1994-02-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2387 * alloc.c (memory_full): Use new variable memory_signal_data with
2388 precomputed value instead of trying to build it after memory is
2391 1994-02-28 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
2393 * xmenu.c (xmenu_show): Test XtWindowToWidget before inserting into
2396 * xterm.c (XTread_socket): For case ClientMessage and
2397 Xatom_wm_delete_window, use x_any_window_to_frame.
2399 1994-02-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2401 * s/sol2-3.h (LD_SWITCH_SYSTEM): New definitions, with #undef.
2403 * insdel.c (del_range_1): New function.
2404 (del_range): Use it.
2405 * fileio.c (Finsert_file_contents): Use del_range_1.
2407 1994-02-26 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2409 * keyboard.c (Fsuspend_emacs): New variable cannot-suspend forces
2410 a subshell even if the system seems to support job control.
2411 * sysdep.c (sys_subshell): New function, split from sys_suspend.
2413 1994-02-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2415 * window.c (Fset_window_configuration): Allow for menu-bar-lines
2416 to have changed since the configuration was created.
2418 1994-02-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2420 * keyboard.c (Vsystem_key_alist): Renamed from Vvendor_key_alist.
2421 (syms_of_keyboard): Rename Lisp var to system-key-alist.
2423 1994-02-25 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2425 * buffer.h (OVERLAY_POSITION): Don't check which buffer it points to.
2427 * lisp.h: Delete extra backslash on last line of macro.
2429 * xdisp.c (display_text_line): Allow for invisible overlays in
2430 next_invisible lookahead.
2431 * indent.c (compute_motion): Likewise.
2433 1994-02-25 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2435 * widget.c (EmacsFrameSetCharSize): Set coordinates values to the
2438 * xterm.c (XTread_socket): For case ConfigureNotify, call
2439 x_any_window_to_frame.
2440 [USE_X_TOOLKIT]: Call XTranslateCoordinates for case ConfigureNotify
2441 when send_event is 0 and when the event is relative to toplevel widget.
2443 * widget.c (EmacsFrameSetCharSize): Call check_frame_size and update
2444 vertical_scroll_bar_extra.
2445 Call SET_FRAME_GARBAGED.
2447 1994-02-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2449 * lread.c (Fload): Cast the args to stat.
2451 1994-02-24 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
2453 * xdisp.c (try_window): Add #ifdef USE_TEXT_PROPERTIES around call
2454 to Fget_text_property.
2456 * textprop.c (Fget_char_property): New function.
2457 * buffer.c (sort_overlays): Allow for null window.
2458 * xdisp.c (try_window, display_text_line): Use Fget_char_property
2459 to test for invisibility.
2460 * indent.c (compute_motion, vmotion): Likewise.
2461 * dispnew.c (direct_output_forward_char): Likewise.
2463 1994-02-24 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2465 * xfns.c (x_window): Call XChangeWindowAttributes with the standard
2466 event set to make all these events reach the Emacs frame.
2468 1994-02-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2470 * xmenu.c (Fx_popup_menu): Allow t as position, meaning use mouse pos.
2472 * fns.c (Fy_or_n_p): Use a popup menu if reached via mouse command.
2473 (Fyes_or_no_p): Likewise.
2475 * unexelf.c (ELF_BSS_SECTION_NAME): New macro (config.h may override).
2478 1994-02-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2480 * buffer.c (Fkill_buffer): Call the Vkill_buffer_query_functions.
2481 (syms_of_buffer): Make Lisp var for kill-buffer-query-functions.
2483 1994-02-22 Karl Heuer (kwzh@geech.gnu.ai.mit.edu)
2485 * lisp.h: New variable Vdoc_directory.
2486 * doc.c (get_doc_string, Snarf_documentation): Use it.
2487 * callproc.c (syms_of_callproc, init_callproc_1): Initialize it.
2488 * paths.h.in: Define PATH_DOC for default doc-directory.
2490 1994-02-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2492 * keyboard.c (make_lispy_movement, make_lispy_event):
2493 In non-scrollbar mouse case, return coords in pixel units.
2495 * frame.c (Fmouse_position): Convert to glyph units.
2497 * xterm.c (construct_mouse_click): Don't convert to glyph units.
2498 (XTmouse_position): Don't convert to glyph units.
2499 * msdos.c (mouse_get_pos): Don't convert to glyph units.
2501 * fileio.c (Finsert_file_contents): If REPLACE, always do lseek.
2502 Exit main loop if INSERTED reaches TOTAL.
2504 1994-02-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2506 * xterm.c (XTmouse_position): Use x_any_window_to_frame.
2508 1994-02-22 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2510 * emacs.c: Move extern declarations to top of file.
2512 1994-02-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2514 * keyboard.c (make_lispy_event): For menu bar event in USE_X_TOOLKIT
2515 case, convert x position to glyphs after map_event_to_object.
2516 Call window_from_coordinates later on.
2518 * xmenu.c (menu_item_equiv_key): Cached equiv-key data is a sublist.
2519 * keymap.c (get_keyelt): Cached equiv-key data is now a sublist.
2521 * xterm.c (x_had_errors_p): New function.
2522 (construct_menu_click): Move function after pixel_to_glyph_coords.
2524 * xmenu.c: Most of file rewritten.
2525 (menu_items, menu_items_*): New variables.
2526 (MENU_ITEMS_*): New macros.
2527 (init_menu_items, discard_menu_items, push_menu_pane, push_menu_item)
2528 (finish_menu_items): New functions.
2529 (menu_item_enabled_p): New function.
2530 (keymap_panes, single_keymap_panes): Major rewrite; most args changed.
2531 (list_of_panes, list_of_items): Major rewrite; most args changed.
2532 (Fx_popup_menu): Major rewrite. Now independent of display mechanism.
2533 No more conditionals here.
2534 (set_menu_items, free_menu_items): Functions deleted.
2535 (xmenu_show): Both versions rewritten to work from menu_items
2536 and to do all the conditionalized things that were in Fx_popup_menu.
2537 (unread_menu_bar_button, other_menu_bar_item_p): New functions.
2538 (check_mouse_other_menu_bar): New function.
2540 * xterm.c [!USE_X_TOOLKIT] (x_any_window_to_frame):
2541 Define as x_window_to_frame.
2543 1994-02-20 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2545 * unexsunos4.c: Move config.h after system includes.
2547 * syswait.h [BSD]: #undef WCOREDUMP before defining it.
2549 1994-02-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2551 * frame.c (Fframe_visible_p): Do FRAME_SAMPLE_VISIBILITY first.
2553 * xterm.c (XTread_socket--cases KeyPress, EnterNotify, LeaveNotify)
2554 (cases FocusIn, FocusOut): Use x_any_window_to_frame.
2556 * xfns.c (x_window_to_frame): Add parens for clarity.
2558 * xmenu.c: Find and display keyboard equivalents of menu items.
2559 (menu_item_equiv_key): New function.
2560 (single_keymap_panes): Call it. Properly skip help-string if any.
2561 Rename item2 to item_string.
2563 (menu_item_equiv_key): Use either VECTORP or STRINGP, not both.
2565 * keymap.c (get_keyelt): Discard keyboard equivalents stored in a
2566 menu keymap element.
2568 1994-02-18 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2570 * widget.c (get_default_char_pixel_size): Clean up code.
2571 Remove code inside #if 0 directive.
2573 * xmenu.c (popup_selection_callback): Clean up code. Remove code inside
2575 (popup_down_callback): Likewise.
2577 1994-02-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2579 * fileio.c (restore_point_unwind): New function.
2580 (Finsert_file_contents): In REPLACE case, set point and restore it.
2582 * gnu.h (gnu_bits): Use unsigned char.
2584 * bitmaps/*.xbm: Use unsigned char, not char.
2586 * window.c (unshow_buffer): Unconditionally set last_window_start.
2588 1994-02-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2590 * window.c (Fdelete_other_windows): Don't call Frecenter;
2591 do it by hand and avoid setting w->force_start.
2593 * xterm.c (dumpglyphs): Try various alternatives for foreground color
2594 of a glyph with the cursor on it.
2596 * dosfns.c, msdos.c, widget.c: Use <...> for config.h.
2598 * fileio.c (Finsert_file_contents): New arg REPLACE.
2599 New feature to replace buffer contents with file contents.
2601 1994-02-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2603 * systty.h (EMACS_TTY_TABS_OK): Alternate definition if no TABDLY.
2605 * s/bsd4-2.h, s/dgux.h, s/rtu.h, s/umax.h (BSD_PGRPS): Defined.
2606 * s/netbsd.h, s/bsd386.h (BSD_PGRPS): Add #undef.
2607 * sysdep.c (init_sys_modes, reset_sys_modes): Test BSD_PGRPS.
2608 (narrow_foreground_group, widen_foreground_group): Define if BSD_PGRPS.
2610 * sysdep.c (child_setup_tty): Use IUCLC, OLCUC, NLDLY only if defined.
2612 * emacs.c (main): Test BSD_PGRPS, not BSD.
2614 * s/netbsd.h (TAB3): Defined.
2615 (NEED_ERRNO, NO_TERMIO, HAVE_TERMIOS, HAVE_UNION_WAIT): Defined.
2617 * sysdep.c (init_sys_modes): IEXTEN is in c_lflag, not c_iflag.
2619 * unexmips.c (unexec): Add cast to result of `sbrk'.
2621 1994-02-15 Chris Hanson (cph@klia.ai.mit.edu)
2623 * s/newsos5.h: Include usg5-4.h.
2624 (LIBS_SYSTEM, LINKER, START_FILES, LIB_STANDARD):
2625 Definitions moved here.
2627 * m/news-risc.h [NEWSOS5] (C_DEBUG_SWITCH, C_OPTIMIZE_SWITCH)
2628 (LD_SWITCH_MACHINE): Definitions moved here.
2630 * m/mips.h: NEWSOS5 conditional deleted.
2631 [NEWSOS5] (START_FILES, LIB_STANDARD, C_DEBUG_SWITCH)
2632 (C_OPTIMIZE_SWITCH, LD_SWITCH_MACHINE): Definitions moved away.
2634 1994-02-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2636 * xfns.c (Fx_parse_geometry): Don't call check_x.
2638 * sysdep.c (sys_write): If any bytes were written, return how many.
2640 * xterm.c (XTread_socket): Do not assume that select returning
2641 immediately with no events implies a hangup.
2643 1994-02-14 Karl Heuer (kwzh@geech.gnu.ai.mit.edu)
2645 * xterm.h (check_x): Declare it.
2646 * xfns.c (check_x): Make it global.
2647 (Fx_parse_geometry, Fx_list_fonts, Fx_close_current_connection):
2650 * xmenu.c (Fx_popup_menu): Likewise.
2651 * xselect.c (Fx_own_selection_internal, Fx_get_selection_internal,
2652 Fx_disown_selection_internal, Fx_rotate_cut_buffers_internal,
2653 Fx_selection_exists_p, Fx_get_cut_buffer_internal,
2654 Fx_store_cut_buffer_internal, Fx_selection_owner_p): Likewise.
2656 * indent.c (indented_beyond_p): New function.
2657 (compute_motion, vmotion): Use it to treat blank lines specially
2658 in selective display.
2659 * xdisp.c (try_window_id, display_text_line): Likewise.
2661 1994-02-13 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2663 * s/netbsd.h (BROKEN_START, TEXT_START): Don't define.
2664 (HAVE_TEXT_START): Define this instead.
2665 * sysdep.c (start_of_text): Don't define #ifdef HAVE_TEXT_START.
2667 1994-02-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2669 * xdisp.c (decode_mode_spec): Support %+.
2671 * keyboard.c (command_loop_1):
2672 On entry, set last_command to this_command.
2674 * term.c (term_init): If no `se', use `me';
2675 if no `me' either, don't use standout mode at all.
2677 1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2679 * Makefile.in.in (${libsrc}make-docfile): Don't pass ../arch-lib
2680 as target to submake.
2682 1994-02-11 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2684 * sysdep.c [USG]: Fix conditional includes.
2686 * m/convex.h, m/ibmps2-aix.h, m/ibmrs6000.h, m/tekxd88.h,
2687 s/386bsd.h, s/bsd386.h, s/dgux.h, s/irix3-3.h, s/linux.h,
2688 s/netbsd.h, s/usg5-4.h: Delete HAVE_SETSID; configure checks for
2691 * xrdb.c (gethomedir): Look at LOGNAME before USER.
2693 * editfns.c (Fuser_real_login_name): Doc fix.
2695 1994-02-11 Paul Eggert (eggert@twinsun.com)
2697 * editfns.c (init_editfns): Look at LOGNAME before USER.
2698 * fileio.c (Fsubstitute_in_file_name): Remove long-dead code
2699 that looked at USER before LOGNAME.
2701 1994-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2703 * buffer.c (syms_of_buffer): Doc fix.
2705 * xdisp.c (decode_mode_spec): Implement `P'.
2707 1994-02-11 Charles Hannum (mycroft@duality.gnu.ai.mit.edu)
2709 * s/netbsd.h (KERNEL_FILE, LDAV_SYMBOL): Undefine and leave them
2711 (LIBS_TERMCAP): Define. Native libtermcap is better than the Emacs
2712 version, and knows the correct path.
2713 (N_PAGSIZ, N_BSSADDR, N_TRELOFF): Don't redefine if they already
2714 exist (i.e. under NetBSD >0.9).
2716 1994-02-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2718 * s/netbsd.h (SYSV_SYSTEM_DIR): Define.
2719 (BROKEN_START, TEXT_START, START_FILES, UNEXEC, RUN_TIME_REMAP):
2720 Define to use unexsunos4.
2721 (N_PAGSIZ, N_BSSSADDR, N_TRELOFF): Define so unexsunos4.c compiles.
2723 1994-02-11 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2725 * xfns.c (x_set_menu_bar_lines) [USE_X_TOOLKIT]: Don't call
2726 XtDestroyWidget but free_frame_menubar.
2727 Undo previous changes.
2728 * xterm.c (x_destroy_window) [USE_X_TOOLKIT]: Call free_frame_menubar.
2729 * xmenu.c (free_frame_menubar) [USE_X_TOOLKIT]: New function to destroy
2730 the X Widget instance of the menubar.
2732 * widget.c (EmacsFrameResize): Don't call XTranslateCoordinates. Code
2735 * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Return Qnil when val is null.
2737 1994-02-11 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2739 * keyboard.c (Fexecute_extended_command): Copy this_command_keys
2740 as a vector, not a string.
2742 1994-02-10 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2744 * keyboard.c (syms_of_keyboard): Add a DEFVAR for command-hook-internal.
2745 (command_loop_1): Use it for post-command-hook.
2747 1994-02-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2749 * process.c (sys_siglist): Protect decl with #ifndef
2750 SYS_SIGLIST_DECLARED.
2751 * config.h.in: Add #undef SYS_SIGLIST_DECLARED.
2753 1994-02-10 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2755 * lread.c (read_filtered_event): Retry read_char after a buffer change.
2756 * keyboard.c (read_char, read_char_minibuf_menu_prompt,
2757 read_key_sequence): Likewise.
2759 * dispnew.c (buffer_posn_from_coords): Take hscroll into account.
2760 * window.c (Fpos_visible_in_window_p): Likewise.
2762 * editfns.c (Fmessage): Copy the text to be displayed into a
2765 1994-02-10 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2767 * xmenu.c (xmenu_show): Test again event.xmotion.x_root in the
2770 1994-02-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2772 * vmsdir.h: File renamed from dir.h.
2773 * ndir.h, fileio.c: Use new name vmsdir.h.
2775 1994-02-09 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2777 * alloc.c (Fgarbage_collect): Save and restore echo_area_glyphs_length.
2778 * fileio.c (Fdo_auto_save): Likewise.
2780 * buffer.c (Fkill_all_local_variables): Run change-major-mode-hook.
2782 * xterm.c (x_display_cursor, process_expose_from_menu): Block input.
2784 * editfns.c (difftm): Simplify return expression.
2786 * m/news.h (CRT0_DUMMIES): Definition deleted.
2788 * alloc.c (mark_object): Fetch obj from *objptr at loop, not at
2791 1994-02-09 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2793 * xmenu.c: Implement a Motif behavior for the menubar.
2794 Now, if you move the pointer on another menubar item while
2795 displaying the contents of a selected menubar item, the current
2796 pulldown menu is closed and the new one corresponding to the new
2797 pointed item is displayed.
2798 (xmenu_show) [USE_X_TOOLKIT]: Clean up code.
2799 Handle the MotionNotify events in the XEvent loop.
2801 1994-02-08 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2803 * xfaces.c (compute_char_face): Extract overlay-sorting code as a
2804 separate function, which is now in buffer.c.
2805 * buffer.c (sort_overlays): New function, extracted from xfaces.c.
2807 1994-02-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
2809 * print.c (print): If print_escapes_newlines, print '\f' as "\\f".
2810 (syms_of_print): Update docstring.
2812 1994-02-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2814 * process.c (Fprocess_kill_without_query): Doc fix.
2816 1994-02-07 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2818 * xterm.c (x_make_frame_invisible): Add USE_X_TOOLKIT conditional.
2820 1994-02-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2822 * xterm.c (x_set_window_size): New arg CHANGE_GRAVITY.
2823 (x_new_font): Pass CHANGE_GRAVITY arg to x_set_window_size.
2824 (x_wm_set_size_hint): New arg CHANGE_GRAVITY.
2825 (x_set_offset, x_set_window_size):
2826 Pass CHANGE_GRAVITY arg to x_set_window_size.
2827 * xfns.c (x_set_internal_border_width, x_set_vertical_scroll_bars):
2828 Pass CHANGE_GRAVITY arg to x_set_window_size.
2829 (Fx_create_frame): Pass CHANGE_GRAVITY arg to x_wm_set_size_hint.
2830 * frame.c (Fset_frame_height, Fset_frame_width, Fset_frame_size):
2831 Pass CHANGE_GRAVITY arg to x_set_window_size.
2833 * frame.c (other_visible_frames):
2834 New function; code taken from Fdelete_frame.
2835 (Fdelete_frame): Use it.
2836 (Fmake_frame_invisible): Use it. New arg FORCE.
2837 * xfns.c (x_set_visibility): Pass new arg to Fmake_frame_invisible.
2839 * xdisp.c (fix_glyph): New function.
2840 (display_text_line, display_string): Use fix_glyph.
2842 * xfaces.c (init_frame_faces): Clear FRAME_N_COMPUTED_FACES
2843 and FRAME_SIZE_COMPUTED_FACES.
2845 1994-02-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2847 * xdisp.c (copy_rope): Function deleted.
2848 (copy_part_of_rope): Merge the glyph's face using compute_glyph_face.
2849 Take frame as additional arg.
2850 (display_text_line): Use copy_part_of_rope always, not copy_rope.
2851 Pass the frame as arg.
2852 (display_string): Likewise.
2854 * xfaces.c (compute_glyph_face): New arg CURRENT_FACE
2855 specifies face to merge with.
2857 * emacs.c (main) [AIX]: Don't handle signal 20, 21 or 22.
2858 Call signal 24 by name (SIGXCPU).
2860 * eval.c (internal_condition_case_1): New function.
2861 * lisp.h (internal_condition_case_1): Declared.
2862 * keyboard.c (menu_bar_item): Use internal_condition_case_1.
2863 (menu_bar_item_1): New function.
2864 * xmenu.c (single_keymap_panes): Use internal_condition_case_1.
2865 (single_keymap_panes_1): New function.
2867 1994-02-04 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2869 * intervals.c (verify_interval_modification): When checking
2870 read-only, allow for the case that stickiness might be t instead
2873 * data.c (fmod): Implement it on systems where it's missing, using
2876 1994-02-04 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2878 * xmenu.c (xmenu_show) [USE_X_TOOLKIT]: Remove the #if 0 directives
2879 and reverse one to avoid the flickering of the menubar.
2881 1994-02-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2883 * keymap.c (Fwhere_is_internal): Take just one keymap arg.
2884 (where_is_string): Pass Voverriding_local_map for that arg.
2885 * doc.c (Fsubstitute_command_keys): Pass keymap as that arg
2886 to Fwhere_is_internal. Init keymap from Voverriding_local_map.
2888 1994-02-03 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2890 * intervals.c (merge_properties_sticky): Preserve original order
2893 1994-02-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2895 * s/hpux8.h (X_IO_BUG): Defined.
2897 * fileio.c (Fwrite_region):
2898 If FILENAME has no handler, see if VISIT has one.
2900 * search.c (scan_buffer): New arg ALLOW_QUIT.
2901 (find_next_newline): Pass new arg.
2902 * xdisp.c (display_count_lines): Pass new arg to scan_buffer.
2903 * syntax.c (find_defun_start): Pass new arg to scan_buffer.
2904 * cmds.c (Fforward_line): Pass new arg to scan_buffer.
2906 1994-02-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2908 * xterm.c (XTread_socket): Add X_IO_BUG conditional.
2910 * xdisp.c (display_menu_bar): Pass explicit max arg to display_string.
2911 (display_string): New arg OBEY_WINDOW_WIDTH. All callers changed.
2913 1994-02-02 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2915 * xterm.c (x_iconify_frame): Fix misbalanced
2916 BLOCK_INPUT/UNBLOCK_INPUT.
2918 * xdisp.c (try_window_id): Don't pass value beyond ZV to
2920 * window.c (Fpos_visible_in_window_p): Return nil if POS > ZV.
2922 * sysdep.c (get_system_name): Remove restriction on hostname size.
2923 * lisp.h (get_system_name): Declared.
2924 * xterm.c (x_term_init): Use get_system_name instead of gethostname.
2925 * xrdb.c (x_get_customization_string): Use get_system_name instead
2928 1994-02-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2930 * keyboard.c (kbd_buffer_get_event): Pass 1 to read_avail_input.
2932 1994-02-01 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2934 * config.h.in (HAVE_FMOD): Add another #undef.
2935 * data.c (Fmod): Use HAVE_FMOD.
2937 1994-02-01 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2939 * xfns.c (x_set_menu_bar_lines): Test also menubar_widget before
2940 calling XtDestroyWidget.
2942 1994-02-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2944 * xterm.c (dumpglyphs): Don't crash for invalid face code.
2946 1994-01-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2948 * undo.c (record_first_change): Check for buffer-undo-list = t.
2949 Make an undo boundary if appropriate. Set last_undo_buffer.
2950 (record_property_change): Use BUFFER, not current_buffer,
2951 when testing undo_list.
2953 1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2955 * widget.c: Don't declare arg types in decls or fn definitions.
2957 * syntax.h (SYNTAX_MATCH, SYNTAX): Fix non-GNUC definitions.
2959 * widget.h (EmacsFrameSetCharSize): Don't declare arg types.
2961 * Makefile.in.in (configuration): Change # comment to C comment.
2963 1994-01-29 Karl Heuer (kwzh@mole.gnu.ai.mit.edu)
2965 * keymap.c (current_minor_maps): Scale by sizeof when allocating
2968 * buffer.c (Fkill_all_local_variables): Follow symbol forwarding.
2970 1994-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2972 * callproc.c: Include stdio.h.
2973 (init_callproc): Put non-ex-dir warnings on stderr.
2975 * lread.c (init_lread): Put non-ex-dir warnings on stderr.
2977 1994-01-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2979 * lread.c (init_lread): Put non-ex-dir warnings on stderr.
2980 * callproc.c: Include stdio.h.
2981 (init_callproc): Put non-ex-dir warnings on stderr.
2983 1994-01-28 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2985 * xterm.c (x_set_window_size): Add USE_X_TOOLKIT conditional. Call
2986 EmacsFrameSetCharSize and return.
2988 * xterm.c (x_term_init): Cast to (char **) before assignment to argv.
2990 1994-01-27 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
2992 * keyboard.c (make_lispy_event): Add USE_X_TOOLKIT conditional and
2993 test FRAME_EXTERNAL_MENU_BAR.
2994 (map_event_to_object) [USE_X_TOOLKIT]: Declare and use it.
2996 1994-01-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
2998 * xterm.c (x_set_mouse_position): Don't raise the frame.
3000 * s/sunos4-0.h [__GNUC__] (MKDIR_PROTOTYPE): Defined.
3002 * sysdep.c (mkdir): Use MKDIR_PROTOTYPE if defined.
3004 1994-01-26 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
3006 * xterm.h [USE_X_TOOLKIT]: Don't include Xaw/Box.h.
3008 * xdisp.c (update_menu_bar): Add USE_X_TOOLKIT conditional and test
3009 FRAME_EXTERNAL_MENU_BAR.
3011 1994-01-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3013 * Makefile.in.in (widgetobj): New variable.
3014 (otherobj): Use widgetobj.
3015 (XOBJ): Undo previous change.
3017 1994-01-25 Francesco Potortì (pot@cnuce.cnr.it)
3019 * m/delta.h (HAVE_BCOPY): undef'd for efficiency.
3020 (bcopy, bzero, bcmp): define'd for efficiency.
3021 (GAP_USE_BCOPY, BCOPY_DOWNWARD_SAFE): define'd for GHc compiler.
3023 1994-01-24 Francesco Potortì (pot@cnuce.cnr.it)
3025 * m/delta.h (HAVE_RANDOM, BROKEN_FIONREAD): Defined if X is used.
3026 (HAVE_XSCREENNUMBEROFSCREEN): Defined if X is used.
3027 (LIB_X11_LIB, LIBX11_SYSTEM): Override only if X is used.
3028 (USG_SHARED_LIBRARIES): Undefine only if X is used.
3030 1994-01-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3032 * fns.c (Fconcat): Doc fix.
3034 1994-01-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3036 * keyboard.c (read_key_sequence): Properly gcpro fkey_map while
3039 * fns.c (Fassq, Fassoc): Doc fixes.
3041 * data.c (Faset): Doc fix.
3043 1994-01-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3045 * xdisp.c (display_menu_bar): Add USE_X_TOOLKIT conditional.
3046 (redisplay_window) [USE_X_TOOLKIT]: Test FRAME_EXTERNAL_MENU_BAR.
3047 (update_menu_bar) [USE_X_TOOLKIT]: Call set_frame_menubar.
3049 * widget.c: Include X11/ObjectP.h.
3051 * keyboard.c (syms_of_keyboard): New Lisp var command-hook-internal.
3052 (command_loop_1): Use it when running the command hooks.
3054 * Makefile.in.in (LWLIB_OPTIONS): Define if not defined.
3055 (LIBXT): New variable.
3057 (widget.o): New target.
3058 (XOBJ) [USE_X_TOOLKIT]: Add widget.o.
3060 * xmenu.c: Find lwlib.h and xlwmenuP.h in ../lwlib.
3061 * xfns.c: Find lwlib.h in ../lwlib.
3063 * widgetprv.h: Renamed from widgetP.h.
3065 * Makefile.in.in (lwlibdir): New variable.
3066 ($(OLDXMENU)) [USE_X_TOOLKIT]: Alternate rule.
3067 (OLDXMENU) [USE_X_TOOLKIT]: Alternate value.
3068 (really-lwlib): New rule.
3070 * xterm.h [USE_X_TOOLKIT]: Include StringDefs.h, IntrinsicP.h,
3071 CoreP.h, StringDefs.h, Xaw/Box.h.
3072 * xterm.c: Don't include them.
3074 * xrdb.c (search_magic_path): Fix logic testing for empty path element.
3076 1994-01-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3078 * xterm.c (x_wm_set_size_hint): Swap southeast and northwest.
3080 * xrdb.c (S_ISDIR): Define if not defined.
3081 (file_p): Use S_ISDIR.
3083 * xterm.c (XTupdate_end): No need to test updating_frame.
3084 * term.c (update_end): Clear updating_frame before calling hook.
3086 * fileio.c (double_dollars): New function.
3087 (Fread_file_name_internal): Use double_dollars.
3088 (Fread_file_name): Likewise.
3090 * textprop.c (Fprevious_property_change): Move back at least 1 char.
3091 (Fprevious_single_property_change): Likewise.
3092 * textprop.c: Doc fixes.
3094 * xfns.c (store_class_hints): Function deleted.
3096 * intervals.c (graft_intervals_into_buffer): Fix one-off
3097 comparing lengths of over and under.
3099 * keyboard.c (read_key_sequence): Don't call echo_truncate
3100 the first time through.
3102 1994-01-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3104 * s/sunos4-1-3.h: Add #undef SYSTEM_MALLOC.
3106 * xfns.c (Fx_create_frame): Bind x-resource-name to explicit title.
3107 (Qx_resource_name): Declared.
3108 (syms_of_xfns): Set up Qx_resource_name.
3110 * xmenu.c: Reshuffle functions; put new ones in #ifdef USE_X_TOOLKIT.
3111 (Fx_popup_menu): Add USE_X_TOOLKIT conditional around new decls.
3113 * xterm.c: Put new functions in #ifdef USE_X_TOOLKIT.
3115 * xdisp.c (truncate_echo_area): New function.
3116 * keyboard.c (echo_truncate): Call truncate_echo_area.
3118 1994-01-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3120 * config.h.in: Add #undef for USE_X_TOOLKIT.
3122 * xfns.c (x_window): Fix error message.
3124 1993-01-18 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
3126 Support use of X toolkit.
3127 * (USE_X_TOOLKIT): New macro to conditionalize the use of Xt.
3128 * widget.c, widgetP.h, widget.h: New files.
3129 * frame.h (struct frame): New field external_menu_bar.
3130 (FRAME_EXTERNAL_MENU_BAR): New macro.
3131 * xterm.h (struct x_display): New fields widget, column_widget,
3132 edit_widget, menubar_widget.
3133 (x_any_window_to_frame): Declared.
3134 * lisp.h (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID):
3136 * xfns.c (x_any_window_to_frame): New function.
3137 (x_window_to_frame, x_window): Handle USE_X_TOOLKIT.
3138 (x_set_icon_type, x_set_menu_bar_lines, x_set_name): Likewise.
3139 (store_class_hints, hack_wm_protocols): New function.
3140 * xmenu.c (string_width): New function.
3141 (event_is_in_menu_item, map_event_to_object): Likewise.
3142 (set_menu_items, free_menu_items, popup_selection_callback): Likewise.
3143 (popup_down_callback, free_menubar_widget_value_tree): Likewise.
3144 (update_one_frame_psheets, set_frame_menubar): Likewise.
3145 (Fx_popup_menu, xmenu_show): Handle USE_X_TOOLKIT.
3146 * xterm.c (construct_mouse_click): New function.
3147 (process_expose_from_menu): Likewise.
3148 (XTread_socket, x_set_offset, x_set_window_size): Handle USE_X_TOOLKIT.
3149 (x_raise_frame, x_lower_frame, x_make_frame_visible): Likewise.
3150 (x_iconify_frame, x_destroy_window, x_wm_set_window_state): Likewise.
3151 (x_term_init): Likewise.
3153 * xmenu.c (dispatch_dummy_expose): New function.
3154 (XMenu_xpos, XMenu_ypos): Change the values of the constant assignment.
3155 (xmenu_show): Change the way to make the menubar to redraw itself by
3156 generating a dummy expose event.
3158 * xterm.c (x_term_init): Pass argv, argc to XtAppInitialize with the
3161 1994-01-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3163 * s/linux.h: Don't include stdio.h.
3165 * dispnew.c: Include stdio.h before config.h.
3167 * emacs.c (init_cmdargs): Set Vinstallation_directory.
3168 (syms_of_emacs): staticpro it.
3169 * lisp.h (Vinstallation_directory): Declared.
3170 * lread.c (init_lread): Use Vinstallation_directory.
3171 * callproc.c (init_callproc): Use Vinstallation_directory.
3173 * fileio.c (Ffile_symlink_p): Doc fix.
3175 * keyboard.c (Voverriding_local_map): New variable.
3176 (syms_of_keyboard): Set up Lisp variable.
3177 (read_key_sequence, menu_bar_items): Handle Voverriding_local_map.
3179 * keymap.c (Fkey_binding): Handle Voverriding_local_map.
3180 (describe_buffer_bindings): Likewise.
3182 1994-01-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3184 * config.h.in (LD_SWITCH_X_SITE_AUX): Add #undef.
3185 * s/sol2.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX.
3187 * floatfns.c (Fffloor, Ffceil, Ffround, Fftruncate): New functions.
3188 (syms_of_floatfns): Turn them on.
3190 1994-01-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3192 * keyboard.c (command_loop_1): If there's an error in the
3193 post-command-hook or pre-command-hook, leave that hook nil.
3195 * s/sco4.h (BSTRING): Don't define it here.
3197 1994-01-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3199 * Makefile.in.in (xterm.o): Depends on syssignal.h.
3201 1994-01-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3203 * sysdep.c (sys_siglist) [sun]: Additional Sun-specific signal names.
3205 1993-01-12 Thomas Horsley (tahorsley@csd.harris.com)
3207 * cxux-crt0.s: New file.
3209 * emacs.c (main) [USG5 and INTERRUPT_INPUT]: Call setpgrp.
3211 * m/nh3000.h: New file for the Night Hawk 3000 series hardware defs.
3213 * m/nh4000.h: New file for the Night Hawk 4000 & 5000 series hardware.
3215 * s/cxux.h: New file for the CX/UX operating system used by Night
3218 * s/cxux7.h: New file.
3220 * sysdep.c (request_sigio, unrequest_sigio): Add new versions of
3221 these routines for the CX/UX operating system.
3222 (sys_signal) [SA_RESTART]: Set this flag.
3224 * xterm.c: Include syssignal.h.
3226 1994-01-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3228 * process.c (sigchld_handler, status_message):
3229 Handle a NULL in sys_siglist.
3231 1994-01-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3233 * buffer.c (syms_of_buffer): Don't do (put 'erase-buffer 'disabled t).
3234 (keys_of_buffer): Do it here instead.
3236 1994-01-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3238 * lread.c (Fload): Record descriptor numbers on load_descriptor_list.
3239 (load_descriptor_unwind, close_load_descs): New function.
3240 (syms_of_lread): Init and staticpro load_descriptor_list.
3241 (init_lread): Clear load_descriptor_list.
3243 * callproc.c (child_setup): Call close_load_descs.
3245 * eval.c (Fcondition_case): Allow a list of condition names
3247 (find_handler_clause): Likewise.
3248 (Fsignal): Rename 1st arg to error_symbol.
3249 (Fcondition_case): Doc fix.
3251 * process.c (read_process_output): Supply second arg to unbind_to.
3252 (exec_sentinel): Likewise.
3254 1994-01-11 Andy Seaborne (afs@hplb.hpl.hp.com)
3256 * keyboard.c (read_char_x_menu_prompt, read_char_minibuf_menu_prompt):
3257 New functions made by dividing up read_char_menu_prompt.
3258 (read_char): Call read_char_minibuffer_menu_prompt before the sit_for
3259 if X menus are not going to be used.
3260 (read_char_minibuf_menu_prompt): Correct access to keymaps for
3261 menus when not using X menus. Only store character read in a keyboard
3262 macro if it is not the menu help character.
3264 1994-01-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3266 * process.c (create_process): Set line discipline only if pty_flag.
3268 * search.c (set_search_regs): New subroutine.
3269 (search_buffer): Use set_search_regs.
3270 Record beginning and end after matching null string.
3272 1994-01-09 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3274 * mem-limits.h: Include <sys/types.h> before <sys/resource.h>.
3276 * process.c: Don't declare sys_nerr. Don't declare sys_errlist
3277 unless #ifdef VMS. Declare strerror instead.
3278 (wait_reading_process_input): Call strerror instead of using
3281 1994-01-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3283 * xfns.c (x_sync): Block input.
3285 * buffer.h (struct buffer): New field auto_save_failure_time.
3287 * fileio.c (Fdo_auto_save): If auto save times out,
3288 don't try again for 20 minutes.
3289 (Fclear_buffer_auto_save_failure): New function.
3290 (Fset_buffer_auto_saved): Clear auto_save_failure_time.
3292 * xfns.c (x_sync): New function.
3293 * frame.c (Fdelete_frame): Call x_sync.
3295 1994-01-09 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3297 * sysdep.c: Restore big block of #ifdef and #include lines for
3298 fcntl.h and friends, apparently accidentally removed in revision
3299 1.70 (Jan 5 changes).
3301 1994-01-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3303 * callproc.c (child_setup): Don't declare PID `register'; we later
3306 * config.h.in: Add #undef HAVE_STRERROR.
3307 * sysdep.c [! VMS]: Don't declare sys_errlist here.
3308 [! HAVE_STRERROR] (strerror): New function.
3309 (dup2): Use strerror instead of sys_errlist.
3310 * fileio.c: Don't declare sys_errlist; declare strerror instead.
3311 (err_str): Macro removed.
3312 (Finsert_file_contents, Fwrite_region): Call strerror instead of
3314 (report_file_error): Call strerror instead of using sys_errlist.
3315 * emacs.c (main): Call strerror instead of using sys_errlist.
3316 * callproc.c: Don't declare sys_errlist; declare strerror instead.
3317 (relocate_fd): Call strerror instead of using sys_errlist.
3318 * unexenix.c: Don't declare sys_errlist; declare strerror instead.
3319 (fatal_unexec): Call strerror instead of using sys_errlist.
3320 * unexmips.c: Likewise.
3322 1994-01-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3324 * frame.c (Fdelete_frame): Do FRAME_SAMPLE_VISIBILITY before
3325 testing visibility of a frame.
3327 * emacs.c (main): Don't call setpgrp if !initialized.
3329 * Makefile.in.in (${etc}DOC): Put back ${lisp} accidentally deleted.
3331 * keymap.c (describe_map_tree): New arg NOMENU.
3332 (describe_buffer_bindings): Pass new arg.
3333 * doc.c (Fsubstitute_command_keys): Pass new arg to describe_map_tree.
3335 1994-01-08 Morten Welinder (terra@diku.dk)
3337 * keyboard.c (interrupt_signal) [MSDOS]: Write explicit CRs since
3338 stdout has been made binary. Start at the top of the screen since
3339 the internal terminal otherwise will write "below the screen."
3341 1994-01-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3343 * Makefile.in.in (emacs): Don't run inc-vers.el.
3345 * config.h.in: Handle HAVE_BCMP.
3346 (BSTRING): Don't define unless HAVE_BCMP.
3348 1994-01-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3350 * s/msdos.h (getppid): Define as macro.
3352 * dired.c (DIRENTRY_NONEMPTY): New macro; two definitions.
3353 (Fdirectory_files, file_name_completion): Use it.
3355 1993-01-05 Morten Welinder (terra@diku.dk)
3357 * buffer.c, buffer.h [MSDOS]: New buffer-local variable:
3358 buffer-file-type to handle DOS newlines.
3360 * callproc.c (syms_of_callproc) [MSDOS]: New lisp variable:
3362 (init_callproc) [MSDOS]: Initialize binary-process.
3363 [MSDOS]: Declare binary-process.
3364 [MSDOS]: Include <fcntl.h>, <sys/stat.h>, <sys/param.h>,
3365 and <errno.h> needed for the next changes.
3366 (Fcall_process) [MSDOS]: Create temporary file for process output.
3367 Run the subprocess using `run_msdos_command' instead of forking.
3368 Arrange for cleanup to erase temporary file.
3369 (Fcall_process) [not subprocesses]: Barf if zero buffer argument.
3370 (call_process_cleanup) [MSDOS]: Close and erase temporary file
3371 instead of the pid-stuff.
3372 (Fcall_process_region) [MSDOS]: Create temporary file in $TMP or
3374 (Fchild_setup) [MSDOS]: #if 0, as it is not used.
3376 * cmds.c (keys_of_cmds) [MSDOS]: Chars 0200 to 0237 self-insert.
3378 * data.c (Frem) [MSDOS]: Use `fmod', not `drem'. Put in config.h?
3380 * dired.c [MSDOS]: #include <dirent.h> instead of <sys/dir.h>. Avoid
3381 some external definitions.
3382 (Ffile_attributes) [MSDOS]: Set execute bits from file name.
3383 (Ffile_name_all_completions) [FILE_SYSTEM_CASE]: Convert
3384 case of file name as as indicated by conditional.
3386 * emacs.c (main) [MSDOS]: Call init_environment. Set file types to
3387 binary for all files. Call init_dosfns.
3388 (fatal_error_signal) [MSDOS]: Uncomment sigblock.
3390 * fileio.c [MSDOS]: #include "msdos.h" and <sys/param.h> needed for
3391 the following changes.
3392 (Ffile_name_directory, Fexpand_file_name) [FILE_SYSTEM_CASE]: Apply
3393 case conversion if defined.
3394 (Ffile_name_directory, Ffile_name_nondirectory, file_name_as_directory,
3395 directory_file_name, Fexpand_file_name, Fsubstitute_in_file_name,
3396 expand_and_dir_to_file) [MSDOS]: Drive letter support.
3397 (Fexpand_file_name) [MSDOS]: Support for multiple default directories.
3398 (Ffile_writeable_p) [MSDOS]: Don't call access with file name ending
3400 (Finsert_file_contents) [MSDOS]: Determine file type by name (call
3401 find-buffer-file-type) and change CR+LF to LF if it is a text file.
3402 (Fwrite_region) [MSDOS]: Use text/binary mode as specified by
3404 (syms_of_fileio) [MSDOS]: Set Qfind_buffer_file_type.
3405 (Fsubstitute_in_file_name) [MSDOS]: Ignore case in environment
3408 * floatfns.c [MSDOS]: Don't define HAVE_MATHERR.
3410 * keyboard.c [MSDOS]: #include <dos.h> and <time.h>, but not
3412 (read_avail_input) [MSDOS]: Work around `ioctl'. Also read through
3413 dos_keyread for better keyboard support.
3414 (interrupt_signal) [MSDOS]: Don't claim we can core dump.
3415 (kbd_buffer_store_event): Cast a pointer to avoid a compiler warning.
3417 * lread.c [MSDOS]: Use text mode for all files but ".elc" files.
3418 (complete_file_name) [MSDOS]: Drive letter support.
3420 * mem-limits.h [MSDOS] (get_lim_data): Use go32 call.
3422 * sysdep.c [MSDOS]: #include <dos.h>, "dosfns.h", "msdos.h", and
3423 <sys/param.h> needed for the following changes, but not <sys/ioctl.h>.
3424 (discard_tty_input) [MSDOS]: Do it by reading till no more keys
3426 (init_baud_rate) [MSDOS]: Assume highest possible speed.
3427 (sys_suspend) [MSDOS]: Save default directory. Call via system, not
3429 (emacs_get_tty, emacs_set_tty) [MSDOS]: Don't do anything.
3430 (init_sys_modes) [MSDOS]: Use raw mode.
3431 (get_frame_size) [MSDOS]: Get from bios.
3432 (reset_sys_modes) [MSDOS]: Back to cooked mode.
3433 (start_of_text) [MSDOS]: Reference _tstart.
3434 (select) [MSDOS]: Don't use signals, use sleeping.
3435 (init_sys_modes) [MSDOS]: Initialize internal terminal.
3437 * systty.h [MSDOS]: Don't #include <sgtty.h>. We haven't got it.
3438 Declare dummy main field. Don't ever use TABs.
3440 * termcap.c (tgetent) [INTERNAL_TERMINAL]: Fake internal terminal
3441 without reading any files.
3442 (valid_file_name, tgetent) [MSDOS]: Drive letter support.
3443 (tgetent) [MSDOS]: Use text mode for database.
3445 * unexec.c [MSDOS]: Don't #include <a.out.h>, but use other headers.
3446 (make_hdr) [MSDOS]: Cast a pointer for bzero.
3447 (write_segment) [EFAULT]: Check for before using.
3448 (adjust_lnnoptrs) [MSDOS]: Use provided descriptor.
3449 (adjust_lnnoptrs): Return 0 if ok.
3451 * xdisp.c (decode_mode_spec) [MSDOS]: Let 't' expand to 'T' for
3452 text mode or 'B' for binary mode.
3453 (decode_mode_spec) [not subprocesses]: Don't access Fprocess_status.
3455 * s/msdos.h, m/dos386.h: New files (for MSDOS).
3456 * dosfns.c, dosfns.h: New files (for MSDOS).
3457 * msdos.c, msdos.h: New files (for MSDOS).
3459 1994-01-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3461 * s/sunos4-1.h (SUNOS_LOCALTIME_BUG): #if 0'd.
3463 * print.c (strout, printchar): Use proper frame for minibuffer.
3465 * keyboard.c (read_avail_input): Args to `kill' were backwards.
3466 (kbd_buffer_get_event): If deleting last frame, call Fkill_emacs.
3468 * fns.c (Fmapconcat): Doc fix.
3470 * s/sco4.h (bcopy, bzero, bcmp): Defined.
3472 1994-01-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3474 * xfns.c (Fx_list_fonts): Don't fail to init `tail'.
3476 1994-01-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3478 * buffer.c: Don't include syntax.h.
3479 * Makefile.in.in (buffer.o): Don't depend on syntax.h.
3481 * syntax.h (enum syntaxcode): Add Sinherit.
3482 (RAW_SYNTAX, RAW_SYNTAX_MATCH, SYNTAX_CHOOSE_TABLE): New macros.
3483 (SYNTAX, SYNTAX_MATCH, SYNTAX_COMSTART_FIRST, SYNTAX_COMSTART_SECOND)
3484 (SYNTAX_COMEND_FIRST, SYNTAX_COMEND_SECOND, SYNTAX_PREFIX)
3485 (SYNTAX_COMMENT_STYLE): Handle Sinherit.
3486 Alternative definitions if __GNUC__.
3488 * syntax.c (describe_syntax): Handle Sinherit.
3489 (syntax_code_spec, syntax_spec_code): Add entry for @ and Sinherit.
3491 * Makefile.in.in (temacs): Delete redundant use of LDFLAGS.
3493 1994-01-02 Ulrich Mueller (ulm@vsnhd1.cern.ch)
3495 * sysdep.c (get_system_name): If the official name of the host is
3496 not a fully qualified domain name, then try to find one in the
3497 list of alternate names.
3499 1994-01-02 Rick Sladkey (jrs@world.std.com)
3501 * intervals.h (NULL_RIGHT_CHILD, NULL_LEFT_CHILD):
3502 Assume children must be intervals, never strings or buffers.
3504 * intervals.c (rotate_right, rotate_left): Simplify
3505 total_length calculation. Minimize pointer dereferencing.
3506 (balance_an_interval): Remove recursive rebalancing.
3507 Rebalance precisely when imbalanced. If a rotation is done,
3508 rebalance only the node which may have become unbalanced.
3509 Iterate until the current node is balanced.
3510 (balance_possible_root_interval): New function.
3511 (balance_intervals): Move the iteration into rebalance_an_interval.
3512 (balance_intervals_internal): New subroutine of balance_intervals.
3513 (split_interval_right, split_interval_left): Speed up by
3514 not checking LEAF_INTERVAL_P.
3515 (split_interval_right, split_interval_left, find_interval,
3516 adjust_intervals_for_insertion, graft_intervals_into_buffer):
3517 Add dynamic rebalancing anywhere a node may become unbalanced.
3518 (graft_intervals_into_buffer, copy_intervals): No longer
3519 any need to do a full rebalance as the tree stays balanced.
3521 1994-01-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3523 * fileio.c (Fwrite_region): Don't change START and END from nil
3524 until after checking for a magic handler.
3526 * .gdbinit: Delete `show env TERMCAP'.
3528 * process.c (read_process_output): Use clip_to_bounds when moving
3529 to the process marker.
3531 * keyboard.c (modify_event_symbol): New arg NAME_ALIST.
3532 Allow SYMBOL_TABLE to be an alist.
3533 (Vvendor_key_alist): New variable.
3534 (syms_of_keyboard): Initialize it.
3535 (make_lispy_event): Handle vendor-specific keysyms.
3536 (lispy_function_keys): Delete `remove' and th HP keysyms.
3538 * xterm.c (XTread_socket): temp_buffer and temp_index deleted.
3539 Put all vendor-specific keys into the buffer.
3540 (x_is_vendor_fkey): Function deleted.
3541 (XTread_socket): Don't call it.
3543 * Makefile.in.in (SOME_MACHINE_OBJECTS): New var.
3544 (${etc}DOC): Use SOME_MACHINE_OBJECTS,
3545 not OBJECTS_MACHINE or OBJECTS_SYSTEM.
3546 Don't depend on SOME_MACHINE_OBJECTS.
3548 * dired.c (file_name_completion_stat): If have symlinks, use lstat.
3550 1993-12-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3552 * buffer.c (Qget_file_buffer): New variable.
3553 (syms_of_buffer): Set up Qget_file_buffer.
3554 (Fget_file_buffer): For magic file names, run the handler.
3556 * fileio.c (Finsert_file_contents): Don't run after change hook
3558 Avoid setting modtime or buffer-file-name field if ran a handler.
3561 * s/linux.h (PENDING_OUTPUT_COUNT): Two alternate definitions
3562 for different versions of stdio.h.
3564 1993-12-30 Morten Welinder (terra@diku.dk)
3566 * frame.c: Always include termhooks.h.
3567 [! MULTI_FRAME] (Fmouse_position): New definition.
3568 [! MULTI_FRAME] (syms_of_frame): Add mouse-position.
3570 1993-12-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3572 * doc.c (Fsubstitute_command_keys): Fix previous change.
3574 1993-12-30 Lawrence R. Dodd (dodd@roebling.poly.edu)
3576 * minibuf.c (read_from_minibuffer): Rename arg initial_input
3577 to initial_contents.
3579 1993-12-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3581 * editfns.c (Femacs_pid): New function.
3582 (syms_of_editfns): Define it for Lisp.
3584 * keyboard.c (read_avail_input): Turn O_NDELAY off on DGUX as on USG.
3586 * minibuf.c (Fall_completions): Allow completions that start with space
3587 if the input starts with space.
3589 * Makefile.in.in (LDFLAGS): Define as empty.
3590 (ALL_LDFLAGS): Define as LDFLAGS used to be defined.
3591 (temacs): Use ALL_LDFLAGS.
3593 * xfns.c (Fx_create_frame): Add to Vframe_list before making visible.
3595 1993-12-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3597 * keymap.c (describe_command): If binding is a kbd macro, say so.
3599 1993-12-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3601 * emacs.c (main) [AIX]: Call putenv.
3603 * s/linux.h (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Defined.
3605 * keyboard.c (lispy_accent_codes): Cope if an XK symbol is undefined.
3606 (make_lispy_event): Define i.
3608 * termhooks.h (struct input_event): FIx typo in previous change.
3610 * xterm.c (XTflash): Use EMACS_GET_TIME.
3611 (XTread_socket): Make proper junk values to pass to select.
3613 1993-12-25 Jerry Frain (jerry.frain@tivoli.com)
3615 * s/usg5-4.h (bcopy): Use memmove instead of memcpy.
3617 * systime.h (EMACS_GET_TIME) [USG5_4]: Give gettimeofday just one arg.
3619 1993-12-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3621 * alloc.c (Fmemory_limit): No longer interactive.
3623 1993-12-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3625 * keyboard.c (command_loop_1): Test of whether disp tab elt
3626 was a vector was backwards.
3628 * fileio.c (Fwrite_region): If handler, don't mess with modtime.
3629 (Finsert_file_contents): Likewise.
3631 * config.h.in: Add #undef HAVE_SETSID.
3633 * process.c (create_process) [NTTYDISC]: Set the tty line discipline.
3635 * callproc.c: Include systty.h.
3636 (child_setup): Use EMACS_SET_TTY_PGRP.
3637 * Makefile.in.in (callproc.o): Depend on systty.h and syssignal.h.
3639 * xdisp.c (redisplay_window): Before altering lpoint,
3640 make sure the buffer it pertains to is the one being displayed.
3642 * syntax.c (Fmodify_syntax_entry): Doc fix.
3644 1993-12-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3646 * process.c (Fopen_network_stream): Turn off SIGIO while connecting.
3648 1993-12-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3650 * keyboard.c (lispy_accent_codes): New variable.
3651 (make_lispy_event): Use that to handle lots of dead accent keys.
3653 * xterm.c (XTread_socket): Handle a bunch more dead keys.
3655 1993-12-22 Francesco Potortì (pot@cnuce.cnr.it)
3657 * m/delta.h (BROKEN_CLOSEDIR): Added because closedir is interruptible.
3658 (HAVE_UNISTD_H): Deleted because configure takes care of it.
3659 (C_SWITCH_MACHINE): Added optimization options for gnu cc.
3661 1993-12-17 Mike Long (mike.long@analog.com)
3663 * s/vms.h (TERMCAP_NAME): Defined.
3664 * s/netbsd.h (TERMCAP_NAME): Defined.
3665 These correspond with changes in termcap.c.
3667 1993-12-17 Richard Stallman (rms@gnu.ai.mit.edu)
3669 * xterm.c (XTread_socket): Don't offset keysym here.
3670 Special handling for "dead accent" keysyms.
3671 * keyboard.c (make_lispy_event): Offset the event code here.
3672 Special handling for "dead accent" keysyms.
3674 * keyboard.c (quit_throw_to_read_char): Don't switch frames if
3675 internal_last_event_frame is not a frame.
3677 * termhooks.h (struct input_event): `code' is now an int.
3678 * xterm.c (construct_mouse_click, x_scroll_bar_handle_click)
3679 (XTread_socket): `code' of an event is now an int.
3680 * keyboard.c (kbd_buffer_store_event, make_lispy_event)
3681 (stuff_buffered_input): `code' of an event is now an int.
3683 * s/sol2-3.h: New file.
3684 * xfns.c (Fx_list_fonts): Handle BROKEN_XLISTFONTSWITHINFO.
3686 1993-12-16 Richard Stallman (rms@gnu.ai.mit.edu)
3688 * xterm.c (pixel_to_glyph_coords): New arg NOCLIP. Callers changed.
3690 * keyboard.c (make_lispy_movement): If we have a frame but pos is not
3691 in a window, return an event with the frame.
3693 * xterm.c (XTread_socket): For MotionNotify, if x_mouse_grabbed,
3694 use last_mouse_frame.
3695 (construct_mouse_click): Set last_mouse_frame.
3696 (XTmouse_position): If x_mouse_grabbed, use last_mouse_frame.
3698 * xdisp.c (message): Use message2, not message1.
3700 1993-12-15 Richard Stallman (rms@gnu.ai.mit.edu)
3702 * xfns.c (Fx_create_frame): Add frame to Vframe_list.
3703 * frame.c (make_terminal_frame): Add frame to Vframe_list.
3704 (make_frame): Don't add to frame list here.
3706 * window.c (Fdisplay_buffer): If pop_up_frames, pass t to
3709 * Makefile.in.in (configuration): New variable.
3710 (emacs.o): Define macro CONFIGURATION.
3711 * emacs.c (syms_of_emacs): Define Lisp var system-configuration.
3713 * xdisp.c (display_string): Fix truncation-criterion after main loop
3714 for termination due to LENGTH.
3715 * window.h (echo_area_glyphs_length): Declared.
3716 * print.c (printchar, strout): Set echo_area_glyphs_length.
3718 * keyboard.c (read_key_sequence): Don't return if in middle
3719 of possible function-key-map sequence, if the bindings were all
3720 found by case conversion.
3722 * lisp.h: Use WORDS_BIG_ENDIAN, not BIG_ENDIAN.
3723 (Qmenu_bar): Declared.
3725 * process.c (Fprocess_status): Use get_process, not Fget_process.
3727 * s/dgux.h (SYSTEM_TYPE): Make it dgux.
3729 * m/sun2.h (OTHER_FILES): Use ${libsrc} as dir.
3731 1993-12-15 Michal Jankowski (michalj@fuw.edu.pl)
3733 * insdel.c (del_range): Second argument in call to
3734 offset_intervals is 'from', not 'point'.
3736 1993-12-14 Richard Stallman (rms@gnu.ai.mit.edu)
3738 * emacs.c (memory_warning_signal): New function.
3739 (main): Handle SIGDANGER, if defined.
3741 * minibuf.c (minibuffer_auto_raise): Really define it.
3743 * process.c [BROKEN_O_NONBLOCK]: Undefine O_NONBLOCK.
3745 1993-12-14 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3747 * dispnew.c (update_frame): Only call sleep (outq / baud_rate) if
3748 baud_rate >= OUTQ. Calling sleep (0) causes a gratuitous delay on
3751 1993-12-13 Andreas Luik (luik@kepler.isa.de)
3753 * xterm.c (x_calc_absolute_position): Borderwidth must be doubled
3754 before subtracting from width to get correct value.
3756 * xfns.c (Fx_create_frame): Fix order of arguments of
3757 x_wm_set_size_hint call. This corrects handling of +x-y and -x+y
3758 geometry specifications.
3760 1993-12-12 Richard Stallman (rms@gnu.ai.mit.edu)
3762 * xdisp.c (echo_area_glyphs_length): New variable.
3764 (message2): New function.
3765 (display_string): New arg LENGTH.
3766 (echo_area_display): Pass new arg to display_string.
3767 (redisplay_window): Likewise.
3768 (display_text_line): Likewise.
3769 (display_menu_bar): Likewise.
3770 (display_mode_element):
3772 * editfns.c (Fmessage): Use message2.
3774 * keyboard.c (set_waiting_for_input): Code testing echo_flag deleted.
3775 (echo_flag, echo_now): Vars deleted.
3777 * keyboard.c (read_key_sequence): Bind case_converted at top level.
3778 Clear it at replay_sequence.
3779 (follow_key): Never clear *CASE_CONVERTED.
3781 1993-12-11 Richard Stallman (rms@gnu.ai.mit.edu)
3783 * xselect.c (x_get_foreign_selection): Use x_catch_errors.
3785 * fileio.c (Fmake_symbolic_link): Do expand FILENAME if starts with ~.
3787 * keymap.c (Fwhere_is_internal): Doc fix.
3789 * buffer.c (Fbuffer_disable_undo): Make arg optional.
3791 1993-12-11 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3793 * unexsunos4.c [! MAP_FILE] (MAP_FILE): Define to zero.
3794 (unexec): Remove unused variable BUF.
3795 Use MAP_FILE bit in mmap call.
3796 (run_time_remap): Use MAP_FILE bit in mmap call.
3798 1993-12-09 Richard Stallman (rms@gnu.ai.mit.edu)
3800 * insdel.c (modify_region): Call record_first_change if necessary.
3802 * emacs.c (main): Don't handle SIGDANGER.
3804 * minibuf.c (minibuffer_auto_raise): New variable.
3805 (syms_of_minibuf): Set up Lisp var.
3806 (read_minibuf): Maybe raise the minibuffer's frame.
3808 1993-12-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
3810 * dispnew.c (PENDING_OUTPUT_COUNT) [__GNU_LIBRARY__]: Alternate
3811 definition for the GNU C library. I changed this in version 18 in
3812 1991, but the change never got propagated.
3814 1993-12-07 Paul Reilly (pmr@legacy.pajato.com)
3816 * s/dgux.h (SYSV4_PTYS): Remove.
3817 (SIGNALS_VIA_CHARACTERS): Defined.
3819 * process.c (create_process): Delete SYSV4_PTYS code.
3820 (deactivate_process): Likewise.
3822 1993-12-06 Richard Stallman (rms@gnu.ai.mit.edu)
3824 * doc.c (Fsubstitute_command_keys): Ignore menu bar bindings.
3826 * s/sunos4-1.h (LIBS_SYSTEM): Use -lresolv if HAVE_RES_INIT
3827 is not defined and HAVE_GETHOSTNAME is defined.
3829 * keyboard.c (syms_of_keyboard): Define Lisp var track-mouse.
3831 * keyboard.c (follow_key): New arg case_converted.
3832 (read_key_sequence): Pass the new arg.
3833 If key has a binding via case-conversion, that does not prevent
3834 use of function_key_map.
3836 1993-12-05 Richard Stallman (rms@gnu.ai.mit.edu)
3838 * m/pmax.h (SET_CHILD_PTY_PGRP): Defined.
3840 * process.c (create_process) [SET_CHILD_PTY_PGRP]: Do ioctls
3841 to set the pgrp of the pty.
3843 1993-12-04 Richard Stallman (rms@gnu.ai.mit.edu)
3845 * xfns.c (XSetWMProtocols): New function, defined conditionally.
3847 * config.h.in (HAVE_XSETWMPROTOCOLS): Add #undef.
3849 * intervals.c (graft_intervals_into_buffer): If SOURCE is null
3850 and TREE is null, no need to call Fset_text_properties.
3852 * dispnew.c (Fsit_for): Call prepare_menu_bars.
3853 * keyboard.c (read_char): Call prepare_menu_bars.
3854 * xselect.c (x_handle_selection_clear): Call prepare_menu_bars.
3855 * vmsproc.c (Fcall_process): Call prepare_menu_bars.
3856 * sysdep.c [VMS] (wait_for_kbd_input): Call prepare_menu_bars.
3857 * process.c (wait_reading_process_input): Call prepare_menu_bars.
3858 * callproc.c (Fcall_process): Call prepare_menu_bars.
3859 * keyboard.c (tracking_off): Call prepare_menu_bars.
3860 * xdisp.c (update_menu_bar, update_menu_bars): New functions.
3861 (prepare_menu_bars): New function.
3862 (redisplay_window): Don't update menu bar here.
3863 (display_menu_bar): Assume item list already updated.
3865 1993-12-02 Richard Stallman (rms@gnu.ai.mit.edu)
3867 * editfns.c (Fsubst_char_in_region): Move the NOUNDO hacking code
3868 after the modify_region call.
3870 1993-12-01 Richard Stallman (rms@gnu.ai.mit.edu)
3872 * eval.c (Fmacroexpand): For an autoload definition,
3873 check the 4th elt, not the car of the 4th elt.
3875 * m/mips4.h (C_DEBUG_SWITCH): Delete -systype bsd43; not needed.
3877 * regex.c (regex_compile) [!MATCH_MAY_ALLOCATE]: If fail_stack.stack
3878 is nonzero, leave it alone.
3880 * fileio.c (Fread_file_name): If defalt is nil and user tries to use
3881 it, signal an error.
3883 * lisp.h (DEFUN_ARGS_MANY, DEFUN_ARGS_UNEVALLED, DEFUN_ARGS_0, ...):
3885 (DEFUN) [__STDC__]: Use those macros.
3887 * doc.c (Fdocumentation_property): 3 args is maximum.
3889 * callproc.c (Fgetenv): One arg is maximum.
3891 1993-11-30 Richard Stallman (rms@gnu.ai.mit.edu)
3893 * dispnew.c (direct_output_forward_char):
3894 Give up if in truncated text at end of line.
3896 * process.c (create_process): The test to avoid closing forkin
3897 is now conditional on #ifndef SIGNALS_VIA_CHARACTERS.
3899 * xdisp.c (redisplay_window): Don't alter lpoint when w is
3900 selected window in a non-selected frame.
3902 1993-11-30 Richard Stallman (rms@gnu.ai.mit.edu)
3904 * Makefile.in.in [__GNUC__ > 1]: Maybe define LINKER_WAS_SPECIFIED.
3905 [LINKER_WAS_SPECIFIED] (YMF_PASS_LDFLAGS): Define as identity.
3907 * m/mips4.h (NO_MODE_T): Defined.
3909 1993-11-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3911 * Version 19.22 released.
3913 * m/tek4300.h (NO_MODE_T): Defined.
3915 1993-11-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3917 * process.c (deactivate_process) [SVR4_PTYS]:
3918 If subtty is not nil, close it.
3920 * keyboard.c (kbd_buffer_get_event): For delete-window-event,
3921 do count iconified frames.
3923 * xfns.c (x_window): Call XSetWMProtocols.
3925 * keyboard.c (kbd_buffer_get_event): If user destroys the last frame,
3926 exit before calling Fdelete_frame.
3928 * s/irix5-0.h (SYSTEM_TYPE): Make it "irix".
3930 * sysdep.c (closedir): Test BROKEN_CLOSEDIR, not INTERRUPTIBLE_CLOSE.
3932 1993-11-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3934 * keyboard.c (read_avail_input): Undo Nov 18 change.
3936 * lread.c (readevalloop): Get error if buffer being eval'd is killed.
3938 * s/irix3-3.h (SETPGRP_RELEASES_CTTY): Defined.
3939 * s/irix5-0.h (IRIX5, SETPGRP_RELEASES_CTTY): Defined.
3940 * process.c (create_process): Do setpgrp for USG regardless of IRIX.
3941 (process_send_signal) [IRIX5]: For SIGTSTP, use VSUSP, not VSWTCH.
3942 * callproc.c (child_setup): Test SETPGRP_RELEASES_CTTY, not IRIX.
3943 (init_callproc): Fix previous change.
3945 * s/sunos4-1-3.h [!SYSTEM_MALLOC] (MEMMOVE_MISSING): Defined.
3947 * keyboard.c (quit_throw_to_read_char):
3948 Look at internal_last_event_frame only if MULTI_FRAME.
3950 * m/ibmrt.h (HAVE_FTIME): Deleted (autoconf does it).
3952 * m/hp9000s800.h (bcopy, bzero, bcmp): If HAVE_BCOPY, don't #define.
3954 * s/sco4.h (LIBS_SYSTEM): Always define this one way or another.
3957 * intervals.c (merge_properties_sticky): Declared.
3959 * regex.c (MAX, MIN): Undef before defining.
3961 * frame.c (Fhandle_switch_frame, Fredirect_frame_focus): Declared.
3963 * m/delta.h (HAVE_RANDOM, HAVE_XSCREENNUMBEROFSCREEN, BROKEN_FIONREAD):
3965 (LIB_X11_LIB, LIBX11_SYSTEM): Add override definitions.
3966 (USG_SHARED_LIBRARIES): Add #undef.
3968 * sysdep.c (init_baud_rate): Avoid referring to sg uninitialized.
3970 1993-11-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3972 * emacs.c (main) [AIX]: Don't handle signals 23, SIGAIO, SIGPTY.
3974 * indent.c (Fmove_to_column): Increments for control characters
3977 * process.c (Fdelete_process): Fix paren error.
3979 * sysdep.c (closedir): Pass on the value from sys_closedir.
3980 Do use this definition, if INTERRUPTIBLE_CLOSE.
3982 1993-11-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
3984 * s/sco4.h (LIBX11_SYSTEM): Override the definition.
3986 * xterm.c (XTread_socket): Really handle Xatom_wm_window_moved events.
3988 * s/irix5-0.h (SIGNALS_VIA_CHARACTERS): Defined.
3990 * fileio.c (Finsert_file_contents): Don't call signal_after_change
3991 if we did not call prepare_to_modify_buffer.
3993 * editfns.c (make_buffer_string): Don't copy intervals
3994 if we don't really have any properties.
3996 * lisp.h: Declare Fnext_single_property_change
3997 and Fnext_property_change.
3999 * s/sco4.h (HAVE_GETTIMEOFDAY): Define only if HAVE_SOCKETS.
4000 Fix up conditionals changed recently.
4002 * editfns.c (Finsert_buffer_substring):
4003 Pass graft_intervals_into_buffer the current buffer.
4005 * intervals.c (graft_intervals_into_buffer): New arg LENGTH.
4006 If source has no intervals, set dest properties to nil.
4007 * editfns.c (Finsert_buffer_substring): Pass new arg.
4008 * insdel.c (insert_from_string): Likewise.
4010 * callproc.c (init_callproc): Maybe add ../lib-src to exec-path
4011 and maybe store it in exec-directory.
4012 Maybe put ../etc into data-directory.
4013 (init_callproc_1): Part of init_callproc is split out.
4014 * emacs.c (main): Call init_callproc and init_callproc_1.
4016 1993-11-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4018 * editfns.c (Fsubst_char_in_region): Call modify_region only if
4019 a change has to be made. Call signal_after_change just once, at end.
4021 * lread.c (OBARRAY_SIZE): Increase from 509.
4023 * xrdb.c (search_magic_path): Fix colon-colon case.
4025 * textprop.c (Ftext_property_not_all):
4026 For trivial yes, return start, not Qt.
4028 * xselect.c (Fx_disown_selection_internal): When making the fake
4029 event for x_handle_selection_clear, use SELECTION_EVENT_... macros.
4031 1993-11-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4033 * s/sunos4-1-3.h (HAVE_TERMIOS, BSD_TERMIOS): Deleted.
4035 * systty.h (EMACS_GET_TTY_PGRP, EMACS_SET_TTY_PGRP):
4036 If HAVE_TERMIOS and BSD_TERMIOS, don't use tc[sg]etpgrp.
4038 * xfns.c (x_set_frame_parameters): Call check_frame_size
4039 before Fset_frame_size and Fset_frame_position.
4041 * termhooks.h (delete_window_event): New event kind.
4042 * xterm.c (XTread_socket): Generate delete_window_event's.
4043 * keyboard.c (kbd_buffer_get_event): Handle delete_window_event's.
4045 * s/sco4.h [HAVE_SOCKETS] (HAVE_XSCREENNUMBEROFSCREEN): Defined.
4047 * keymap.c: Doc fix.
4049 * window.c (window_loop, case DELETE_BUFFER_WINDOWS):
4050 Select a new buffer only if w is selected window.
4052 * hftctl.c: Include config.h. Include sys/signal.h before config.h.
4053 (sav_alrm): Use SIGTYPE.
4054 (FUNC): Typedef deleted.
4056 * Makefile.in.in (hftctl.o): New rule.
4058 * process.c (wait_reading_process_input):
4059 Use -1 to mean wait_channel is empty.
4060 Start process loop with descriptor 0 if keyboard_descriptor is not 0.
4061 (make_process): Initialize descriptors to -1.
4062 (Fdelete_process): -1 means empty, in infd.
4063 (deactivate_process): Likewise.
4064 (process_send_signal): Likewise.
4065 (kill_buffer_processes): Likewise.
4066 (sigchld_handler): Likewise.
4067 (status_notify): Likewise.
4068 (close_process_descs): Likewise.
4069 (create_process): Likewise.
4070 (Fopen_network_stream): Likewise.
4071 (send_process): Likewise.
4072 (Fprocess_send_eof): Likewise. Use XINT when closing outfd.
4073 (Fset_process_filter): Use XINT to get infd value.
4074 (wait_reading_process_input): Likewise.
4076 * process.c (wait_reading_process_input): When bypassing select,
4079 * sysdep.c (getwd): If getcwd returns 0, we return 0.
4080 (getwd for VMS): Likewise.
4082 1993-11-20 Paul Reilly (pmr@legacy.pajato.com)
4084 * s/dgux.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF):
4085 Defined (copied from usg5-4.h).
4086 (FIRST_PTY_LETTER): Deleted.
4088 1993-11-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4090 * frame.c (Fmake_frame_visible): Doc fix.
4092 * textprop.c (Ftext_property_not_all): Swap t and nil values in
4093 the case where there are no intervals.
4094 (Fprevious_single_property_change, Fprevious_property_change)
4095 Extra arg LIMIT. Return value was off by 1.
4096 (Fnext_single_property_change, Fnext_property_change):
4098 (Fnext_single_property_change): Require at least 2 args.
4099 * indent.c (compute_motion):
4100 Pass new arg to Fnext_single_property_change.
4101 * xfaces.c (compute_char_face): Accept new arg LIMIT.
4102 Pass Fnext_single_property_change its new arg LIMIT.
4103 * xdisp.c (display_text_line): Pass new arg to compute_char_face
4104 and to Fnext_single_property_change.
4105 * dispnew.c (direct_output_for_insert):
4106 Pass new arg to compute_char_face.
4108 * keyboard.c (follow_key): When downcasing, downcase just the
4109 basic part of the character, and preserve the modifier bits.
4111 1993-11-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4113 * keyboard.c (read_key_sequence): If we get a quit, and current buffer
4114 has changed, replay it to get proper keymap.
4115 (quit_throw_to_read_char): Switch frames to the frame the quit was in.
4117 1993-11-19 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4119 * buffer.c (Frename_buffer): When the current buffer is already
4120 named NAME, don't short-circuit and just return unless UNIQUE is
4121 nil. This makes passing UNIQUE=t equivalent to (rename-buffer
4122 (generate-new-buffer-name NAME)). This is useful way to rename
4123 the buffer automatically so you can create another with the
4126 1993-11-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4128 * keyboard.c (quit_throw_to_read_char): Select the frame
4129 which the quit char was typed in.
4131 * s/linux.h (HAVE_UNISTD_H): No need to define here.
4133 * buffer.c (Flist_buffers): Always return a value.
4135 * minibuf.c (read_minibuf): History list always gets strings,
4136 not Lisp objects made by read.
4138 1993-11-18 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4140 * keyboard.c (read_avail_input): Don't set nread to -1
4141 if we loop around in the loop that calls read.
4143 * sysdep.c (read_input_waiting): read_socket_hook
4144 delivers events, not characters. Make buf smaller
4145 in the case where we actually call read itself.
4147 * ralloc.c (r_alloc_init): Explicitly use real_morecore
4148 to allocate the entire incomplete page.
4150 * frame.c (Fmake_frame_visible): Use FRAME_SAMPLE_VISIBILITY.
4152 * s/dgux.h (FIRST_PTY_LETTER): Defined.
4154 1993-11-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4156 * keymap.c (Fkey_binding): Doc fix.
4158 * cmds.c (keys_of_cmds): Make 0377 self-inserting.
4160 1993-11-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4162 * Version 19.21 released.
4164 * doprnt.c (doprnt): Cast the value alloca returns.
4166 * gmalloc.c [HPUX8]: Include unistd.h earlier on.
4168 * s/sunos4shr.h (GNU_MALLOC, REL_ALLOC): Don't define if
4171 * s/hpux8.h (LD_SWITCH_SYSTEM) [hp9000s700]: Add -L/lib/pa1.1.
4173 * Makefile.in.in (extraclean): Prevent wildcard from starting comment.
4174 (distclean): Do delete Makefile and Makefile.in.
4176 1993-11-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4178 * systty.h [BSD_TERMIOS]: Under NL0, NL1..., ECHO, NOFLSH, TOSTOP,
4180 * s/sunos4-1-3.h (BSD_TERMIOS): Defined.
4182 * regex.c (re_set_registers): Use `regoff_t *' when casting 0.
4184 * Makefile.in.in: Delete spurious CFLAGS=-g.
4186 * s/sco4.h (HAVE_GETTIMEOFDAY): Don't define if already defined.
4188 * keyboard.c (read_avail_input): Make cbuf 1 char shorter.
4190 1993-11-14 Paul Reilly (pmr@legacy.pajato.com)
4192 * s/dgux.h (INTERRUPT_INPUT): Undefined.
4193 (BROKEN_FIONREAD): Defined to work around a problem in DGUX
4194 whereby emacs will stop on a background write when invoked from a
4195 job control shell for the first time in a session.
4196 (FIRST_PTY_LETTER): Undefined.
4197 (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Defined
4198 to use all the available PTYs in a COFF environment.
4199 (LINKER): Removed "-nostdlib" from to be compatible with a prior
4200 mod removing "/lib/crt0.o" from the LIBS_SYSTEM define.
4201 (LIBS_SYSTEM): Delete /lib/crt0.o.
4203 1993-11-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4205 * xterm.c (XTread_socket): Increase length of copy_buffer to 81.
4207 * lread.c (read1): If token has a \, don't treat it as a number.
4209 1993-11-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4211 * process.c (IN_ADDR, NUMERIC_ADDR_ERROR): New macros (two versions).
4212 (Fopen_network_stream): Use them.
4214 * doprnt.c: Include config.h.
4216 * keyboard.c (read_avail_input) [no FIONREAD]: On DGUX, as on USG,
4217 read input with O_NDELAY.
4219 * s/dgux.h (SYSTEM_MALLOC): Turned off.
4220 (NO_TERMIO): Defined.
4221 (BROKEN_FASYNC): Turned off.
4223 * buffer.c (Foverlay_put): Don't call redisplay_region
4224 if overlay has no buffer.
4226 1993-11-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4228 * process.c (get_process): Add `static' to definition.
4230 * xterm.c (XTmouse_position): Delete test inserted Nov 10.
4232 * fileio.c (syms_of_fileio): Fix missing \n\'s.
4234 * keyboard.c (Fread_key_sequence): Split the doc string with "".
4236 * textprop.c (Fprevious_single_property_change): Fix missing \n\.
4237 (Fnext_single_property_change): Likewise.
4239 1993-11-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4241 * Version 19.20 released.
4243 * callproc.c (Fcall_process): Clear synch_process_death and
4244 synch_process_retcode before the vfork.
4246 * xterm.c (XTmouse_position): Undo roland's change.
4247 Fix bug in bfox change.
4249 1993-11-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4251 * unexec.c [! HPUX]: Don't declare sbrk at all, so as not to
4252 conflict with system headers.
4254 * xterm.c (XTmouse_position): First arg is FRAME_PTR, not
4257 1993-11-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4259 * s/convexos.h: New file.
4261 1993-11-10 Brian J. Fox (bfox@mole.gnu.ai.mit.edu)
4263 * Makefile.in.in (intervals.o): Depend on puresize.h.
4265 * intervals.c (create_root_interval): Check to see if PARENT is in
4266 pure memory. If so, we cannot write it.
4267 (includes): Add "puresize.h" so we get the definition of CHECK_IMPURE.
4269 * xterm.c (XTmouse_position): If the passed in frame is not an
4270 Xwindow frame, don't do anything.
4272 * frame.c (Fraise_frame): Do like the documentation says, and make
4273 the frame visible first.
4275 * systty.h (EMACS_GETPGRP): New macro hides argument passing to
4276 system getpgrp. Reinstate some semblance of control over this
4277 macros behavior by paying attention to GETPGRP_NO_ARG.
4278 * sysdep.c (sys_suspend): Use EMACS_GETPGRP macro.
4279 * emacs.c (main): Use EMACS_GETPGRP macro.
4280 (shut_down_emacs): Use EMACS_GETPGRP macro.
4282 * alloc.c (make_pure_string): If we USE_TEXT_PROPERTIES, set the
4283 interval of the pure string to NULL_INTERVAL.
4285 * syswait.h: Treat convex like hpux.
4287 * search.c (Fskip_chars_backward, Fskip_chars_forward): Doc fix.
4289 1993-11-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4291 * syntax.c (Fforward_comment): On backward scan, exit inner loop
4292 after we reach beginning of a comment.
4293 Check the SYNTAX_COMMENT_STYLE of a one-character comment ender.
4294 (scan_lists): Check the SYNTAX_COMMENT_STYLE
4295 of a one-character comment ender.
4297 * sysdep.c (read_input_waiting): Don't mess with meta bit
4298 if read_socket_hook is nonzero.
4300 * sysdep.c (LPASS8, LNOFLSH): Move definitions earlier.
4301 (child_setup_tty): Turn on LPASS8.
4303 * search.c (skip_chars): Finish reenabling checks for buffer bounds.
4304 Use XINT, not XFASTINT, when testing.
4306 * fileio.c (Fwrite_region): Fix minor bugs in POS arg to a_write.
4308 * xterm.c (syms_of_xterm): Initialize last_mouse_scroll_bar.
4310 1993-11-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4312 * buffer.c, editfns.c: Doc fix.
4314 1993-11-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4316 * sysdep.c (child_setup_tty): Make the pty handle 8-bit characters.
4318 1993-11-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4320 * s/linux.h [TERM]: Alternate definitions of LIBS_MACHINE
4321 and C_SWITCH_MACHINE.
4323 * process.c [TERM]: Include client.h.
4324 (Fopen_network_stream): Handle TERM.
4326 1993-11-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4328 * xterm.c (x_new_font): xmalloc arg was 1 too small.
4330 1993-11-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4332 * s/sunos4-1-3.h (HAVE_TERMIOS): Define.
4334 1993-10-25 Brian J. Fox (bfox@albert.gnu.ai.mit.edu)
4336 * process.c (Fopen_network_stream): Cast arg to inet_addr to (char *).
4338 * search.c (Freplace_match): Fix argument names to match doc string.
4339 (Fmatch_beginning): Fix doc string to match argument name.
4341 * floatfns.c: Declare `logb' only if HAVE_LOGB is defined.
4343 * fileio.c (Fcopy_file): Don't allow the copying of anything other
4344 than regular files or symlink files.
4346 1993-10-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4348 * keyboard.c (read_key_sequence): Arg prompt is now a Lisp object.
4349 Pass it to functions found in function-key-map and key-translation-map.
4350 (Fread_key_sequence, command_loop_1): Calls changed.
4352 1993-10-22 Brian J. Fox (bfox@albert.gnu.ai.mit.edu)
4354 * config.h.in: Add #undef HAVE_UNISTD_H so configure can edit it
4357 1993-10-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4359 * process.c (status_notify): Don't read from process if filter is t.
4360 (Fset_process_filter): Set or clear bit in input_wait_mask when nec.
4362 1993-10-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4364 * data.c [hpux 7] (_MAXLDBL, _NMAXLDBL): New macro definitions.
4366 1993-10-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4368 * keyboard.c (read_key_sequence): Allow function in key-translation-map
4369 just as in function-key-map.
4371 1993-10-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4373 * buffer.c (Fdelete_overlay, Foverlay_put): Use marker_position,
4374 not OVERLAY_POSITION, to get args for redisplay_region.
4376 * fileio.c (Fcar_less_than_car): Fix typo in previous change.
4378 1993-10-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4380 * floatfns.c [hpux 7] (_MAXLDBL, _NMAXLDBL): New macro definitions.
4382 * fileio.c (Vafter_insert_file_functions): New variable.
4383 (Vwrite_region_annotate_functions): New variable.
4384 (Qcar_less_than_car): New variable.
4385 (Fcar_less_than_car): New function.
4386 (syms_of_fileio): Make Lisp variables and function available.
4387 staticpro Qcar_less_than_car.
4388 (a_write, build_annotations): New functions.
4389 (Fwrite_region): Call them.
4390 (Finsert_file_contents): Run the Vafter_insert_file_functions.
4392 1993-10-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4394 * s/sco4.h (SYSTEM_TYPE): Put into #if 0.
4395 (BSTRING): Define only if HAVE_BCOPY.
4397 1993-10-08 Brian J. Fox (bfox@albert.gnu.ai.mit.edu)
4399 * search.c (skip_chars): Re-instate the check against the end of
4400 the buffer, ignoring cryptic comment.
4402 1993-10-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4404 * keyboard.c (read_key_sequence): Allow function-key-map to have a
4405 function as the binding; call the function and use its value.
4407 1993-10-04 Brian J. Fox (bfox@ai.mit.edu)
4409 * minibuf.c (Fminibuffer_complete_word): GCPRO1 `completion'
4410 during calls to Ftry_completion.
4412 * keyboard.c (read_key_sequence): Don't declare first_event; it is
4413 no longer used. Change "#if 0" for first_event reading to
4414 "#if defined (GOBBLE_FIRST_EVENT)".
4416 1993-10-03 Brian J. Fox (bfox@ai.mit.edu)
4420 * minibuf.c (read_minibuf): Rewrite change of Sep 14. Save the
4421 return value on the history list provided in the form that the
4422 value is returned, iff the value is not equal to the front of the
4425 1993-10-03 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4427 * Makefile.in: File removed. It is now generated by ../configure.
4429 * Makefile.in.in (LIBES): Add $(GNULIB_VAR) again at end.
4430 This change to ymakefile was mysteriously lost.
4431 Were any others lost too?
4433 1993-10-02 Brian J. Fox (bfox@ai.mit.edu)
4435 * minibuf.c (Fread_no_blanks_input): Change DEFUN to allow 2nd arg
4436 to be optional. The code was already written correctly.
4438 1993-09-30 Brian J. Fox (bfox@ai.mit.edu)
4440 * systty.h: If POSIX and HAVE_UNISTD_H are defined, and unistd.h
4441 hasn't already been included, include it.
4443 * s/linux.h (POSIX_SIGNALS): Comment fix.
4445 1993-09-30 Brian J. Fox (bfox@albert.gnu.ai.mit.edu)
4447 * Makefile.in.in (ALL_CFLAGS): Make sure that `.' is searched
4448 before `${srcdir}' when looking for include files.
4450 1993-09-28 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
4452 * termhooks.h (enum event_kind): Doc fix.
4454 1993-09-27 Brian J. Fox (bfox@ai.mit.edu)
4456 * ymakefile: Merged into Makefile.in.in.
4458 * Makefile.in.in: New file. Now ../configure creates Makefile.in
4459 from Makefile.in.in, and creates Makefile from Makefile.in.
4460 ymakefile no longer exists, and xmakefile is never created.
4462 1993-09-24 Brian J. Fox (bfox@ai.mit.edu)
4464 * textprop.c (validate_plist): Add declaration for `list' argument.
4466 * frame.c (Fhandle_switch_frame): Doc fix.
4468 1993-09-25 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4470 * puresize.h: [MULTI_FRAME]: Increase PURESIZE to 220000.
4472 1993-09-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4474 * s/sunos4-1.h (LIBS_SYSTEM): Use -lresolv if it seems appropriate.
4476 * config.h.in: Add #undef HAVE_RES_INIT.
4478 1993-09-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4480 * m/mips4.h (LIB_STANDARD): Add a second -lc after crtn.o.
4482 1993-09-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4484 * pwd.h: File deleted.
4486 * intervals.c (graft_intervals_into_buffer): New arg INHERIT.
4488 * editfns.c (Finsert_buffer_substring): Pass extra arg to
4489 graft_intervals_into_buffer.
4490 * insdel.c (insert_from_string): Likewise. New arg INHERIT.
4491 (insert_from_string_before_markers): New arg INHERIT.
4493 * search.c (Freplace_match): Call Finsert_and_inherit.
4495 * editfns.c (Finsert_and_inherit): New function.
4496 (Finsert_and_inherit_before_markers): New function.
4497 (Finsert, Finsert_before_markers): Pass new arg to insert_from_string*.
4498 * minibuf.c (Fminibuffer_complete_word):
4499 Pass new arg to insert_from_string*.
4500 * doc.c (Fsubstitute_command_keys): Pass new arg.
4501 * abbrev.c (Funexpand_abbrev, Fexpand_abbrev): Pass new arg.
4503 * s/aix3-2.h (AIX3_2): Define.
4504 * m/ibmrs6000.h (LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2.
4506 * xterm.h (HAVE_X11R4): If AIX, do not define HAVE_X11R4.
4508 1993-09-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4510 * sysdep.c (bzero, bcopy, bcmp): Don't define as functions
4511 if they are defined as macros.
4513 1993-09-11 Roland McGrath (roland@baalperazim.gnu.ai.mit.edu)
4515 * lread.c, callproc.c, filelock.c: Include <paths.h>, not "paths.h".
4517 1993-09-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4519 * s/linux.h (LIBS_MACHINE): Make definition empty.
4521 1993-09-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4523 Support configuring in a different directory when ${srcdir} has
4524 already been configured.
4525 * frame.c, xfns.c, xdisp.c, casetab.c, cm.c, casefiddle.c, xterm.c,
4526 xrdb.c, eval.c, doc.c, lread.c, callint.c, cmds.c, term.c, fns.c,
4527 data.c, alloc.c, unexconvex.c, fileio.c, indent.c, bytecode.c,
4528 sunfns.c, xmenu.c, buffer.c, textprop.c, marker.c, print.c,
4529 emacs.c, dispnew.c, syntax.c, undo.c, mocklisp.c, scroll.c,
4530 search.c, ralloc.c, unexaix.c, unexec.c, unexenix.c, unexmips.c,
4531 unexsunos4.c, vmsfns.c, vmsmap.c, dired.c, xselect.c, floatfns.c,
4532 filelock.c, sysdep.c, abbrev.c, minibuf.c, xfaces.c, callproc.c,
4533 insdel.c, intervals.c, process.c, vm-limit.c, window.c,
4534 vmsgmalloc.c, keymap.c, editfns.c, keyboard.c, macros.c, vmstime.c:
4535 Include <config.h> instead of "config.h".
4536 * ymakefile (ALL_CFLAGS): Put -I. before -I${srcdir}.
4537 * Makefile.in (xmakefile): Use -I. in cpp run.
4539 * Makefile.in (clean): Use rm -f.
4541 * s/netbsd.h: New file.
4542 * ymakefile (LIBES): Add $(GNULIB_VAR) again at end.
4544 1993-09-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4546 * sysdep.c (stuff_char): Use input_fd.
4547 (narrow_foreground_group, widen_foreground_group, init_sys_modes)
4548 (init_baud_rate, init_sigio, request_sigio, unrequest_sigio): Likewise.
4549 (change_input_fd): New function.
4551 * process.c (keyboard_descriptor): New variable.
4552 (wait_reading_process_input, init_keyboard): Use it.
4553 Also call change_input_fd.
4554 (change_keyboard_wait_descriptor): New function.
4555 * xterm.c (x_term_init): Call change_keyboard_wait_descriptor,
4556 instead of dup2. Use the existing X desc number in fcntl calls.
4557 * xterm.c (XTread_socket): Don't forget to clear out `mask'.
4559 1993-09-08 Francesco Potortì (pot@cnuce.cnr.it)
4561 * filelock.c (fill_in_lock_short_file_name): Fix the crc
4562 generation algorithm.
4564 1993-08-19 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4566 * textprop.c (F{next,previous}_single_property_change): Doc fix.
4568 1993-09-15 Brian J. Fox (bfox@ai.mit.edu)
4570 * data.c: Add declaration for atof if not predefined.
4572 * xfns.c (XScreenNumberOfScreen): Move assignments out of
4573 declarations for (dpy, dpyscr).
4575 * sysdep.c (sys_write): Keep trying to write out the data until
4576 all of the data is written, or until we receive an error which is
4577 not an interrupted write.
4579 1993-09-14 Brian J. Fox (bfox@ai.mit.edu)
4581 * keyboard.c (Qextended_command_history): New variable prevents
4582 sharing of M-x command history with other commands that read
4583 values in the minibuffer.
4585 * doprnt.c (doprnt): Use a fixed buffer to store the format
4586 specification, but only if we are sure it will fit. Otherwise,
4587 use alloca to get enough space. Don't allow negative size
4588 specifications to core dump; instead, treat them as positive
4589 ("%-20d" == "%20d").
4591 * minibuf.c (read_minibuf): Don't add history item if it is
4592 string-equal to the most recent history item.
4594 1993-07-09 Karl Berry (karl@cs.umb.edu)
4596 * dired.c (file_name_completion): Install case-preserving
4597 changes from Emacs 18 for completion_ignore_case.
4598 (completion_ignore_case): Declare.
4600 1993-09-01 Brian J. Fox (bfox@ai.mit.edu)
4602 * window.c (Fdelete_windows_on): Fix DEFUN to allow optional
4603 second argument to appear.
4605 1993-08-30 Brian J. Fox (bfox@ai.mit.edu)
4607 * ymakefile (alloc.o): Remove explicit compilation rule, since it
4608 is identical to the default rule, and `$<' doesn't work in
4609 explicit rules in all "make"s.
4611 1993-08-27 Brian J. Fox (bfox@ai.mit.edu)
4613 * gmalloc.c (safe_bcopy): Compile if MEMMOVE_MISSING is defined,
4614 but only if we aren't compiling for emacs.
4616 * sysdep.c (read_input_waiting): If the user specifies
4617 `meta-flag', then notice characters with high-bit set.
4619 Added fixes from Karl Berry for ISC-2.2.
4620 * s/isc2-2.h (MEMMOVE_MISSING): Define.
4621 (SIGNALS_VIA_CHARACTERS): Define.
4622 (LIB_STANDARD): Do not include -lcposix.
4623 (C_SWITCH_SYSTEM) [__GNUC__]: Do not use -traditional.
4625 1993-08-17 Brian J. Fox (bfox@ai.mit.edu)
4627 * alloca.c: Invert sense of conditional for entire file (GNUC >=
4630 * xterm.c (x_wn_set_size_hint): Make recent window gravity
4631 addition depend on "PWinGravity" being `#defined'.
4633 1993-08-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4635 * Version 19.19 released.
4637 * Makefile.in (mostlyclean): Don't delete emacs here.
4638 (clean): Delete emacs and emacs-* here.
4639 (distclean): Don't delete emacs-* here.
4641 * xselect.c (struct property_change): New field `arrived'.
4642 (expect_property_change): Return struct property_change *.
4644 (unexpect_property_change): Take one as argument.
4645 (wait_for_property_change): Take one as argument.
4646 If `arrived' is set, don't wait.
4647 (wait_for_property_change_unwind): Corresponding changes.
4648 (receive_incremental_selection): Corresponding changes.
4649 (x_reply_selection_request): Corresponding changes.
4650 (property_deleted_p): Function deleted.
4652 * xselect.c (x_handle_selection_clear): Redisplay.
4654 * search.c (compile_pattern): Cast result of re_compile_pattern.
4656 * emacs.c (init_cmdargs): Check openp result for 1, not != 0.
4658 * xterm.c (x_wm_set_size_hint): New args spec_x and spec_y.
4659 Set the window gravity. All callers changed.
4660 * xfns.c (Fx_create_frame): Pass the new args to x_wm_set_size_hint.
4662 * xmenu.c (Fx_popup_menu): Adjust coords so they are relative
4663 to the inner window.
4665 * syswait.h: New file.
4666 * sysdep.c, process.c: Include it.
4667 * ymakefile (sysdep.o, process.o): Depend on syswait.h.
4669 * process.c (wait_reading_process_input): Exit without waiting
4670 if wait_for_cell is already non-nil.
4672 * sysdep.c (mkdir, rmdir): Use wait_for_termination to wait.
4673 Redirect descriptors 0...2 to /dev/null.
4675 * emacs.c (__CTOR_LIST__): Don't declare it on Linux.
4677 * filelock.c (getpwuid): Declare it as in xrdb.c.
4678 (init_filelock): Don't use return value of strcpy.
4680 * fns.c (internal_equal): Typo in previous change.
4682 * xfns.c (x_set_frame_parameters): Don't die if just one of
4683 height and width was set. Likewise left and top.
4685 * textprop.c (property_change_between_p): Test NULL_INTERVAL_P
4686 in loop, before looking at next->position.
4688 * intervals.c (adjust_intervals_for_insertion): If inserting in middle
4689 of interval that is sticky in neither direction, don't copy props.
4690 (merge_properties_sticky): Handle non-list as front-sticky or
4691 rear-nonsticky property.
4693 1993-08-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4695 * fns.c (internal_equal): All markers in no buffer are equal.
4697 1993-08-13 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4699 * config.h.in: Added #undef HAVE_XSCREENNUMBEROFSCREEN.
4701 1993-08-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4703 * xfns.c (XScreenNumberOfScreen): New function.
4705 * m/tek4300.h (C_DEBUG_SWITCH, SYSTEM_MALLOC): Define.
4707 * m/iris4d.h (START_FILES, LIB_STANDARD): Don't define if USG5_4.
4708 (DEFAULT_ENTRY_ADDRESS): Likewise.
4709 (UNEXEC): Use unexelfsgi.o if USG5_4.
4711 * s/irix5-0.h (C_SWITCH_MACHINE): Delete.
4713 1993-08-13 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
4715 * m/dpx2.h: Delete conditionals for HAVE_X_WINDOWS and HAVE_SOCKETS.
4717 1993-08-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4719 * m/iris4d.h (C_ALLOCA): Don't define it.
4721 * keyboard.c (kbd_buffer_store_event): Use bcopy to copy
4722 a selection request event.
4724 * unexnext.c (get_data_region): Add cast to avoid warning.
4726 1993-08-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4728 * ymakefile (prefix-args, filemode.o, lastfile.o): Dep on $(config_h).
4730 * floatfns.c (Flogb): Error at run time if not supported.
4732 * ymakefile (emacs.o): Depend on process.h and syssignal.h.
4733 * emacs.c: Include process.h.
4734 (init_cmdargs): Use EXEC_SUFFIXES.
4736 * s/irix5-0.h: Include alloca.h if appropriate.
4737 Fix the #include file name.
4738 (ULIMIT_BREAK_VALUE, GETPGRP_NO_ARG, NO_MATHERR): New macros.
4739 (LIB_STANDARD): #undef it.
4741 * frame.c (Fdelete_frame): Add parens for clarity.
4743 * keyboard.c (read_char): Never start echoing if -batch.
4745 * minibuf.c (Qread_file_name_internal): New var.
4746 (syms_of_minibuf): Set it up and protect it.
4747 (Fminibuffer_complete_word): When completing a file name,
4748 expand envvar references.
4750 * xterm.c (XTread_socket): Make copy_buffer unsigned.
4752 * s/usg5-4-2.h (HAVE_GETHOSTNAME): #if 0'd.
4754 1993-08-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4756 * s/hpux8.h (LD_SWITCH_SYSTEM): Delete the -L options.
4758 * termhooks.h (enum event_kind): Delete final comma.
4759 (meta_modifier): Delete final comma.
4760 * window.c (enum window_loop): Delete final comma.
4761 * xfns.c (enum resource_types): Delete final comma.
4763 * m/ibmrs6000.h (BIG_ENDIAN): Don't actually define it.
4765 * window.c (Frecenter): Preserve point in the buffer we change it in.
4767 * cmds.c (Fnewline): If we don't do the first SET_PT,
4768 clear flag, so we don't do the second SET_PT.
4770 * keyboard.c (make_lispy_event): Clear all but 0377 in event->code.
4772 * xselect.c (receive_incremental_selection): Use bcopy, not memcpy.
4774 * m/tek4300.h (BIG_ENDIAN): Provide a value that matches the system.
4776 * config.h.in: Add #undef HAVE_FTIME.
4778 * ymakefile (ALL_CFLAGS): Use C_SWITCH_X_SITE before
4779 C_SWITCH_X_SYSTEM and C_SWITCH_X_MACHINE.
4781 * s/hpux8.h (C_SWITCH_X_SYSTEM): Define instead of C_SWITCH_SYSTEM.
4783 1993-08-11 Shane Hartman (shane@nugget.spr.com)
4785 * buffer.c (verify_overlay_modification): Initialize endpos.
4787 * keymap.c (describe_buffer_bindings): Declare shadow just once.
4789 1993-08-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4791 * xterm.c (x_calc_absolute_position): For negative coords, take
4792 account of added width from window manager's outer window.
4794 * term.c (term_get_fkeys_define_1, term_get_fkeys_define):
4796 (term_get_fkeys): Use them.
4798 * m/tekxd88.h: Renamed from tekXD88.h.
4799 (LIB_X11_LIB, LIBX11_SYSTEM): Make #undefs unconditional.
4801 * systty.h: Handle NO_TERMIO in principal HAVE_TERMIOS case.
4803 * xrdb.c (x_get_customization_string): Don't use value of strcpy.
4805 * floatfns.c (Fexpt): Use IN_FLOAT2.
4807 1993-08-10 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
4809 * m/dpx2.h (HAVE_TCATTR): Macro #defined.
4810 (HAVE_CLOSEDIR): #undef to allow use of closedir in sysdep.c.
4811 (SIGTSTP): Comment #undef to allow use of ^Z in shell-mode.
4812 (SIGNALS_VIA_CHARACTERS): #defined.
4814 1993-08-09 Paul Eggert (eggert@twinsun.com)
4816 * data.c (Fmod): New function; result is always same sign as divisor.
4817 (syms_of_data): Add Smod.
4818 * emacs.c (main): Invoke syms_of_floatfns even if LISP_FLOAT_TYPE
4819 isn't defined, since `(floor A B)' is now needed for integers.
4820 * floatfns.c (syms_of_floatfns): Likewise.
4821 (Ffloor): Optional second operand specifies divisor, as in Common Lisp.
4823 1993-08-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4825 * unexelf.c (unexec): Add casts for some comparisons.
4826 (PATCH_INDEX): Likewise.
4828 1993-08-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4830 * Version 19.18 released.
4832 * term.c (term_init): Improve error messages (give sh commands).
4834 * xterm.c (struct font_info): New structure.
4835 (x_font_table): Use struct font_info as elements.
4836 (x_new_font): Corresponding changes.
4837 Use XListFonts, not XListFontsWithInfo.
4838 Use XFreeFontNames, not XFreeFontInfo.
4839 Compare fonts by name, not by fid.
4840 If already_loaded is 0, that counts as "yes".
4842 * minibuf.c (Qminibuffer_setup_hook, Vminibuffer_setup_hook): New vars.
4843 (syms_of_minibuf): Set them up.
4844 (read_minibuffer): Run the hook, if not empty.
4846 * dispnew.c (direct_output_forward_char): Fix previous change:
4847 verify position is in range before calling Fget_text_property,
4848 and calculate position properly.
4850 * s/bsd4-2.h, s/bsd4-3.h, s/umax.h, s/rtu.h, s/dgux.h (HAVE_VFORK):
4853 * ymakefile (alloc.o): Don't use DEBUG_MOLE.
4854 (DEBUG_MOLE): Delete.
4855 * gnu-hp300: File deleted.
4857 * .gdbinit: Don't put -q in args.
4858 Don't unset TERM and TERMCAP--show them instead.
4860 * alloc.c (mark_object): Declare ptr volatile, or don't use it
4861 after a recursive call. Delete the aborts if ptr is clobbered.
4863 * fileio.c (expand_and_dir_to_file): Use Fdirectory_file_name.
4865 1993-08-08 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
4867 * config.h.in (HAVE_LOGB, HAVE_FREXP): Add #undefs for the
4868 configuration script to edit.
4869 * floatfns.c (Flogb): Use HAVE_LOGB and HAVE_FREXP, instead of
4870 assuming that all USG systems have FREXP.
4872 1993-08-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4874 * emacs.c (Vinvocation_directory): New var.
4875 (init_cmdargs): Set up its value.
4876 (Finvocation_directory): New function.
4877 (main): Call init_buffer, init_callproc and init_cmdargs
4879 (syms_of_emacs): Install the function, and protect the variable.
4880 * lisp.h (Vinvocation_directory): Declare.
4881 * lread.c (init_lread): Normally put Vinvocation_directory
4882 at end of Vload_path, if not present already.
4884 1993-08-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4886 * keyboard.c (set_poll_suppress_count): New function.
4887 * eval.c (unwind_to_catch): Call set_poll_suppress_count.
4889 * xterm.c (x_term_init): Set the hooks before we call Fset_input_mode.
4890 * keyboard.c (Fset_input_mode): Start polling, if appropriate.
4891 At the beginning, stop polling.
4892 Remove period from error message.
4893 (stop_polling, start_polling): Check for interrupt_input.
4894 (POLL_FOR_INPUT): Define whether or not target supports SIGIO.
4896 * m/ibm370aix.h (HAVE_VFORK, INTEL386, aix386): Add #undef.
4898 1993-08-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4900 * eval.c (do_autoload): Don't report autoload failure
4901 if the autoload definition now is a different one.
4903 * m/ibm370aix.h: Total rewrite; includes ibmps2-aix.h.
4905 * m/ibmps2-aix.h (SYSTEM_TYPE): Don't redefine it here.
4907 * syntax.c: Doc fix.
4909 1993-08-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4911 * fns.c (Fyes_or_no_p): Use Qyes_or_no_p_history.
4912 (syms_of_fns): Set up Qyes_or_no_p_history.
4914 * fileio.c (expand_and_dir_to_file): Remove final / by copying abspath.
4916 * data.c (Frem): Don't accept floats, just ints and markers.
4918 * m/vax.h [BSD4_2] (HAVE_FTIME): Defined.
4920 1993-08-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4922 * m/7300.h (CRT0_COMPILE): Add -O and -Demacs.
4923 * ymakefile (CRT0_COMPILE): Add missing #endif.
4925 1993-08-03 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
4927 Changes for 3b1 suggested by Andy Fyfe <andy@scp.caltech.edu>
4928 * m/7300.h [__GNUC__]: #define HAVE_ALLOCA.
4929 [not __GNUC__]: #define SWITCH_ENUM_BUG, C_ALLOCA, and STACK_DIRECTION.
4930 (HAVE_SYSVIPC, USE_UTIME): #define these.
4931 (memmove): We don't have this; call safe_bcopy.
4932 (CRT0_COMPILE): #define this, so we always use the system's cc.
4933 * config.h.in: Add #undefs for HAVE_MKDIR and HAVE_RMDIR, for
4935 * sysdep.c [not HAVE_MKDIR] (mkdir): New function, taken from tar,
4936 for use on systems lacking the mkdir function.
4937 [not HAVE_RMDIR] (rmdir): New function, taken from tar, for use on
4938 systems lacking the rmdir function.
4939 * ymakefile (crt0.o): Replace the compiler and switches with the
4940 symbol CRT0_COMPILE.
4941 (CRT0_COMPILE): If the system and machine description files have
4942 left this undefined, then define it to do the same as the old
4943 crt0.o rule used to.
4945 1993-08-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4947 * sysdep.c (vfork): Move this outside the USG conditional.
4949 1993-08-02 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
4951 * frame.c (Fprevious_frame): New function, for parity with
4953 (syms_of_frame): Add defsubr for Sprevious_frame.
4955 1993-08-02 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
4957 * xdisp.c (display_menu_bar): Redisplay all lines occupied by the
4958 menu bar, not just the first.
4960 1993-08-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4962 * keyboard.c (read_key_sequence): Use XFASTINT to convert value
4963 of Flength to an int.
4965 * buffer.c (Fmove_overlay): Avoid initializer for Lisp_Object vars.
4966 (verify_overlay_modification): Declare ostart, oend as Lisp_Object.
4968 * frame.c (Fset_frame_position): Doc fix.
4970 1993-08-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
4972 From daveg@synaptics.com:
4973 * keyboard.c (last_mouse_button): Renamed from button_up_button.
4974 (last_mouse_x, last_mouse_y): Likewise.
4975 (button_down_time): Replaces button_up_time.
4976 (make_lispy_event): Set button_down_time.
4977 Detect and report double-down and double-drag events.
4978 (apply_modifiers_uncached): Put `double' or `triple' first.
4979 (read_key_sequence): Convert unbound double-drag/down to drag/down.
4981 * fileio.c (Finsert_file_contents): Don't call prepare_to_modify_buffer
4982 if inserting zero characters.
4984 * syntax.c: Doc fix.
4986 1993-07-31 Gregor Schmid (schmid@fb3-s7.math.tu-berlin.de)
4988 Handle `sticky' text properties.
4989 * intervals.c (adjust_intervals_for_insertion): Handle insertion
4990 between two unlike intervals via merge_properties_sticky.
4991 (merge_properties_sticky): New function.
4992 (graft_intervals_into_buffer): Leave handling of `sticky'-ness to
4993 adjust_intervals_for_insertion, then merge properties of the
4994 inserted text onto the old ones.
4995 (textget_direct): New function.
4996 (set_point): Fix calculating of fromprev.
4997 (verify_interval_modification): Check for `read-only' property
4998 and take its `sticky'-ness into account.
4999 * intervals.h (MERGE_INSERTIONS): Define as 1.
5000 (FRONT_STICKY): Add real definition.
5001 (END_NONSTICKY): New macro.
5002 (END_STICKY): Deleted.
5003 (textget_direct, Qfront_sticky, Qrear_nonsticky): Declared.
5004 * textprop.c (Qfront_sticky, Qrear_nonsticky): New variables.
5005 (syms_of_textprop): Set them up.
5007 Change display code to handle the `invisible' text property.
5008 * dispnew.c (direct_output_for_insert): Fail if character
5009 just inserted has text properties.
5010 (direct_output_forward_char): Fail if moving near invisible chars.
5011 * indent.c (compute_motion): Compute correctly for invisible text.
5012 (vmotion): Take care of invisible newlines.
5013 * intervals.c (set_point): Ignore `invisible' property
5014 unless property value is `hidden'.
5015 * intervals.h (Qhidden): Declared.
5016 * textprop.c (Qhidden): New variable.
5017 (syms_of_textprop): Set up Qhidden.
5018 * xdisp.c (try_window): Handle invisible newline at end of buffer.
5019 (display_text_line): Don't display invisible text.
5021 1993-07-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5023 * indent.c (Fmove_to_column): After we split a tab, make sure
5024 to set last_known... consistently.
5026 * editfns.c (save_excursion_restore): Never make the buffer visible.
5028 * s/isc3-0.h: Don't mention dir `s/' in #include.
5030 1993-07-30 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5032 * config.h.in (HAVE_AIX_SMT_EXP): New #undef for configure to edit.
5033 * m/ibmrs6000.h (LD_SWITCH_MACHINE): Don't mention
5034 /usr/lpp/X11/bin/smt.exp unless HAVE_AIX_SMT_EXP is #defined.
5036 * config.h.in (HAVE_BCOPY): Add an #undef for this.
5037 (BSTRING): #define this iff HAVE_BCOPY is #defined here. Ignore what
5038 the system-description files say. They don't always make fine
5039 enough distinctions between systems, and sometimes the bcopy
5040 routines are available only with X windows.
5042 * config.h.in (HAVE_XSCREENRESOURCESTRING): New #undef for
5044 * xrdb.c (get_user_db): Test it to decide whether or not to try to
5045 retrieve the screen-dependent resources.
5047 * xfns.c (Fx_open_connection): Test the CPP symbol
5048 HAVE_XRMSETDATABASE to decide whether or not to call
5051 * xfns.c (x_set_background_color): Change the foreground color of
5054 1993-07-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5056 * editfns.c (syms_of_editfns): Just staticpro Vuser...name
5057 and Vsystem_name; don't make them Lisp variables.
5059 * xselect.c (prop_location_identifier): Was named prop_location_tick.
5060 (property_change_reply_identifier): Renamed from ...-tick.
5061 (struct prop_location): Field `identifier' renamed from `tick'.
5062 Various functions changed accordingly.
5063 (x_handle_selection_request): Delete local struct var `reply'.
5065 * xselect.c (wait_for_property_change_unwind): New function.
5066 (wait_for_property_change): Add unwind protect.
5068 1993-07-29 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5070 * xfns.c (syms_of_xfns): Don't staticpro Vx_resource_name;
5071 DEFVAR_LISP takes care of that, and it's deadly to staticpro a
5072 variable containing a string twice.
5074 * window.c (check_frame_size): Include the menu bar height in the
5075 minimum frame height.
5077 * ymakefile (DEBUG_MOLE): Don't put parens around the command we
5078 run to detect the GNU hp300 machines. If the make is still
5079 somehow using csh, it complains about the parens.
5081 1993-07-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5083 * frame.c (Fdelete_frame): New arg FORCE allows deletion
5084 of last non-invisible frame.
5086 * s/usg5-4.h (bzero, bcmp, bcopy): New macros.
5087 (LIB_STANDARD): Don't include libucb.a.
5089 1993-07-28 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
5091 * xfns.c (syms_of_xfns): Use DEFVAR_LISP, not DEFVAR_INT, for
5094 1993-07-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5096 * cmds.c (Fnewline): Disable the "insert one position before"
5097 optimization if it would screw up text property behavior.
5098 * textprop.c (property_change_between_p): New function.
5100 1993-07-27 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5102 * keyboard.c (command_loop_1):
5103 Call Qrecompute_lucid_menubar only if defined.
5105 * emacs.c (decode_env_path): Strip trailing slashes if there are any.
5107 * unexec.c (make_hdr): Use & in call to bzero.
5109 * xfns.c (Fx_rebind_key, Fx_rebind_keys): Functions deleted.
5111 * syntax.c (scan_sexps_forward): Delete extra Fcdr when analyzing
5114 * xterm.c (x_iconify_frame): Handle case where frame was invisible.
5116 * s/hpux8.h (OLDXMENU_OPTIONS): Definition deleted.
5118 * ymakefile (really-oldXMenu): Pass down C_SWITCH_X_SYSTEM.
5120 * m/delta88k.h [USG5_4] (LIBX11_SYSTEM): Don't redefine in this case.
5122 * search.c (search_buffer): If n is 0, just return POS.
5124 1993-07-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5126 * s/usg5-4.h (BROKEN_TIOCGETC, BROKEN_TIOCGWINSZ): Add #undefs.
5128 * window.c (Fset_window_buffer): Clear window_end_{pos,valid}.
5130 * dispnew.c (Fsleep_for): If arg is 0, return right away.
5132 1993-07-26 Francesco Potortì (pot@spiff.gnu.ai.mit.edu)
5134 * m/delta.h (SWITCH_ENUM_BUG): Defined only for AT&T's pcc.
5135 (BSTRING): Deleted because they are stubs to the memory funcs.
5136 (memmove): Defined as safe_bcopy since memcpy is not safe.
5137 (HAVE_X_WINDOWS): Does not conditionally define anything any more.
5138 Added support fo the GNU C compiler bundled with R3V7.
5140 1993-07-26 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5142 * puresize.h [MULTI_FRAME] (PURESIZE): Increased to 210000.
5144 1993-07-25 Sam Dooley (dooley@watson.ibm.com)
5146 * keyboard.c (kbd_buffer_store_event): Apply all the modifiers bits
5147 before testing for quit_char and stop_character. Don't alter
5148 event->code, though.
5150 1993-07-25 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5152 * xselect.c (wait_for_property_change): Eventually time out with error.
5153 (x_reply_selection_request): XFlushQueue and UNBLOCK_INPUT
5154 before calling wait_for_property_change.
5155 (x_get_window_property): Simplify input blocking/unblocking.
5156 Don't delete the property here.
5157 (receive_incremental_selection): Delete property here.
5158 Call XSelectInput to enable and disable PropertyChangeMask.
5159 (x_get_window_property_as_lisp_data): And here.
5161 * process.c (wait_reading_process_input): Undo last two changes:
5162 when wait_for_cell, do not check the keyboard.
5164 * filelock.c: Fix typo in previous change.
5166 * xselect.c (lisp_data_to_selection_data): New arg NOFREE_RET.
5167 For a string, just return its data's address.
5168 (x_handle_selection_request): Pass new arg.
5169 If value comes back 1, don't call xfree.
5171 * xfns.c (MAXREQUEST): Defined.
5172 (Fx_server_max_request_size): New function.
5173 (syms_of_xfns): Set it up.
5175 * window.c (Fwindow_end): Don't assume WINDOW shows the current buffer.
5177 * s/386bsd.h (LOCALTIME_CACHE): Defined.
5178 (HAVE_SETSID): Defined.
5179 (LIB_STANDARD): Override, adding $(GNULIB_VAR).
5181 * emacs.c (main): Test LOCALTIME_CACHE.
5183 * filelock.c (getpwuid): Declare at top level, and not if __386bsd__.
5185 * keyboard.c (interrupt_signal): Tell Fdo_auto_save not to print msg.
5186 Print "Auto-save done" here.
5188 * fileio.c (Fdo_auto_save): Temporarily clear Vquit_flag.
5190 * xfns.c (Fx_create_frame): Typo in previous change.
5192 1993-07-24 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5194 * .gdbinit (xscrollbar): Fix typo specifying doc string.
5196 * process.c (Fprocess_status): Use Fget_process, to avoid error
5197 if unknown process name.
5199 * xfaces.c (face_name_id_number): Use assq_no_quit, not Fassq.
5201 1993-07-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5203 * keyboard.c (command_loop_1): Run post-command-hook first thing.
5205 * xterm.c (redraw_previous_char): New function.
5207 * xfns.c (Fx_create_frame): Don't look for default font
5208 if the caller has specified a valid font. Try several
5209 alternative font patterns.
5211 1993-07-23 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
5213 * mem-limits.h: [_LIBC]: Define BSD4_2.
5215 1993-07-23 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5217 * s/sco4.h (HAVE_SOCKETS): Define, if HAVE_INET_SOCKETS.
5219 * sunfns.c: Fix comment syntax. Put back the comment
5220 saying that we don't maintain this file.
5222 * xterm.c (XTread_socket) [! HAVE_X11R5]:
5223 Check for XK_Mode_switch and XK_Num_Lock, if defined.
5225 * m/hp9000s300.h (TEXT_START) [__GNUC__]: Define as 0.
5227 * intervals.h (Vinhibit_point_motion_hooks): Declared.
5228 * textprop.c (syms_of_textprop): Set up Lisp var.
5229 * intervals.c (set_point): Test it.
5231 1993-07-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5233 * s/irix5-0.h (PTY_OPEN): Use sigaction, not sigsetmask.
5235 * s/386bsd.h (DECLARE_GETPWUID_WITH_UID_T): Declared.
5236 * xrdb.c (getpwuid): Test DECLARE_GETPWUID_WITH_UID_T.
5238 * process.c (Fget_buffer_process): Delete doc string from
5239 second alternative definition.
5241 1993-07-22 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
5243 * ralloc.c (ALIGNED, ROUNDUP):
5244 Use `unsigned long int' instead of `unsigned int' for
5245 casting addresses and sizes. It matters on the 64-bit Alpha.
5247 * mem-limits.h [_LIBC]: Just include <sys/resource.h>, and skip
5250 1993-07-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5252 * keyboard.c (Fread_key_sequence): Doc fix.
5253 (read_key_sequence): Handle Vkey_translation_map.
5254 (kbd_buffer_get_event): Discard an event whose kind is no_event.
5256 * buffer.c (syms_of_buffer): Lisp var doc fixes.
5258 * m/att3b.h (NO_MODE_T): Defined.
5260 * intervals.c (graft_intervals_into_buffer): When TREE is null,
5261 pass buffer as 2nd arg to reproduce_tree.
5263 1993-07-21 Paul Eggert (eggert@twinsun.com)
5265 * print.c (float_to_string): Don't use uninitialized pointer `cp'.
5266 Set width to -1 at lose: and other places.
5267 Default to .17g, not .20g.
5269 1993-07-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5271 * buffer.c (Qmodification_hooks, Qinsert_in_front_hooks)
5272 (Qinsert_behind_hooks): Moved here.
5273 (syms_of_buffer): Lisp vars set up here.
5274 * textprop.c: No longer here.
5276 * alloc.c (compact_strings): Add USE_TEXT_PROPERTIES conditional.
5278 * intervals.h (Ftext_property_not_all): Fix typo in decl.
5280 * s/sunos4-1.h (SUNOS_LOCALTIME_BUG): Defined.
5282 * frame.c (Fdelete_frame): Allow deletion if there is some other
5283 visible (perhaps iconified) frame. Also allow deleting terminal frame
5284 if there are X frames.
5286 * s/sunos4shr.h (memmove): Defined.
5288 * m/att3b.h (memmove): Defined as macro.
5290 1993-07-20 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5292 * Makefile.in (xmakefile): Use CFLAGS after C_SWITCH_SYSTEM.
5294 * xfns.c (validate_x_resource_name): Call make_string properly.
5296 * m/next.h (X_NOT_POSIX): Defined.
5298 * s/sol2.h (BROKEN_TIOCGETC, BROKEN_TIOCGWINSZ): Add #undefs.
5300 * s/isc3-0.h (memmove): Delete extra parens in the safe_bcopy call.
5302 * m/ibmrs6000.h (LD_SWITCH_MACHINE): Add -bI:/usr/lpp/X11/bin/smt.exp.
5304 1993-07-19 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5306 * eval.c (Fwhile): If mocklisp, test for nonzeroness.
5308 * s/sunos4shr.h (SYSTEM_MALLOC): Add #undef.
5309 (GNU_MALLOC, REL_ALLOC): Defined.
5311 1993-07-19 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
5313 * ymakefile: config.h is in current directory, not ${srcdir}.
5315 1993-07-18 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5317 * Version 19.17 released.
5319 * xfns.c (Fx_create_frame): Block input around call to
5320 x_new_font. Test if the return value is a string, not if it's
5321 nil; x_new_font can return things besides nil and strings, to
5322 indicate error conditions.
5324 * window.c [not MULTI_FRAME] (Fdelete_windows_on): Set FRAME
5325 argument to Qt, instead of trying to typecheck it.
5327 * ymakefile (config_h): Set this to ${srcdir}/config.h; all the
5328 source dependencies mention $(config_h), but until now it never
5331 * xfns.c (Fx_open_connection): Don't trust HAVE_XRMSETDATABASE;
5332 use XrmSetDatabase only when HAVE_X11R5 is defined.
5334 * dispnew.c (direct_output_for_insert): By the time this function
5335 is called, we have already inserted the character into the buffer;
5336 the proper buffer position to pass to compute_char_face is point
5339 1993-07-17 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5341 * Makefile.in (C_SWITCH_SYSTEM): New variable, set by top-level
5343 (xmakefile): Pass it to the C preprocessor.
5345 * window.c (Fdelete_windows_on): New optional argument FRAME; if
5346 nil, delete windows on all frames. If t, delete windows on the
5347 selected frame only. If a frame, delete windows on that frame
5350 * intervals.c (split_interval_left, split_interval_right): Change
5351 OFFSET argument of these functions to be origin 0, not origin 1.
5352 This is what all the callers currently want.
5353 * intervals.c, textprop.c: All callers changed.
5355 * textprop.c (Ftext_property_not_all): Renamed from
5356 Ftext_property_all, and changed sense of return value, so that it
5357 returns useful information if not all characters have properties
5358 EQ to value. Now all the existential and universal questions can
5361 * textprop.c (syms_of_textprop): Don't forget defsubr for
5364 * textprop.c (Ftext_property_any, Ftext_property_all): Use EQ to
5365 compare property values, not Fequal.
5367 * xterm.c (x_term_init): Adjust message printed when we can't
5368 connect to the X server.
5370 * xfns.c (Vx_resource_name): Renamed from Vxrdb_name, and made a
5371 lisp-visible variable, so lisp/term/x-win.el can set it. Doc it
5372 for "internal use only"; no need for NEWS entry.
5373 (validate_x_resource_name): New function.
5374 (Fx_get_resource): Doc fix. References to Vxrdb_name renamed. Call
5375 validate_x_resource_name.
5376 (x_window): References to Vxrdb_name renamed. Call
5377 validate_x_resource_name.
5378 (Fx_open_connection): References to Vxrdb_name renamed. Instead
5379 of setting and validating its value here, just call
5380 validate_x_resource_name.
5381 (syms_of_xfns): Add DEFVAR_LISP for Vx_resource_name.
5383 1993-07-16 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5385 * keyboard.c (Vhelp_menu_bar_map): Deleted.
5386 (menu_bar_items): Move elts for events in Vmenu_bar_final_items to end.
5387 (syms_of_keyboard): Corresponding changes.
5389 1993-07-15 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5391 Consistently use the mark bit of the root interval's parent field
5392 to say whether or not the interval tree has been visited (and skip
5393 it when revisited), and the mark bit of the plist field to say
5394 whether or not that interval has been visited (and abort if
5395 revisited); don't try to use the plist mark bit for both
5397 * alloc.c (mark_interval_tree): Don't test if the interval tree
5398 has already been visited here; let the MARK_INTERVAL_TREE macro do
5399 that; avoid function call overhead. Mark the interval tree as
5400 having been visited by setting TREE->parent's mark bit.
5401 (MARK_INTERVAL_TREE): If the tree has been visited (according to
5402 I->parent's mark bit), don't call mark_interval_tree.
5403 (gc_sweep): Rebalance the interval trees of those large strings
5404 which are still alive. This also clears the mark bits of those
5405 trees' root intervals' parent fields.
5406 (compact_strings): Rebalance the interval tree of each small
5407 strings which is still alive. This also clears the mark bits of
5408 that tree's root interval's parent field. Since the string has
5409 moved, update the root interval's parent pointer to contain the
5411 * lisp.h (struct interval): Doc fix; explain the roles of the mark
5412 bits of the parent and plist members.
5414 * termhooks.h: In order to avoid declaring struct input_event
5415 (which contains Lisp_Objects) in those .c files which need access
5416 to the terminal hooks but don't #include lisp.h (like cm.c), test
5417 to see if the macro CONSP is #defined. We used to test XINT, but
5418 config.h will #define that everywhere on systems that use tailored
5421 * window.c (Fnext_window, Fprevious_window): Put these docstrings
5422 in comments; the strings are too long for some C compilers.
5424 * s/hpux9.h: Doc fix.
5426 1993-07-15 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5428 * ymakefile (DEBUG_MOLE): New variable; a shell expression which
5429 expands to -DDEBUG_MOLE on HP 9000/300's in the domain
5430 gnu.ai.mit.edu, and the empty string on all other machines.
5431 (alloc.o): Cite ${DEBUG_MOLE}, so DEBUG_MOLE is #defined when
5434 1993-07-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5436 * keyboard.c (read_char_menu_prompt): If the user rejects a menu,
5437 return t. This makes read_char also return t.
5438 (read_key_sequence): If read_char returned t, return -1.
5439 (Fread_key_sequence): If read_key_sequence returned -1, quit.
5440 (command_loop_1): If read_key_sequence returned -1, loop around.
5442 1993-07-15 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5444 * keyboard.c (menu_bar_one_keymap): If the key's binding is the
5445 symbol `undefined', don't try to take that symbol's cdr before
5446 passing it to menu_bar_item; pass the `undefined' binding itself,
5447 so menu_bar_item can remove bindings for the same key from result.
5449 1993-07-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5451 * buffer.c (Fbuffer_local_variables): For local var that is unbound,
5452 put just the symbol in the result, not a cons of (symbol . value).
5454 * keyboard.c (Qdisabled_command_hook): New variable.
5455 (Vdisabled_command_hook): Deleted.
5456 (syms_of_keyboard): Corresponding changes.
5457 (Fcommand_execute): Use Qdisabled_command_hook.
5459 * alloc.c (mark_object) [DEBUG_MOLE]: Add abort at beginning.
5461 * keyboard.c (Vhelp_menu_bar_map): New var.
5462 (syms_of_keyboard): Set up Lisp var for it.
5463 (menu_bar_items): Use Vhelp_menu_bar_map.
5465 1993-07-14 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5467 * textprop.c (Ftext_property_any, Ftext_property_all): New
5468 functions, from David Gillespie.
5469 * intervals.h (Ftext_property_any, Ftext_property_all): Declare them.
5471 * keyboard.c (read_key_sequence): Accept both strings and vectors
5472 as bindings in function-key-map.
5473 * keymap.c (Vfunction_key_map in syms_of_keymap): Doc fix.
5475 * keyboard.c (Fsuspend_emacs): Pass selected_frame as the first
5476 argument to change_frame_size, not 0. This function may be called
5477 in an Emacs compiled with multi-frame support.
5479 1993-07-13 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5481 * xterm.c (XTread_socket, UnmapNotify case): Add missing comment
5484 * intervals.c (graft_intervals_into_buffer): Properly compute
5487 1993-07-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5489 * minibuf.c (Fdisplay_completion_list): Run completion-setup-hook.
5491 1993-07-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5493 * textprop.c (Qinsert_in_front_hooks, Qinsert_behind_hooks): New vars.
5494 (syms_of_textprop): Set them up.
5495 * lisp.h (Qinsert_in_front_hooks, Qinsert_behind_hooks): Declared.
5496 (Qmodification_hooks): Declared.
5498 * intervals.c (verify_interval_modification):
5499 For insertion, run the insert-in-front-hooks and insert-behind-hooks,
5500 not the modification-hooks.
5501 * buffer.c (verify_overlay_modification): New function.
5502 (call_overlay_mod_hooks): New function.
5503 * insdel.c (prepare_to_modify_buffer): Call that.
5505 * keyboard.c (Qundefined): New variable.
5506 (syms_of_keyboard): Set up Qundefined.
5507 (menu_bar_items): Don't reverse the items.
5508 Process the maps in reverse order.
5509 (menu_bar_item): If definition is `undefined',
5510 delete any menu bar item already made, and don't make one.
5512 1993-07-12 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5514 * print.c (float_to_string): Distinguish between a precision of
5515 zero and an omitted precision. Do allow %.0f to produce strings
5516 containing no decimal point or exponent.
5517 (syms_of_print): Doc fix for float-output-format.
5519 * xfns.c (x_set_frame_parameters): Don't set the frame's size and
5520 position unless those parameters are actually specified in ALIST.
5522 * syntax.c (Fmodify_syntax_entry): Doc fix.
5524 1993-07-12 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
5526 * xterm.c, sysdep.c (F_SETOWN_BUG): Defined.
5527 * m/dpx2.h: New file.
5529 1993-07-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5531 * textprop.c (set_properties): Call modify_region.
5532 (remove_properties): Call modify_region before record_property_change.
5533 (add_properties): Likewise.
5535 1993-07-10 Jim Blandy (jimb@totoro.cs.oberlin.edu)
5537 * xrdb.c: Implement search for app-defaults directory and
5538 localized default databases, along with some other functionality
5540 #include <stdio.h>, since we call sprintf.
5541 [emacs] (malloc, realloc, free): #define these to xmalloc,
5542 xrealloc, and xfree.
5543 (x_get_string_resource, file_p): Add forward declarations for
5545 (x_customization_string): New variable.
5546 (x_get_customization_string): New function.
5547 (gethomedir): Return malloc'ed space of the right size, instead of
5548 writing into a fixed-size buffer; this means that our callers do
5549 not impose an arbitrary limit on file name length.
5550 (magic_file_p): Rewrite of decode_magic; actually do the
5551 substitutions, instead of expanding all %-escapes to "". Support
5552 the customization string. Return 0 or the expanded file name,
5553 instead of just zero or one. Allocate the space for the expanded
5554 file name ourselves, instead of writing into a fixed-size buffer
5555 passed to us; this removes an arbitrary limit.
5556 (search_magic_path): Rewrite of magic_searchpath_decoder. Return
5557 0 or the expanded file name, instead of just zero or one.
5558 Allocate the space for the expanded file name ourselves, instead
5559 of writing into a fixed-size buffer passed to us; this means that
5560 our callers do not impose an arbitrary limit on file name length.
5561 (get_system_app): Changed to work with search_magic_path.
5562 (get_user_app): Rewritten to work with search_magic_path, and not
5563 to assume that the values of XAPPLRESDIR is a single directory.
5564 (get_user_db): Properly use the new version of gethomedir.
5565 (get_environ_db): Remove arbitrary limit on length of host name.
5566 (x_load_resources): Take a new argument, myname. Call get_user_db
5567 early to obtain the customization string.
5568 Changes to stand-alone testing code.
5569 * xfns.c (Fx_open_connection): Set Vxrdb_name early, and pass it
5570 to x_load_resources.
5572 * keymap.c (syms_of_keymap): Doc fix.
5574 1993-07-09 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5576 * process.c (wait_reading_process_input): If wait_for_cell, do call
5577 swallow_events and do_pending_window_change when appropriate.
5579 1993-07-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
5581 * editfns.c (region_limit): Declare Vmark_even_if_inactive.
5583 * callint.c (syms_of_callint):
5584 Fix DEFVAR_LISP for Vmark_even_if_inactive to use right
5585 Lisp symbol name (without V prepended).
5587 1993-07-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
5589 * callint.c (check_mark): Don't check mark-active unless in
5590 transient-mark-mode.
5591 For inactive mark, signal mark-inactive instead of error with a
5593 * editfns.c (region_limit): Don't error if Vmark_even_if_inactive
5595 When the mark is inactive and that is a no-no, signal
5596 mark-inactive instead of using error with a message.
5597 * data.c (syms_of_data): Staticpro Qmark_inactive.
5598 * data.c: Define Qmark_inactive.
5599 (syms_of_data): Initialize it.
5600 * lisp.h: Declare Qmark_inactive.
5602 1993-07-07 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5604 * editfns.c (Fformat): Since floats occupy two elements in the
5605 argument list passed to doprnt, we must use separate indices for
5606 the array of arguments passed to Fformat, and the array of
5607 arguments to be passed to doprnt.
5609 * .gdbinit: Add size to geometry spec.
5610 Specify sevenbit-strings in set print.
5611 (xfloat): New command.
5613 1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5615 * Version 19.16 released.
5617 * ymakefile [not ORDINARY_LINK && __GNUC__ && __GNUC__ > 1 && not
5618 LIB_GCC] (LIB_GCC): Use "$(CC)" instead of "gcc".
5620 1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5622 * textprop.c (copy_text_properties): Pass a copy of POS to
5623 validate_interval_range; that function increments its arguments,
5624 which isn't what we want.
5626 * fns.c (Fsubstring, concat): Pass all six arguments to
5627 copy_text_properties.
5629 * intervals.c (find_interval): Doc fixes, computation of
5630 tree->position rearranged for clarity.
5632 * intervals.c (find_interval): Consistently treat POSITION as an
5633 actual buffer position, i.e. origin 1. The old code seemed
5634 undecided on this point. Treat the end of the buffer as being
5635 part of the rightmost interval.
5636 (adjust_intervals_for_insertion): Consistently treat POSITION as
5638 (interval_deletion_adjustment): The exception: FROM should be
5639 origin zero here. Consistently treat it as such. Simplify code
5640 which shrinks and possibly deletes intervals.
5641 (adjust_intervals_for_deletion): Treat start as origin 1; our
5643 (set_point): Use buffer positions throughout, not a mix of buffer
5644 posns and origin zero posns.
5645 (get_local_map): Remove special case for POSITION at end of buffer;
5646 find_interval handles that case correctly.
5647 (verify_interval_modification): Remove special case for START at
5649 * textprop.c (validate_interval_range): End-of-buffer/string
5650 positions no longer need special handling.
5652 * intervals.c (make_new_interval): #if 0 this out. Nobody calls it.
5654 * textprop.c (copy_text_properties): New function, from David
5656 * intervals.h: Declare copy_text_properties.
5657 * fns.c: #include "intervals.h".
5658 (Fsubstring): Copy text properties to result string.
5659 (concat): Copy text properties to result string.
5660 * ymakefile (fns.o): Note that this depends on INTERVAL_SRC.
5662 * print.c: Get rid of extra space at the end of print syntax for
5663 strings with intervals.
5664 [USE_TEXT_PROPERTIES] (print): Don't print a space before the
5665 interval property lists.
5666 [USE_TEXT_PROPERTIES] (print_interval): Print a space before this
5667 internal's properties, not after.
5669 * m/pmax.h (C_SWITCH_X_MACHINE): Set this to
5670 "-DNeedFunctionPrototypes=0", to avoid lossage in DEC X11 header
5672 * ymakefile (really-oldXMenu): Pass C_SWITCH_X_MACHINE to the
5675 * doc.c (Fsubstitute_command_keys): Pass all five arguments to
5678 1993-07-05 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5680 Compare the values of text properties using EQ, not Fequal.
5681 * intervals.c (intervals_equal): Call EQ, not Fequal.
5682 * textprop.c (interval_has_all_properties, add_properties): Same.
5684 * textprop.c (validate_interval_range): Don't increment both
5685 *begin and *end if they point to the same thing.
5686 (validate_plist): Call QUIT while scanning LIST.
5688 * intervals.c (intervals_equal): Test the return value of Fequal
5689 against Qnil, not 0.
5691 * keyboard.c (Vdouble_click_time): Renamed from double_click_time,
5692 and made a Lisp_Object instead of an int.
5693 (make_lispy_event): If Vdouble_click_time is t, impose no time
5694 limit on double-clicks.
5695 (syms_of_keyboard): DEFVAR_LISP (not DEFVAR_INT)
5696 Vdouble_click_time (not double_click_time), and adjust doc string
5697 to say that `nil' means no double clicks, and `t' means no time
5700 1993-07-04 Jim Blandy (jimb@churchy.gnu.ai.mit.edu)
5702 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): New
5705 * s/sunos4-1.h (LIBS_SYSTEM): Don't link against -lresolv; that's
5706 only needed for misconfigured systems.
5708 1993-07-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5710 * keymap.c (describe_map_tree): When inserting TITLE, mention PREFIX.
5711 Insert newline at end, if inserted anything else.
5712 (describe_buffer_bindings): Corresponding changes.
5713 For minor mode maps, build up a title string,
5714 then let describe_map_tree insert it.
5716 * eval.c (Fsignal): Clarify error message.
5718 1993-07-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5720 * keyboard.c (read_char): After Fgarbage_collect, call redisplay.
5722 1993-07-03 Jim Blandy (jimb@churchy.gnu.ai.mit.edu)
5724 * frame.c (Fredirect_frame_focus): Allow redirection of focus of
5727 * s/sunos4-1.h (LIBS_SYSTEM): Make this be -lresolv, so we get the
5728 versions of gethostbyname and such that use the DNS.
5730 1993-07-03 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
5732 * fileio.c (Frename_file):
5733 After prompting for ok-if-already-exists, pass only nil or
5734 t to copy-file, never an integer.
5736 1993-07-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5738 * keymap.c (Faccessible_keymaps): Doc fix.
5740 1993-07-02 Jim Blandy (jimb@churchy.gnu.ai.mit.edu)
5742 * textprop.c (set_properties): Don't try to make undo records if
5745 1993-07-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5747 * keyboard.c (read_key_sequence): When inserting `menu-bar' prefix,
5748 modify the position field to prevent doing so twice.
5749 Do all these forms of event expansion after replayed events also.
5750 Set last_real_key_start before each key.
5751 Use last_real_key_start in criterion for being the first event.
5753 * process.c (wait_reading_process_input): Do include the keyboard
5754 in the select, if read_kbd was a cons cell.
5756 1993-07-01 Jim Blandy (jimb@churchy.gnu.ai.mit.edu)
5758 * xterm.c (XTread_socket): When handing non-synthetic
5759 ConfigureNotify events, don't refer to the parent window
5762 * textprop.c (set_properties): Add undo records to remove entirely
5763 new properties. Only record old property values for those
5764 properties whose values have changed.
5766 1993-07-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5768 * callint.c (Vmark_even_if_inactive): New var, with Lisp variable.
5769 (check_mark): Use it.
5771 1993-07-01 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5773 * xfaces.c [XOS_NEEDS_TIME_H]: #undef USG while #including
5774 <X11/Xos.h>, so that file doesn't try to define struct timeval and
5777 * xterm.c (frame_highlight, frame_unhighlight): Don't test
5778 Vx_no_window_manager. BLOCK_INPUT around the border manipulation
5781 1993-06-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5783 * xterm.c (XTread_socket): Initialize event_found to zero, and
5784 pass a zeroed timeout to select, not a null pointer; the latter
5785 means "wait forever".
5787 * s/hpux8.h (random, srandom): No need to define these to be
5788 foo_random and foo_srandom; autoconf should autodetect when the
5789 real random functions are available.
5791 * xdisp.c (redisplay): If we're not already showing the region,
5792 then don't disable the single-line optimizations just because the
5793 mark isn't where we last displayed it.
5795 1993-06-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5797 * keyboard.c (syms_of_keyboard): Doc fix.
5798 (Vhelp_char): Renamed from help_char.
5799 (Vprefix_help_command): New Lisp variable.
5800 (read_key_sequence): Use that, for help char after prefix key.
5802 * keyboard.c (kbd_buffer_get_event):
5803 Clear f before calling mouse_position_hook.
5805 * emacs.c, callproc.c (PRIO_PROCESS): Definition deleted.
5807 * vm-limit.c (check_memory_limits): Make data_size and five_percent
5810 1993-06-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5812 * keyboard.c (kbd_buffer_get_event): Correctly generate
5813 switch-frame events when reading mouse motion events.
5815 1993-06-29 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5817 * xterm.c: Add CPP tangle from process.c to get definitions for
5819 (XTread_socket): Use those macros when testing for dropped connection.
5821 1993-06-29 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5823 * alloc.c (mark_object): Add aborts in Lisp_Symbol case.
5825 * keymap.c (describe_map_tree): Insert key_heading here.
5827 (describe_buffer_bindings): Corresponding changes.
5829 * process.c (wait_reading_process_input): Use SIGIO only if defined.
5831 * keymap.c (shadow_lookup): New function.
5832 (describe_map_2): Call it. SHADOW is now a list of maps.
5833 (describe_vector): Likewise.
5834 (describe_map): SHADOW is now a list of maps.
5835 (describe_map_tree): Likewise.
5836 (describe_buffer_bindings): Build suitable list to pass as SHADOW.
5837 (Faccessible_keymaps): New arg PREFIX. Callers changed.
5838 (describe_map_tree): New arg PREFIX.
5839 (Fdescribe_bindings): New arg PREFIX.
5840 Pass to describe_buffer_bindings along with buffer.
5841 (describe_buffer_bindings): Extract PREFIX and pass along.
5843 1993-06-28 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5845 * keymap.c (describe_map_2): Cleanups.
5846 Check there's no previous definition in same keymap.
5848 1993-06-24 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5850 * keyboard.c (read_char): Don't do idle autosaves if we're not
5853 1993-06-23 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5855 * xfns.c (Fx_create_frame): Check for internalBorder resource, as
5856 well as internalBorderWidth.
5858 * xterm.c (XTread_socket): Remove #if 0''s around code which tests
5859 for dropped connection (i.e. sigio but no events).
5861 1993-06-22 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5863 * keyboard.c (menu_bar_items, read_key_sequence): Use
5864 current_global_map, not global_map; the latter is only meant to be
5865 used for initial_define_key.
5866 * commands.h: Doc fix.
5868 * commands.h (Vglobal_mouse_map): Removed; unused.
5869 * xfns.c (Vglobal_mouse_map): Same.
5871 * buffer.c (list_buffers_1): Make desired_point a lisp object; set
5872 it to nil, unless we find the current buffer.
5873 (Flist_buffers): Don't try to set point in the buffer list unless
5874 list_buffers_1 actually returns an integer. Don't use a full
5875 save_excursion; just save and restore the buffer.
5877 Separate parameter faces (those created and modified by the user)
5878 from the computed faces (the combinations created by
5879 compute_char_face), so that we don't waste global face id's.
5880 * xterm.h (struct x_display): Replace the fields faces and n_faces
5881 with fields param_faces, n_param_faces, computed_faces,
5882 n_computed_faces, and size_computed_faces.
5883 (FRAME_FACES, FRAME_N_FACES): Replaced by...
5884 (FRAME_COMPUTED_FACES, FRAME_N_COMPUTED_FACES, FRAME_PARAM_FACES,
5885 FRAME_N_PARAM_FACES): New macros.
5886 * xfaces.c: Doc fixes.
5887 (init_frame_faces): Call new_computed_face to create entries for
5888 the default and mode line faces. Use the FRAME...PARAM_FACES
5890 (free_frame_faces): Use the FRAME...PARAM_FACES and
5891 FRAME...COMPUTED_FACES macros. Don't use the copy flag; all
5892 parameter faces have real X resources, and all computed faces just
5893 have copies. Free both the parameter and computed face arrays.
5894 (new_computed_face): New function.
5895 (intern_computed_face): Renamed from intern_frame_face; callers
5896 changed. Call new_computed_face.
5897 (ensure_face_ready, compute_char_face, compute_glyph_face): Use the
5898 FRAME...PARAM_FACES macros.
5899 (recompute_basic_faces): Use the FRAME...PARAM_FACES and
5900 FRAME...COMPUTED_FACES macros. Produce the computed faces by
5901 starting with the base faces and merging in the parameter faces.
5902 (Fset_face_attribute_internal): Use the FRAME...PARAM_FACES
5903 macros. Just call recompute_basic_faces if the default or mode
5904 line faces have changed.
5905 * xfns.c (Fx_list_fonts): Use the FRAME...PARAM_FACES macros.
5906 * xterm.c (dumpglyphs): Use the FRAME...COMPUTED_FACES macros.
5907 * dispextern.h (struct face): Remove the copy member. This is no
5908 longer necessary; all computed faces are copies, and no parameter
5911 * xfaces.c (face_vector, nfaces, nfaces_allocated): Make these
5914 * xdisp.c (redisplay_window): Remember to compute end relative to
5915 the start of the visible region, too.
5917 1993-06-21 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5919 * xrdb.c (get_user_db): Remember to free the screen-local resource
5920 string after we've merged its data into db.
5922 * keyboard.c (make_lispy_event): Added detection of double-click
5923 and triple-click events.
5924 (parse_modifiers_uncached, apply_modifiers_uncached): Same.
5925 (read_key_sequence): Coerce double-clicks to clicks, and triple-clicks
5926 to double-clicks or clicks, by analogy with drag events.
5927 (double_click_time): Added variable.
5928 * termhooks.h: Added multi-click event modifier bits.
5930 1993-06-21 Richard Stallman (rms@mole.gnu.ai.mit.edu)
5932 * textprop.c (Fremove_text_properties, Fadd_text_properties):
5933 Really do next_interval when skipping the first interval.
5935 1993-06-20 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5937 * xfns.c (Fx_open_connection): Remember to block input while
5938 calling x_load_resources.
5939 * xrdb.c: Undo change of June 19th; it was a BLOCK_INPUT problem,
5940 not a server-specific bug.
5942 * alloc.c (Fgarbage_collect): If the minibuffer is active, don't
5943 display the "...done" message; allow the minibuffer to show again.
5945 * config.h.in (HAVE_LONG_FILE_NAMES): Add an #undef, for autoconf
5946 to chew on. Re-arrange macros to reflect the ordering of the
5947 corresponding macros in configure.in, to facilitate this kind of
5950 1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5952 * version 19.15 released.
5954 1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
5956 * puresize.h (PURESIZE): Up this to 205000 for MULTI_FRAME Emaces,
5957 and 190000 for non-MULTI_FRAME Emaces.
5959 * xfaces.c (recompute_basic_faces): This shouldn't be declared static.
5961 * xrdb.c (get_user_db): Some NCD xterms seem to hang in
5962 XScreenResourceString. Consult the ServerVendor and VendorRelease
5963 variables to see if we're talking to such a server.
5965 * xterm.c (XTread_socket): Never treat a modifier key as a
5966 non_ascii_keystroke.
5968 * emacs.c (Fkill_emacs): Pass third argument to shut_down_emacs.
5969 * lisp.h (shut_down_emacs): Doc fix.
5971 1993-06-18 Jim Blandy (jimb@geech.gnu.ai.mit.edu)
5973 * frame.c (Fmake_frame_visible): Make this interactively callable;
5974 frames can accept input while iconified, so it makes sense to put
5977 * xfaces.c: Add forward declaration for recompute_basic_faces.
5979 * fileio.c (Fset_visited_file_modtime): We're only passing two
5980 arguments to the file name handler; use call2, not call3.
5982 Changes for Irix 4.0, tested this time:
5983 * s/irix4-0.h: Get rid of our fake definitions for setpgrp and
5985 * callproc.c (Fcall_process): Go ahead and use the USG calling
5986 convention for setpgrp.
5987 * ymakefile (pre-crt0.o): Add rule for this. Perhaps it will help
5988 separate-source-directory compilation.
5989 * emacs.c (shut_down_emacs): Some USG systems #define
5990 EMACS_HAVE_TTY_PGRP; call getpgrp as appropriate for such systems.
5991 * sysdep.c (sys_suspend): Call getpgrp as appropriate for USG and
5994 * sysdep.c (rename): Make arguments const. autoconf #defines
5995 const away on systems which don't have it; any system with
5996 prototypes will declare the arguments const (the ones to which I
5997 have access do); and systems without prototypes won't notice.
5999 * process.c [IRIX] (create_process): Don't put child in process
6000 group zero before opening the tty; Irix is like USG in this
6003 * s/isc2-2.h, s/linux.h, s/usg5-4.h, m/alliant-2800.h, m/convex.h,
6004 m/pfa50.h: Remove #definition of HAVE_CLOSEDIR; autoconf figures
6007 * xfns.c: Always #include "bitmaps/gray.xbm"; the bitmaps seem to
6008 be missing on some systems, and there's no point in having
6009 configure check; it should work fine to always use our copy.
6011 * minibuf.c (Fread_minibuffer): Add missing semicolon after
6014 1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6016 * Version 19.14 released.
6018 1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6020 * m/iris4d.h (LIB_STANDARD): Do *not* include -lbsd. We are
6021 now calling the BSD[sg]etpgrp functions directly, so this library
6022 is not needed; it just provides the BSD[sg]etpgrp functions under
6023 the [sg]etpgrp names.
6025 * callproc.c [IRIX] (child_setup): Don't call setpgrp this time.
6026 It's already been called up in Fcall_process, and create_process.
6028 * callproc.c (Fcall_process, child_setup): If IRIX is #defined,
6029 call setpgrp with arguments, even if USG is #defined.
6030 * process.c [IRIX] (create_process): Don't call setpgrp before
6031 opening the pty. Call it after doing the TIOCNOTTY ioctl.
6033 * xfaces.c (compute_base_face): Initialize the face's stipple.
6034 Although we don't use this feature now, face_eql notices it.
6036 * xfaces.c (compute_base_face): Set cached_index to an invalid
6037 index, to avoid an unnecessary comparison.
6039 * keyboard.c (read_key_sequence): Don't confuse mock input with
6040 function-key-map expansion, and continue reading mock events when
6041 the current sequence is unbound.
6043 * keyboard.c (read_key_sequence): After providing a prefix symbol
6044 for a mouse event, modify the mouse event to indicate that that
6045 won't need to be done again, by putting the event's position
6048 * keyboard.c (read_key_sequence): When returning mock input which
6049 has run off the end of the current maps, make sure the events get
6050 echoed, and make it into this-command-keys.
6052 * keyboard.c (read_key_sequence): When re-reading a previously
6053 read mouse click which requires a prefix symbol, make sure to set
6054 last_real_key_start appropriately, so we can properly drop
6057 1993-06-17 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6059 * ymakefile (really-oldXMenu): Pass C_SWITCH_MACHINE down.
6061 * intervals.c (verify_interval_modification): Don't just test
6062 Qread_only prop; use INTERVAL_WRITABLE_P.
6064 * syntax.c (scan_lists, Fforward_comment): #if 0 the code
6065 to treat two-character comment enders with a special shortcut.
6067 1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6069 * config.h.in (HAVE_CLOSEDIR): Add an #undef for autoconf to
6071 * sysdep.c (closedir): Only define this if autoconf can't find
6072 HAVE_CLOSEDIR. If we're running under solaris (defined (sun) &&
6073 defined (USG5_4)), then don't free the buffer separately.
6075 * keyboard.c (read_key_sequence): If we add events to a key
6076 sequence that didn't come from the input stream (e.g. `mode-line'
6077 prefixing a mouse click, or an expansion from function-key-map),
6078 and end up with a sequence that runs off the end of the current
6079 maps, return the entire key sequence, not just the initial portion
6080 which was bound or unbound.
6082 * xdisp.c (redisplay_window): Do not subtract one from start
6083 before passing it to the set_vertical_scroll_bar_hook.
6085 * lisp.h (CHECK_LIST, CHECK_STRING, CHECK_CONS, CHECK_SYMBOL,
6086 CHECK_VECTOR, CHECK_BUFFER, CHECK_WINDOW, CHECK_LIVE_WINDOW,
6087 CHECK_PROCESS, CHECK_NUMBER, CHECK_NATNUM, CHECK_MARKER,
6088 CHECK_NUMBER_COERCE_MARKER, CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT,
6089 CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY): Wrap a do
6090 ... while (0) around these compound statements to make them
6091 syntactically equivalent to a single statement.
6093 1993-06-16 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
6095 * editfns.c (Finsert_buffer_substring): Doc fix.
6097 1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6099 Don't let the 'B' interactive spec default to buffers viewed in
6101 * buffer.c (Fother_buffer): Pass Qt as the second argument
6102 to Fget_buffer_window.
6103 * window.c (window_loop): In GET_BUFFER_WINDOW case, ignore
6105 (Fget_buffer_window): Change doc string to mention that passing Qt
6106 for the FRAME argument returns windows on visible frames only.
6108 Changes for correct pgrp behavior; approach suggested by Bob
6109 Glickstein <bobg@zindigo.z-code.com>:
6110 * m/iris4d.h (LIB_STANDARD): Do list -lbsd here.
6111 * s/irix4-0.h (getpgrp, setpgrp): #define these to call BSDgetpgrp
6113 (GETPGRP_NO_ARG): Don't #define this.
6114 * emacs.c (main): Don't test GETPGRP_NO_ARG.
6115 * sysdep.c (sys_suspend): Don't test GETPGRP_NO_ARG.
6117 * Makefile.in (CPP): New variable, set by the top-level Makefile.
6119 * m/delta88k.h (HAVE_GETTIMEOFDAY): Don't #define this; autoconf
6121 (LIBS_SYSTEM): Don't attempt to #define this if we already have a
6122 definition of LIB_SYSTEM from s/usg5-4.h.
6124 * unexec.c [HPUX] (sbrk): This returns a void *.
6126 * window.c (check_frame_size): Allow minibuffer-only frames to be
6129 * frame.c (store_frame_param): Fix error message punctuation.
6131 * callproc.c [IRIX] (child_setup): Don't set the pgroup.
6133 * s/isc3-0.h (memmove): #define this to call safe_bcopy.
6135 * buffer.c (list_buffers_1): Return the desired point.
6136 (Flist_buffers): Put point there in the buffer summary.
6138 Bring mumbleclean targets into conformance with GNU coding standards.
6139 * Makefile.in (mostlyclean): New target.
6140 (clean): Just call mostlyclean. Get rid of ../etc/DOC too.
6141 (distclean): Use clean to do most of the work.
6142 Get rid of ../etc/DOC-* too.
6143 (realclean): New target.
6145 * xdisp.c (redisplay_window): Do not subtract BEGV to compute
6146 the scroll bar handle's end.
6148 1993-06-15 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6150 * xmenu.c (xmenu_show): Store 0 in *ERROR at the beginning.
6152 * fileio.c (Finsert_file_contents): Two new args, BEG and END.
6154 * intervals.c (adjust_intervals_for_insertion): By default, copy
6155 properties from before the insertion.
6157 1993-06-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6159 * syntax.c (scan_sexps_forward): Set state.comstart to before the
6160 comment starter, not after.
6162 * xmenu.c (Fx_popup_menu): Call keymap_panes right in one-keymap case.
6164 1993-06-14 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6166 * s/linux.h (LIBS_MACHINE, HAVE_SYSVIPC): Set the former to -lipc,
6167 and #define the latter.
6169 * xdisp.c (display_text_line): Use temporary variable.
6171 1993-06-14 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6173 * window.c (Fdelete_window): Handle deleting a parent of the
6176 1993-06-13 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6178 * fileio.c (Fset_visited_file_modtime): Don't give the handler
6179 the filename as an argument.
6181 * syntax.c (scan_lists, Fforward_comment): Pass 0 as commentstop arg
6182 to scan_sexps_forward.
6183 (scan_sexps_forward, char_quoted): Now static.
6184 (describe_syntax, describe_syntax_1): Now static.
6186 * undo.c (Fprimitive_undo): Rename arg to N to avoid conflict.
6188 * window.c (Fdelete_window): Mostly undo last change.
6189 Don't initialize `frame' in the declaration.
6191 * keymap.c: Make prefix keys work with keymap inheritance
6192 by creating an inheritance structure for each subkeymap
6193 that we create in the inheriting keymap.
6194 (access_keymap): New arg NOINHERIT. All calls changed.
6195 (define_as_prefix): New function.
6196 (Fdefine_key): Use them.
6198 1993-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6200 * emacs.c (shut_down_emacs): New arg STUFF. Stuff input here.
6201 (Fkill_emacs, fatal_error_signal): Pass new arg.
6202 * xterm.c (x_connection_closed): Pass new arg.
6204 * dired.c (Ffile_attributes): Give -1 as size if size won't fit.
6206 * intervals.c (set_point): When moving over invis chars,
6207 don't screw up at end of buffer.
6209 * eval.c (call5, call6): New functions.
6210 (call1, call2, call3, call4): Renumber the args.
6211 * lread.c (Fload): Use call5.
6212 * fileio.c (Fcopy_file): Pass all the args to the handler.
6213 (Fwrite_region): Use call6.
6214 (Frename_file): Look for handler for newname.
6215 (Fadd_name_to_file): Pass arg ok_if_already_exists to handler.
6216 (Fmake_symbolic_link): Likewise.
6217 (Ffile_newer_than_file_p): Check both file names for handler.
6219 1993-06-12 John Hughes (john@moonlite.CalvaCom.fr)
6221 * term.c (term_get_fkeys): Use `prior', not `previous', for %8/kP.
6223 1993-06-12 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6225 * sysdep.c (child_setup_tty): Remove duplicate settings for VQUIT
6228 * sysdep.c [ultrix] (init_sys_modes): Don't set LLITOUT; it
6229 disables the meta key.
6231 * frame.c (Fmouse_position, Fset_mouse_position): Doc fix.
6233 * xfns.c [! HAVE_X11R5] (Fx_rebind_key): Recognize that
6234 XK_Mode_switch and XK_Num_Lock are modifier keysyms too.
6236 * xterm.c (XTset_vertical_scroll_bar): Use double type for
6237 intermediate results in scaling.
6239 1993-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6241 * undo.c (syms_of_undo): Set up Qinhibit_read_only.
6242 (Fprimitive_undo): Sometimes bind inhibit-read-only to t.
6244 * minibuf.c (read_minibuf): Set and use mini_frame only if MULTI_FRAME.
6246 * xdisp.c (echo_area_display): Use XFASTINT on ->height.
6247 (copy_rope, copy_part_of_rope): Access *f as Lisp_Object.
6249 * window.c (Fdelete_window): Make `frame' a FRAME_PTR and use as such.
6251 * undo.c (record_delete): Always use XFASTINT on sbeg.
6252 (Fprimitive_undo): Add missing `else'. Add USE_TEXT_PROPERTIES
6253 conditional for calling Fput_text_property. Use XINT on high, low.
6255 * process.c (start_process_unwind): Use XINT.
6257 * syntax.c (Fset_syntax_table): Add XFASTINT.
6259 1993-06-12 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6261 * xterm.c (x_error_quitter, x_io_error_quitter): Remove calls to
6262 abort. We can always run Emacs with _Xdebug set to 1.
6264 * ymakefile (really-oldXMenu): Remember backslash to extend command.
6266 * keyboard.c (read_key_sequence): When we generate a prefix symbol
6267 for a mouse event, store the actual mouse event in
6268 unread_command_events, so we don't lose it if the symbol isn't
6271 * config.h.in (HAVE_XRMSETDATABASE, HAVE_RANDOM, HAVE_LIBXBSD):
6272 Add #undefs for these.
6273 Dyke out code requesting -lXbsd and HAVE_RANDOM for XFREE386.
6274 * xfns.c (Fx_open_connection): Test HAVE_XRMSETDATABASE instead of
6275 NO_XRM_SET_DATABASE; the latter isn't used any more.
6276 * m/delta88k.h, m/tekXD88.h, s/linux.h, s/usg5-4-2.h (HAVE_RANDOM):
6277 Dyke out these #definitions; to avoid conflict with autoconf.
6279 * ymakefile (really-oldXMenu): Explicitly pass CC, CFLAGS, and
6280 MAKE to the oldXMenu make.
6282 * window.c (Fprevious_window): Use FRAME_HAS_MINIBUF_P to decide
6283 if the frame has a minibuffer; FRAME_MINIBUF_WINDOW points to the
6284 surrogate on minibufferless frames, not nil.
6286 1993-06-12 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6288 * keyboard.c (read_char): Set c properly as a Lisp int.
6289 (command_loop_1): Delete spurious use of XINT on c, a char.
6291 * frame.c: Doc fixes.
6293 * data.c (cons_to_long): Declare top, bot as Lisp_Object.
6295 * floatfns.c (Fexpt): New local `val' for making integer to return.
6297 * keymap.c (Fcopy_keymap): Check Fkeymapp value with NILP.
6298 (get_keymap_1): Add missing semicolon.
6299 (describe_vector_princ): Align to column 16.
6301 * emacs.c (main) [GETPGRP_NO_ARG]: Really pass no arg to getpgrp.
6303 1993-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6305 * xterm.c (XTmouse_position): Don't set *f at all unless we win.
6307 * process.c (read_process_output): Don't deactivate the mark.
6308 Do restore Vdeactivate_mark, so that no one else deactivates it.
6310 * buffer.c (Fgenerate_new_buffer_name): GENTEMP is the value to
6311 compare against IGNORE.
6313 1993-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6315 Interact properly with shells lacking job control (sh, rc, es...)
6316 * sysdep.c [BSD] (inherited_pgroup): New variable.
6317 (narrow_foreground_group, widen_foreground_group): New functions.
6318 (init_sys_modes): Call narrow_foreground_group.
6319 (reset_sys_modes): Call widen_foreground_group.
6320 * emacs.c [BSD] (inherited_pgroup): Add extern declaration.
6321 [BSD] (main): Set inherited_pgroup, and put ourselves in our own
6324 1993-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6326 * xfns.c (syms_of_xfns): Don't set up Qicon.
6327 (Qicon): Declaration deleted.
6328 * frame.h (Qicon): Declared.
6330 * frame.c (Fmouse_position): Set up defaults before calling the hook.
6332 1993-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6334 * xdisp.c (redisplay_window): Don't call try_window_id if the
6335 window isn't starting at the beginning of the line.
6337 * window.c (Fprevious_window): Typo.
6339 1993-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6341 * ymakefile (alloca.o): Delete allocatem.c, not allocax.c.
6343 * textprop.c (Fset_text_properties): No special case for props = nil.
6345 * xfns.c (Fx_list_fonts): If names is 0, just return nil.
6347 1993-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6349 * xterm.c (x_new_font): If font_names is zero, that's all the
6350 indication we get that no matches were found.
6352 * s/isc3-0.h (LIB_X11_LIB): #undef this, to remove the value
6353 inherited from usg5-3.h; ISC doesn't have libX11_s.
6354 (LIBX11_SYSTEM): Link against the static -lc, not -lc_s.
6356 1993-06-10 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6358 * lread.c (Fload): Forward all 4 args to magic-name handler.
6360 1993-06-10 Shane Hartman (shane@nugget.spr.com)
6362 * window.c (Fscroll_left): Make argument optional.
6363 (Fscroll_right): Ditto.
6365 1993-06-10 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6367 * search.c (Flooking_at, Fstring_match, fast_string_match,
6368 search_buffer): Don't block input while calling searching and
6369 matching functions. These functions may not call malloc under
6370 Emacs anyway, and we need to be able to check for C-g.
6372 * xrdb.c (get_user_db): Get the screen-specific database too.
6374 * syntax.c (scan_lists, Fforward_comment): Call scan_sexps_forward
6375 with the proper number of arguments.
6377 * sysdep.c: Remove clause for DGUX support of FASYNC; add clause
6378 to #undef FASYNC if BROKEN_FASYNC is #defined.
6380 * filelock.c: Test HAVE_LONG_FILE_NAMES, not SHORT_FILE_NAMES, to
6381 interface nicely with autoconf.
6382 * m/delta.h: Don't #define SHORT_FILE_NAMES; autoconf does this
6385 * s/dgux.h: Changes from Paul M Reilly <pmr@rock.concert.net>:
6386 (BSD4_4, SVR4, HAVE_SETSID, HAVE_UNIX_DOMAIN): #define these.
6387 (FIRST_PTY_LETTER): This is 'r', not 'p'.
6388 (HAVE_TERMIO, SIGNALS_VIA_CHARACTERS): Don't #define these.
6389 (HAVE_TERMIOS): #define these instead.
6390 (XREBINDKEYSYM): Don't #define.
6391 Test THIS_IS_YMAKEFILE instead of MAKING_MAKEFILE.
6392 (sigmask, sigpause): #undef these after #including <signal.h>.
6393 (LD_SWITCH_SYSTEM, START_FILES, LIBS_SYSTEM, LIB_GCC): #define
6394 these to avoid problems with /lib/crt0.o.
6395 (C_DEBUG_SWITCH, C_OPTIMIZE_SWITCH): #define these.
6397 * s/dgux.h (BROKEN_FASYNC): #define this.
6399 * fileio.c (Frename_file): Pass all arguments to the file name handler.
6400 * eval.c (call4): New function.
6402 1993-06-09 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6404 * s/linux.h (SIGNALS_VIA_CHARACTERS): Don't #define this.
6406 * process.c (sigchld_handler): Add cast, to avoid warnings on Linux.
6407 (Fopen_network_stream): Cast the second argument to connect, to
6408 avoid warnings on any system that provides prototypes for connect.
6410 * xdisp.c (display_text_line): Handle case where line ends in a
6411 continuation character but we never actually displayed any buffer
6412 text (due to minibuffer prompt).
6414 * xterm.c (x_is_vendor_fkey): New function.
6415 (XTread_socket): Call it to recognize vendor-specific function keys.
6417 * s/dgux.h: Move #definition of SYSTEM_MALLOC outside of
6418 MAKING_MAKEFILE conditional. No harm.
6420 * xfaces.c (init_frame_faces): Remove assumption that the selected
6421 frame must be an X frame whenever there is already an X frame.
6423 1993-06-08 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6425 * alloc.c (emacs_blocked_malloc, emacs_blocked_realloc): Cast the
6426 return values of malloc and realloc, to placate compilers.
6428 1993-06-08 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6430 * window.c (Fprevious_window): When changing frames,
6431 use the new frame's minibuffer if any.
6433 * intervals.h (INTERVAL_WRITABLE_P): Fix backwards tests.
6435 * m/tekXD88.h: Rewrite by author.
6437 1993-06-08 Jim Blandy (jimb@totoro.cs.oberlin.edu)
6439 * Version 19.13 released.
6441 * ymakefile (C_DEBUG_SWITCH, C_OPTIMIZE_SWITCH): Remove these;
6442 people shouldn't edit this file to choose optimization and
6443 debugging switches anyway. ../configure will set CFLAGS to an
6444 appropriate default, which they will be able to override.
6445 * Makefile.in (xmakefile): Don't try to turn -g and -O in
6446 CFLAGS into C_DEBUG_SWITCH and C_OPTIMIZE_SWITCH. CFLAGS should
6447 be the sole source of such switches, so that setting CFLAGS
6448 controls them completely.
6450 1993-06-07 Jim Blandy (jimb@totoro.cs.oberlin.edu)
6452 * config.h.in (HAVE_LIBDNET): New macro, to be defined by
6454 * m/pmax.h (LIBS_MACHINE): Only put "-ldnet" here if HAVE_LIBDNET
6457 1993-06-07 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6459 * fileio.c (syms_of_fileio): Set up Qset_visited_file_modtime.
6460 (Fset_visited_file_modtime): Use the proper operation.
6462 * sysdep.c (init_baud_rate) [HAVE_TERMIOS]: Use cfgetospeed.
6464 * systty.h: Add NO_TERMIO conditional.
6466 * textprop.c (Fadd_text_properties): Don't treat the initial
6467 interval specially, aside from splitting off the part starting
6468 where we want to start changing things.
6469 (Fremove_text_properties): Likewise.
6470 For ending interval, split it left as in Fadd_text_properties.
6471 (Fset_text_properties): Don't set starting interval if it goes
6472 past END. Instead, split it left and set the left part.
6474 * keymap.c (Fdescribe_vector): Use current buf, not standard-output.
6475 (describe_vector_princ): Add newline at end.
6477 * keymap.c (store_in_keymap, access_keymap): Use CHAR_META
6478 when clearing excess high bits.
6480 * s/dgux.h (INTERRUPTIBLE_*): Fix spelling of macros.
6482 * s/hpux9.h (SYSTEM_MALLOC, GNU_MALLOC, REL_ALLOC): Definition and
6485 * keymap.c: Doc fix.
6487 * buffer.c (Fdelete_overlay): Do nothing if overlay already deleted.
6488 Bind inhibit-quit to t.
6489 (Fmove_overlay): Properly handle changing buffers, or no prev buffer.
6490 Bind inhibit-quit to t.
6492 * lread.c (syms_of_lread): Set up Qload.
6493 (Fload): Handle magic file names.
6495 1993-06-07 Shane Hartman (shane@nugget.spr.com)
6497 * xterm.c (x_caught_error_message): Change type to char* from char*[].
6498 (X_CAUGHT_ERROR_MESSAGE_SIZE): New macro.
6499 (x_error_catcher): Corresponding changes.
6500 (x_catch_errors): Corresponding changes.
6501 (x_check_errors): Do not free x_caught_error_message.
6502 (x_uncatch_errors): Set x_caught_error_message to 0 after freeing it.
6504 1993-06-06 Paul Eggert (eggert@twinsun.com)
6506 * uaf.h (uaf$v_thursday): Fix misspelling of "thursday".
6508 * floatfns.c (Fceiling): Fix spelling of "ceiling".
6510 1993-06-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6512 * ymakefile [__GNUC__ >= 2] (LIB_GCC): Delete spurious -L.
6514 * m/tekXD88.h (HAVE_RENAME): Deleted.
6516 * data.c (Ffset): Delete special check for t and nil.
6518 * xfaces.c (same_size_fonts): Compare only the width.
6520 * dispnew.c: Include lisp.h earlier (before termhooks.h).
6522 * editfns.c (Fcurrent_time_zone): Add alternative for !HAVE_TM_ZONE.
6523 * systime.h [HAVE_TZNAME]: Declare tzname if not macro.
6524 * config.h.in (HAVE_TZNAME): Add #undef.
6526 1993-06-06 Nobuyuki Hikichi (hikichi@sra.co.jp)
6528 * m/news-risc.h (NO_MODE_T): Defined.
6529 (LINKER): Add #undef.
6531 1993-06-06 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6533 * keymap.c (access_keymap, store_in_keymap): Discard meaningless
6534 high bits of a character event.
6536 1993-06-05 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6538 * lisp.h: Don't declare malloc or realloc.
6540 * xfns.c [EMACS_BIT_MAPS]: Include gray.xbm from ./bitmaps.
6542 * xterm.c (x_new_font): Don't give up right away if XListFontsWithInfo
6543 finds no fonts--try XLoadQueryFont anyway.
6545 * xfns.c (Fx_open_connection): Make `data' unsigned char.
6547 * window.c (Fset_window_configuration): If a window is supposed
6548 to have a buffer, always give it one.
6550 * xmenu.c (Fx_popup_menu): Error if we don't get a window
6553 * puresize.h: Test MULTI_FRAME, not HAVE_X_WINDOWS.
6555 * frame.c (Frubber_band_rectangle): Deleted.
6556 (syms_of_frame): Don't defsubr it.
6558 * xselect.c (x_get_foreign_selection): Handle x_selection_timeout
6559 as milliseconds, not as seconds.
6560 (syms_of_xselect): Doc fix to match.
6562 * m/mips4.h (MIPS2): Comment out define.
6563 (LIB_STANDARD): Delete -lisode.
6565 1993-06-04 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6567 * syssignal.h [POSIX] [!__GNUC__] (sys_sigmask): Add declaration.
6569 * alloc.c (make_event_array): Ignore bits above CHAR_META.
6571 * frame.c [!MULTI_FRAME] (Fframep): New dummy definition.
6572 (syms_of_frame): Defsubr that.
6574 * buffer.c (syms_of_buffer): Set up Lisp var inhibit-read-only.
6575 * lisp.h (Vinhibit_read_only): Declared.
6576 * buffer.c (Fbarf_if_buffer_read_only): Check Vinhibit_read_only.
6577 * cmds.c (Fnewline): Use Fbarf_if_buffer_read_only.
6579 * intervals.h (INTERVAL_VISIBLE_P): Use textget.
6580 (INTERVAL_WRITABLE_P): Use textget.
6581 Check Vinhibit_read_only.
6583 * window.c (syms_of_window): Always defvar pop-up-frames
6584 and pop-up-frame-function.
6586 * process.c (read_process_output): Deactivate the mark.
6587 Save and restore Vdeactivate_mark.
6589 * xfns.c (x_set_menu_bar_lines_1): Adjust just the uppermost child
6590 in a vertical split. Adjust the height counter to the top.
6591 (x_set_menu_bar_lines): Don't change overall frame height.
6593 1993-06-04 Francesco Potortì (pot@cnuce.cnr.it)
6595 * filelock.c (MAKE_LOCK_PATH): If SHORT_FILE_NAMES allocates
6596 different space and calls fill_in_lock_short_file_name.
6597 (fill_in_lock_short_file_name): New function for 14-chars hashed
6598 file names. Replaces fill_in_lock_file_name if SHORT_FILE_NAMES.
6600 1993-06-03 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6602 * sysdep.c (wait_for_termination): Fix sigpause in POSIX_SIGNALS case.
6604 * xterm.c (x_catch_errors): Fill in missing array size in cast.
6606 * Makefile.in (xmakefile): Depend on ../config.status.
6608 * buffer.c (init_buffer): Init default-directory of minibuffer.
6610 * m/iris4d.h (LIB_STANDARD): Delete -lbsd.
6612 * keyboard.c (read_key_sequence): Reset fkey_map when we find
6613 something at the end of Vfunction_key_map.
6615 * m/ibmrt-aix.h (HAVE_FTIME): Defined.
6617 * emacs.c (syms_of_emacs): Doc fix.
6619 * keyboard.c (read_char_menu_prompt): Now static. Add declaration.
6621 * dispnew.c (Fredraw_display): Redraw all visible frames.
6622 (redraw_garbaged_frames): New function.
6623 * xdisp.c (redisplay, echo_area_display): Use redraw_garbaged_frames.
6625 * dispnew.c (do_pending_window_change): No need to clear
6626 FRAME_NEW_HEIGHT/WIDTH. Do test width != 0.
6628 * xterm.c (x_wm_set_size_hint): Handle XGetNormalHints returning 0.
6630 * xfns.c (x_set_frame_parameters): Process all parms in reverse order.
6632 * frame.h (FRAME_MINIBUF_WINDOW): Use minibuffer_window.
6634 1993-06-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6636 * sysdep.c (init_sys_modes): Disable VLNEXT char.
6637 Also VWERASE, VREPRINT, VDISCARD.
6639 * xfaces.c: Test XOS_NEEDS_TIME_H, not HPUX, for including time.h.
6640 * s/sol2.h, s/hpux.h (XOS_NEEDS_TIME_H): Defined.
6642 1993-06-02 Francesco Potortì (pot@cnuce.cnr.it)
6644 * ymakefile (alloca.o): Use temp names allocax.o, allocax.s
6646 * m/delta.h (MOTOROLA_DELTA): Defined.
6647 (HAVE_SYSVIPC, BAT68K, BAT_ALLOCA): Deleted--obsolete.
6648 (STACK_DIRECTION, HAVE_X_WINDOWS): Deleted--configure knows.
6649 (C_SWITCH_MACHINE): Set to -ga if using the Green Hills compiler.
6650 (LIB_STANDARD, LIB_MATH): Defined to the 68881 versions.
6651 (LIBS_SYSTEM): -lbsd brings sigblock and sigsetmask.
6652 (sigsetmask): Undefined--it is in -lbsd.
6653 (LDAV_SYMBOL): Undefined--we have no such thing.
6654 (KERNEL_FILE): Defined to "/sysV68".
6655 (BSTRING, HAVE_SELECT, HAVE_UNISTD_H, HAVE_TIMEVAL): Defined.
6656 (SIGNALS_VIA_CHARACTERS): Defined.
6657 (memmove): Defined as memcpy--we have no memmove.
6658 (SIGIO, INTERRUPT_INPUT): Undefined--not yet tested.
6659 (SHORT_FILE_NAMES, CLASH_DETECTION): Defined.
6661 1993-06-02 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6663 * Version 19.12 released.
6665 * term.c (term_get_fkeys): Use correct names for F10 and up.
6666 Use the key sequence, not the termcap cap name, in Fdefine_key.
6668 * intervals.c (copy_intervals): Don't adjust total_length at the end.
6669 Set lengths of subintervals properly.
6670 (balance_intervals): Balance left as well as right.
6672 1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6674 * keymap.c (syms_of_keymap): Add missing 2nd arg to Fcons.
6676 1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6678 * s/esix5-4.h: Redone by Joe Kelsey.
6680 * xterm.c (x_new_font): Take out last change.
6682 * s/386bsd.h (BSD4_2): Defined.
6684 * fileio.c (Fwrite_region): Don't fsync if autosaving.
6686 * s/irix4-0.h (GETPGRP_NO_ARG): Defined.
6687 * emacs.c (shut_down_emacs): Handle GETPGRP_NO_ARG.
6688 * sysdep.c (sys_suspend): Handle GETPGRP_NO_ARG.
6690 * fileio.c [HPUX9]: Don't include errnet.h.
6692 * hftctl.c (hft_alrm): Don't return a value.
6693 Always declare to return void.
6695 * floatfns.c [!FLOAT_CHECK_ERRNO] (IN_FLOAT): New definition.
6696 (Flog): Fix argument of `log'.
6698 * m/pmax.h (KERNEL_FILE): New override definition.
6700 * keyboard.c (read_key_sequence) [!USE_TEXT_PROPERTIES]: Fix typo.
6701 (menu_bar_items) [!USE_TEXT_PROPERTIES]: Likewise.
6703 * s/isc3-0.h: #undef C_SWITCH_SYSTEM.
6705 * xselect.c (Fx_store_cut_buffer_internal): Handle empty string right.
6707 * xfaces.c (init_frame_faces): Don't look at selected_frame
6708 unless it is an X frame.
6710 * xfns.c (x_window): Use Vxrdb_name for res_name field.
6711 Delete the shortname stuff.
6713 * m/pmax.h (LIBS_MACHINE): Defined.
6715 * Version 19.11 released.
6717 1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6719 * xfns.c (x_set_menu_bar_lines): Use FRAME_NEW_HEIGHT and ..._WIDTH.
6721 * m/sparc.h [__GNUC__ >= 2]: Don't include alloca.h.
6723 * xterm.c (x_new_font): If XListFontsWithInfo finds nothing,
6724 try to load the font anyway.
6726 * ymakefile (emacs): Don't run inc-vers if ../lisp is read-only.
6727 (C_SWITCH_SITE_1): New make variable.
6728 (really-oldXMenu): Pass C_SWITCH_X_SITE_1 as C_SWITCH_X_SITE.
6729 Use C_SWITCH_SITE_1 to pass C_SWITCH_SITE.
6731 * s/386bsd.h: New file.
6733 1993-05-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6735 * fns.c (internal_equal): Don't let ints be equal to floats.
6737 * print.c (float_to_string): Skip `-' like digits when ensuring
6738 result looks like a float.
6740 * data.c (Frem): Fix result sign properly.
6742 * xrdb.c [__bsdi__]: ALternate decls of getpwuid and getpwnam.
6744 * emacs.c (main) [BSD]: Delete the setpgrp (both times).
6746 * m/ibmrs6000.h (NLIST_STRUCT): Defined.
6748 * ymakefile (GETLOADAVG_OBJ): New macro.
6751 * s/bsd386.h: New file.
6753 * term.c (term_get_fkeys): If not initialized, init Vfunction_key_map.
6755 * m/ibmrs6000.h: Delete ! __GNUC__ conditional.
6756 (LD_SWITCH_MACHINE): Defined.
6757 (ORDINARY_LINK): Defined unconditionally.
6759 * dispnew.c (update_frame): Make preempt_count positive.
6760 Defend against negative baud_rate.
6761 * scroll.c (calculate_scrolling): Defend against negative baud_rate.
6763 * mem-limits.h [__bsdi__]: Define BSD4_2.
6765 * xfns.c (x_window): In XSetClassHint, use a shortened version
6768 * s/hpux8.h (C_SWITCH_SYSTEM): Fix typo in X11R5 dirname.
6770 * xterm.c (XTread_socket, case KeyPress) [HPUX]: Test IsModifiedKey.
6772 * keyboard.c (kbd_buffer_get_event):
6773 Shorten the first MULTI_FRAME conditional.
6775 * s/usg5-4-2.h (HAVE_VFORK): Deleted.
6777 1993-05-31 James Clark (jjc@jclark.com)
6779 * xselect.c (x_reply_selection_request): Call XFlushQueue.
6781 * window.c (Fset_window_buffer): Set window's force_start to Qnil.
6783 1993-05-31 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6785 * syntax.c (Fforward_comment): Set point to where scan stops,
6786 thus moving across whitespace. When moving fwd, treat Sendcomment
6787 as whitespace; likewise for Scomment when moving back.
6788 (scan_sexps_forward): New arg COMMENTSTOP.
6789 (Fparse_partial_sexp): Likewise.
6791 * xfns.c (Fx_create_frame): Use bitmapIcon, not iconType.
6793 1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6795 * data.c (float_arith_driver): Detect division by zero in advance.
6796 (arith_driver, Frem): Likewise.
6798 * xfns.c (Fx_list_fonts): Handle 0 for FRAME_FACES (f) [face_id]->font.
6800 * print.c (Fwith_output_to_temp_buffer): Doc fix.
6802 * sysdep.c (wait_for_termination): Delete LINUX conditionals.
6804 * s/linux.h (HAVE_TCATTR): Deleted.
6805 (BSD): Don't define.
6806 (read, write, open, close): Defined.
6807 (INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE, INTERRUPTIBLE_IO): Defined.
6808 (C_SWITCH_SYSTEM): Defined.
6810 * xterm.c: Include systty.h; don't mess with FIONREAD.
6811 Don't include termio.h directly.
6813 * intervals.c (interval_deletion_adjustment): Delete unreachable abort.
6815 * fns.c (Fyes_or_no_p): Delete unreachable UNGCPRO.
6817 * keyboard.c (lispy_function_keys): Add `remove' key.
6819 1993-05-30 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
6821 * buffer.c (Fgenerate_new_buffer_name): Doc fix.
6823 1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6825 * Makefile.in (clean): Delete libXMenu11.a.
6827 1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6829 * m/mips.h (KERNEL_FILE): Set this to "/unix".
6830 * m/mips4.h (MIPS2): Go ahead and define this.
6831 (C_DEBUG_SWITCH): Add -DMips and -g3, and up Olimit to 2000.
6833 1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6835 * emacs.c (main) [AIX _I386]: Don't handle SIGIOINT.
6837 * lisp.h (UCHAR): Don't define if _UCHAR_T.
6839 * m/ibmps2-aix.h (HAVE_GETTIMEOFDAY): Deleted.
6840 (HAVE_SETSID, HAVE_TERMIOS): Defined.
6841 (HAVE_TERMIO): Add #undef.
6842 (SIGNALS_VIA_CHARACTERS): Defined.
6843 (C_DEBUG_SWITCH): Make definition empty.
6844 (LIBS_DEBUG): Defined.
6845 (BROKEN_TIOCGWINSZ, LIB_X11_LIB): Add #undef.
6847 * sysdep.c (child_setup_tty) [AIX SIGNALS_VIA_CHARACTERS]: Install
6848 something useful in the VQUIT and VINTR.
6849 (emacs_set_tty): Try only 10 times to call tcsetattr.
6850 Don't use memcmp to test what it did.
6852 * systty.h [HAVE_TERMIOS _AIX _I386]: Include termios before termio.
6854 * dispnew.c (buffer_posn_from_coords): Since COL is already
6855 window-relative, don't subtract window_left.
6857 1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6859 * xfaces.c (unload_color): Don't #include <X11/Intrinsic.h>,
6860 <X11/StringDefs.h>, or <X11/Xmu/Drawing.h>. Just write out
6861 "unsigned long" instead of using the "Pixel" typedef; it's in the
6862 protocol, so it's not likely to change.
6864 * hftctl.c (hft_alrm): Declare and define this to return void, not
6865 int; the AIX #include files have prototypes for it.
6867 * s/aix3-2.h (LIBS_SYSTEM): Remove -lIM and -liconv from here...
6868 * m/ibmrs6000.h (LIBS_MACHINE): They're already here. Doc fix.
6870 * Makefile.in (SUBMAKEFLAGS): Remember to propagate MAKE.
6872 1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu)
6874 * s/sunos4-1-3.h: Delete the #undef of SYSTEM_MALLOC.
6876 * systty.h [IRIX4]: Include unistd.h.
6878 * s/irix4-0.h (IRIX4): Defined.
6879 (IRIS_UTIME): #undef this.
6881 * xfns.c (Fx_open_connection) [NO_XRM_SET_DATABASE]:
6882 Don't call XrmsSetDatabase.
6884 * xfaces.c: Fix HPUX conditional syntax.
6886 * s/hpux8.h (random, srandom): Defined.
6888 * s/usg5-4-2.h: Don't specify s/ dir in #include.
6889 * s/usg5-4-2.h (PTY_TTY_NAME_SPRINTF): Defined.
6890 (HAVE_SYSV_SIGPAUSE): #undef this.
6892 * sysdep.c (wait_for_termination): Add POSIX_SIGNALS alternative.
6894 1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu)
6896 * xfaces.c (init_frame_faces): We have to make sure that face ID's
6897 are valid on all frames or no frames; make sure F has allocated
6898 faces for any face valid on the selected frame.
6900 * s/hpux9.h: New file; don't use the GNU allocator. Hope we fix
6903 See ChangeLog.3 for earlier changes.
6909 Copyright (C) 1993-1994, 2001-2017 Free Software Foundation, Inc.
6911 This file is part of GNU Emacs.
6913 GNU Emacs is free software: you can redistribute it and/or modify
6914 it under the terms of the GNU General Public License as published by
6915 the Free Software Foundation, either version 3 of the License, or
6916 (at your option) any later version.
6918 GNU Emacs is distributed in the hope that it will be useful,
6919 but WITHOUT ANY WARRANTY; without even the implied warranty of
6920 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6921 GNU General Public License for more details.
6923 You should have received a copy of the GNU General Public License
6924 along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.