(Fconstrain_to_field): Check carefully for field boundaries if either
[bpt/emacs.git] / src / ChangeLog
index 01ccd9c..39d7e0d 100644 (file)
@@ -1,3 +1,320 @@
+2000-10-16  Miles Bader  <miles@lsi.nec.co.jp>
+
+       * editfns.c (Fconstrain_to_field): Check carefully for field
+       boundaries if either OLD_POS or NEW_POS has a non-nil field
+       property, even if they're the same.
+
+2000-10-16  Kenichi Handa  <handa@etl.go.jp>
+
+       * xterm.c (x_draw_box_rect): Fix the calculation of width and
+       height for XFillRectangle.
+
+2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * syntax.c (Fstring_to_syntax): New function extracted from
+       Fmodify_syntax_entry.
+       (Fmodify_syntax_entry): Use it and document the ! and | fences.
+       (skip_chars, Fforward_comment): Remove unused variables.
+       (syms_of_syntax): Add defsubr for string-to-syntax.
+       (describe_syntax): Add code for comment and string fences.
+
+2000-10-14  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keymap.c (access_keymap): Add AUTOLOAD parameter.
+       Do the meta->esc mapping.  Call get_keyelt before returning.
+       Start scanning from the second element (the first is always `keymap')
+       to make it easier to detect when we reach a parent map.
+       Handle the case of inheriting from a symbol whose function is a map.
+       (Fkeymap_parent): Also handle the `inherit from symbol' case.
+       (fix_submap_inheritance, Fdefine_key): Update call to access_keymap.
+       (get_keyelt, Flookup_key): Update call to access_keymap.
+       Remove the meta->esc mappings.
+       (define_as_prefix): Delete old disabled code.
+       (menu_item_p): New function.
+       (where_is_internal_1): Skip over the few remaining menu items.
+       * lisp.h (access_keymap): Update prototype.
+       * keyboard.c (read_char, menu_bar_items, tool_bar_items):
+       Update call to access_keymap.
+       (follow_key, read_key_sequence): Update calls to access_keymap.
+       Remove the meta->esc mappings.
+
+2000-10-13  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (direct_output_for_insert): Call set_iterator_to_next
+       with additional argument.
+
+       * xdisp.c (cursor_row_p): New function.
+       (try_cursor_movement, display_line): Use it.
+       
+       * xdisp.c (append_space): Also save/restore iterator's current
+       character and its length.
+
+       * xdisp.c (init_from_display_pos): Add an assertion.
+       (handle_stop): Don't set iterator's add_overlay_start.
+       (handle_invisible_prop): Likewise.
+       (load_overlay_strings): If text under an overlay is invisible,
+       take both before- and after-strings into account when the iterator
+       is positioned either at the start or at the end of the overlay.
+       (forward_to_next_line_start): Rewritten.
+       (reseat_at_next_visible_line_start): Rewritten.
+       (set_iterator_to_next): Add parameter RESEAT_P.
+
+       * dispextern.h (struct it): Remove member add_overlay_start.
+       (set_iterator_to_next): Change prototype.
+
+2000-10-13  Kenichi Handa  <handa@etl.go.jp>
+
+       * coding.c (code_convert_region): Be sure to initialize
+       coding->category_idx.
+       (decode_coding_string): Set coding->src_multibyte and
+       coding->dst_multibyte before using CODING_REQUIRE_DECODING.
+       (encode_coding_string): Set coding->src_multibyte and
+       coding->dst_multibyte before using CODING_REQUIRE_ENCODING.
+
+2000-10-12  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * xfns.c (Fx_create_frame): Don't bother calling
+       face-set-after-frame-default since the caller does it for us anyway.
+
+2000-10-12  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * window.c (coordinates_in_window): Fix detection of vertical line
+       on character terminals.
+
+2000-10-12  Gerd Moellmann  <gerd@gnu.org>
+
+       * editfns.c (save_excursion_save): Additionally record the
+       selected window.
+       (save_excursion_restore): If buffer was visible in a window, and a
+       different window was selected, and the old selected window is
+       still live, restore point in that window.
+
+2000-10-12  Kenichi Handa  <handa@etl.go.jp>
+
+       * xterm.c (x_produce_glyphs): Handle
+       unibyte_display_via_language_environment correctly.
+
+       * regex.c (regex_compile): Change the way of handling a range from
+       unibyte char to multibyte char.
+
+       * syntax.c (skip_chars): Change the way of handling a range from
+       unibyte char to multibyte char.
+
+       * process.c (read_process_output): Cancel previous change.
+
+2000-10-11  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * search.c (Fsearch_backward, Fsearch_forward): Doc fix.
+
+       * charset.c (Ffind_charset_string): Doc fix.
+       (Ffind_charset_region): Doc fix.
+
+2000-10-11  Kenichi Handa  <handa@mule.m17n.org>
+
+       * process.c (read_process_output): Fix previous change.  Adjust
+       multibyteness of text to insert in a buffer by
+       string_make_unibyte/multibyte instead of
+       Fstring_as_unibyte/multibyte.
+
+2000-10-10  Andreas Schwab  <schwab@suse.de>
+
+       * alloc.c (mark_object): Remove all workarounds installed on
+       1993-08-08.
+
+2000-10-10  Kenichi Handa  <handa@etl.go.jp>
+
+       * fns.c (READ_QUADRUPLET_BYTE): Set *NCHARS_RETURN before
+       returning.
+       (base64_encode_1): Make it work for a text of multibyte form.
+       (Fbase64_decode_region): Allocate sufficient memory for multibyte
+       case.  Don't call str_to_multibyte because base64_decode_1
+       produces correct multibyte form for eight-bit codes.
+       (Fbase64_decode_string): Adjusted for the change of
+       base64_decode_1.
+       (base64_decode_1): New args MULTIBYTE and NCHARS_RETURN.  If
+       MULTIBYTE is nonzero, produce correct multibyte form for eight-bit
+       codes.
+
+       * charset.h (CHAR_STRING): Optimized for single byte characters.
+
+2000-10-09  Andreas Schwab  <schwab@suse.de>
+
+       * process.c (Fopen_network_stream) [HAVE_GETADDRINFO]: Reset S to
+       -1 after socket is closed, to fall through to error processing.
+
+2000-10-09  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (IT_set_frame_parameters): Don't initialize Lisp_Object
+       variables.  If ALIST includes foreground-color or
+       background-color, change also the colors of the default face for
+       this frame.
+
+2000-10-08  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (top-level) <Qbackground_color, Qforeground_color>: Make
+       them extern (they are defined on xfaces.c).
+       (syms_of_msdos): Don't intern and don't staticpro
+       Qbackground_color and Qforeground_color.
+
+2000-10-07  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * frame.c (Fframe_parameter): For non-windowed frames, if
+       f->param_alist says foreground or background color is unspecified,
+       call tty_color_name to return the color name computed from the
+       frame's current colors.
+
+2000-10-06  Dave Love  <fx@gnu.org>
+
+       * terminfo.c (ospeed): Don't declare.
+
+       * sysdep.c: Don't include string.h.
+       (h_errno): Declare conditional also on TRY_AGAIN.
+
+       * charset.c (Ffind_charset_string): Doc fix.
+
+       * fns.c (Fbase64_encode_region, Fbase64_encode_string) 
+       (Fbase64_decode_region, Fbase64_decode_string): More explicit
+       error messages.
+
+2000-10-05  Dave Love  <fx@gnu.org>
+
+       * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Check for tool-bar
+       position like menu-bar.
+
+2000-10-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * keyboard.c (Frecursive_edit): Make sure redisplay can happen.
+
+       * xdisp.c (handle_single_display_prop): Use safe_call1.
+       (safe_call): Renamed from call_function.
+       (safe_call1): New function.
+       (handle_fontified_prop): Use safe_call1 instead of call1.
+       (safe_eval): Renamed from eval_form.
+       (safe_eval_handler): Renamed from eval_handler.
+       (handle_single_display_prop, display_mode_element): Use safe_eval
+       instead of eval_form.
+
+       * xfaces.c (merge_face_heights): Use safe_call instead of
+       call_function.
+
+       * keyboard.c (show_help_echo): Use safe_call instead of
+       call_function; use safe_eval instead of eval_form.
+
+       * lisp.h (safe_call): Renamed from call_function.
+       (safe_eval): Renamed from eval_form.
+       (safe_call1): Add prototype.
+
+2000-10-05  Miles Bader  <miles@lsi.nec.co.jp>
+
+       * xfns.c (image_ascent): Rearrange ascent calculation for the
+       has-a-font case.
+
+2000-10-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keymap.c (Fwhere_is_internal): Ignore `menu-bar' and `tool-bar'.
+       (where_is_internal_1): Don't bother ignoring menu-items any more.
+
+2000-10-04  Gerd Moellmann  <gerd@gnu.org>
+
+       * keyboard.c (update_menu_bindings): New variable.
+       (parse_menu_item): Use AREF.  If update_menu_bindings
+       is 0, don't update menu bindings.
+       (syms_of_keyboard): New Lisp variable `update-menu-bindings'.
+
+2000-10-03  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * alloc.c (Fgarbage_collect): Prevent compiler warning for a call
+       to `mark_object'.
+
+2000-10-02  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * syntax.c (forw_comment): Match nestedness of ender/starter.
+       (Fforward_comment): Treat an unmatched \n comment-ender as whitespace.
+       (prev_char_comstart_first): Remove.
+       (back_comment): Check two-char comment markers more carefully
+       to better handle overlapping cases like *//* or /* */* */ ...
+       Match nestedness of ender/starter.
+
+2000-10-02  Dave Love  <fx@gnu.org>
+
+       * config.in (HAVE_GAI_STRERROR): Add undef.
+
+       * process.c (Fopen_network_stream): Use it.
+
+       * m/alpha.h (NO_REMAP): Don't define.
+
+2000-10-02  Gerd Moellmann  <gerd@gnu.org>
+
+       * lisp.h (wrong_type_argument): Remove NO_RETURN, the function can
+       return with a string converted to an integer or vice versa when
+       Vmocklisp_arguments is t.
+       (Fsignal): Likewise.  The function can return for `quit'.
+       (struct gcpro): Declare member `var' to point to a volatile
+       Lisp_Object.
+
+       * eval.c (error): Prevent compiler warning.
+
+2000-09-30  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keymap.c (keymap_memberp): New function.
+       (Fset_keymap_parent): Use it.
+       (fix_submap_inheritance): Use get_keyelt, get_keymap_1 and KEYMAPP.
+       Use keymap_memberp to avoid creating cycles.
+       (access_keymap): Use KEYMAPP.
+
+2000-09-30  Gerd Moellmann  <gerd@gnu.org>
+
+       * process.c (Fopen_network_stream) [HAVE_GETADDRINFO]: Use
+       gai_strerror.  Make sure xerrno is set if connect fails.  Improve
+       error recovery.
+
+2000-09-29  Jason Rumney <jasonr@gnu.org>
+
+       * w32term.c (w32_char_font_type, w32_encode_char)
+       (x_produce_glyphs): Distinguish single and multibyte BDF fonts.
+       (w32_bdf_per_char_metric): New function.
+       (w32_per_char_metric): Use it.
+       (x_draw_glyph_string_background): Always draw background for BDF
+       glyphs.
+
+       * w32bdf.h (glyph_struct, cache_bitmap): Cache bitmap data, not
+       GDI object which is a scarce resource.
+
+       * w32bdf.c (search_file_line): Fix skipping of whitespace.
+       (get_quoted_string): Fix limit on memchr search.
+       (set_bdf_font_info): Use unsigned chars. Negate yoffset.
+       (w32_init_bdf_font): Initialize codepoint and bitmap heaps.
+       (w32_free_bdf_font): Free bitmaps and codepoints on heaps.
+       (get_cached_font_char, cache_char_offset): Use macro
+       BDF_CODEPOINT_RANGE_COVER_P.
+       (cache_char_offset): Use HeapAlloc to allocate codepoints on own heap.
+       (clear_cached_bitmap_slots): New function.
+       (GET_HEX_VALUE): G-Z, g-z are not hex.
+       (w32_get_bdf_glyph): Convert to DIB format. Return bytes read.
+       (get_bitmap_with_cache): Use new cache implementation.
+       (create_offscreen_bitmap): New function.
+       (w32_BDF_TextOut): Use it. Draw glyphs as DIBs.
+
+       * w32term.c (x_produce_glyphs):  If the distance from the current
+       position to the next tab stop is less than a canonical character
+       width, use the tab stop after that.
+       (x_draw_glyphs): Handle case START and END are out of bounds more
+       carefully.
+       (x_clear_mouse_face): Block/unblock input.
+       (x_display_and_set_cursor): Don't show a hollow box cursor for
+       buffers whose cursor_type is nil.
+
+2000-09-29  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (x_set_tool_bar_lines): Clear frame when tool bar
+       disappears.
+
+       * dispextern.h (updating_frame): Declare extern.
+
+2000-09-29  Andreas Schwab  <schwab@suse.de>
+
+       * m/ia64.h: Remove hack of not prototyping bcopy, etc.
+
 2000-09-29  Gerd Moellmann  <gerd@gnu.org>
 
        * keyboard.c (menu_bar_one_keymap): If KEYMAP is a symbol,
 
        * s/osf5-0.h: Define USE_MMAP_FOR_BUFFERS, not REL_ALLOC_MMAP.
 
+       * s/sunos413.h (USE_MMAP_FOR_BUFFERS): Define.
+
+       * .gdbinit (xreload): Note its need on GNU/Linux.
+
        * m/alpha.h (XUINT) [REL_ALLOC && _MALLOC_INTERNAL]: Don't declare
        r_alloc, r_alloc_free.