(diff-regexp-alist, diff-old-file, diff-new-file)
(diff-parse-differences, diff-process-setup): Remove.
(diff-sentinel): New fun.
(diff): Use it. Run the process ourselves.
Use diff-mode for the rest of the processing.
(x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
thanks to YAMAMOTO Mitsuharu for advice on how to do this.
Use cursor color for displaying cursor in fringe.
(prolog-mode-syntax-table, prolog-mode-abbrev-table, prolog-mode-map):
Bring together declaration and initialization.
(prolog-mode-variables): Don't set the syntax table.
Don't set paragraph-start and comment-indent-function.
Add /*..*/ to the comment regexps.
(prolog-mode-commands): Remove. Do it during init of prolog-mode-map.
(prolog-mode-map): Don't bind TAB.
(prolog-mode): Set the syntax table.
(prolog-comment-indent): Remove.
(inferior-prolog-mode-map): Initialize in the declaration.
(inferior-prolog-mode-syntax-table)
(inferior-prolog-mode-abbrev-table): New vars.
(inferior-prolog-mode): Derive from comint-mode.
(run-prolog): Avoid switch-to-buffer which can fail in dedicated and
minibuffer windows.
Use cursor color for displaying cursor in fringe.
(x_redisplay_interface): Add null handlers for
define_fringe_bitmap and destroy_fringe_bitmap functions.
(left_bits, right_bits, up_arrow_bits, down_arrow_bits)
(continued_bits, continuation_bits, ov_bits, first_line_bits)
(last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
(bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
(fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
(draw_window_fringes, compute_fringe_widths, update_window_fringes):
Move fringe handling vars and code to new file fringe.c.
(handle_display_prop): Handle left-fringe and right-fringe
display properties; store user fringe bitmaps in iterator.
(move_it_in_display_line_to): Handle cursor in fringe at eob.
(clear_garbaged_frames): Set force_flush_display_p if resized.
(redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
(display_line): Handle cursor in fringe at eob.
(display_line): Set row user fringe bitmaps from iterator.
xterm.c to handle overlayed fringe bitmaps and to use cursor color
for displaying cursor in fringe.
(w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
specific functions to define and destroy fringe bitmaps in fringe_bmp.
(w32_redisplay_interface): Add them to redisplay_interface.
(w32_term_init): Call w32_init_fringe instead of explicitly
defining fringe bitmaps in fringe_bmp array.
(x_delete_display): Call w32_reset_fringes instead of explicitly
destroying fringe bitmaps in fringe_bmp array.
xterm.c to handle overlayed fringe bitmaps and to use cursor color
for displaying cursor in fringe.
(x_redisplay_interface): Add null handlers for
define_fringe_bitmap and destroy_fringe_bitmap functions.
arrows.
(update_frame): Do flush_display if force_flush_display_p to
ensure display (specifically fringes) are updated in a timely
manner when resizing the frame by dragging the mouse.
(update_window_line): Update row if overlay arrow changed.
(scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
or overlay arrow changed.
bits allocated to hold a fringe number. Increase number of bits
from 4 to 8 to allow user defined fringe bitmaps.
(struct glyph_row, struct it): New members left_user_fringe_bitmap,
left_user_fringe_face_id, right_user_fringe_bitmap,
right_user_fringe_face_id.
(enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
Move to new file fringe.c.
(MAX_FRINGE_BITMAPS): Define here.
(struct draw_fringe_bitmap_params): New members bits, cursor_p,
and overlay_p. Change member which to int.
(struct redisplay_interface): New members define_fringe_bitmap
and destroy_fringe_bitmap.
(valid_fringe_bitmap_id_p): Add prototype.
(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
and code from dispextern.h and xdisp.c here.
Rework code to support user defined fringe bitmaps, redefining
standard bitmaps, ability to overlay user defined bitmap with
overlay arrow bitmap, and add faces to bitmaps.
(Voverflow_newline_into_fringe): Declare here.
(enum fringe_bitmap_align): New enum.
(..._bits): All bitmaps are now defined without bitswapping; that
is now done in init_fringe_once (if necessary).
(standard_bitmaps): New array with specifications for the
standard fringe bitmaps.
(fringe_faces): New array.
(valid_fringe_bitmap_id_p): New function.
(draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
(draw_fringe_bitmap): New function which draws fringe bitmap,
possibly overlaying bitmap with cursor in right fringe or the
overlay arrow in the left fringe.
(update_window_fringes): Do not handle overlay arrow here.
Compare and copy fringe bitmap faces.
(init_fringe_bitmap): New function.
(Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
define and destroy user defined fringe bitmaps.
(Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
(Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
(syms_of_fringe): New function. Defsubr new DEFUNs.
DEFVAR_LISP Voverflow_newline_into_fringe.
(init_fringe_once, init_fringe): New functions.
(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.