(ISBLANK, ISGRAPH, ISPRINT, ISALNUM, ISALPHA, ISLOWER)
(ISPUNCT, ISSPACE, ISUPPER): New definitions for emacs only.
(ISWORD): New macro.
(re_opcode_t): Add 2 bytes of flag bits to charset and charset_not.
(CHARSET_RANGE_TABLE): Update definition.
(CHARSET_RANGE_TABLE_BITS): New macro.
(print_partial_compiled_pattern): Skip charset's range table.
(struct range_table_work_area): New field `bits'.
(SET_RANGE_TABLE_WORK_AREA_BIT): New macro.
(BIT_ALNUM, BIT_ALPHA, BIT_WORD, BIT_GRAPH, BIT_LOWER, BIT_PRINT)
(BIT_PUNCT, BIT_SPACE, BIT_UPPER): New macros.
(CLEAR_RANGE_TABLE_WORK_USED): Clear field `bits'.
(RANGE_TABLE_WORK_BITS): New macro.
(IS_CHAR_CLASS): Check for "word".
(regex_compile): Set the `bits' field for some character classes.
Handle the `word' class. Store the `bits' field into the range table.
(re_compile_fastmap): Handle flag bits in range table.
(re_match_2_internal): For charset and charset_not,
handle flag bits in the range table.
elements if HIDE_LISP_IMPLEMENTATION is defined, to help detect code that uses
knowledge of the Lisp internals that it shouldn't have.
(XFLOAT_DATA): New macro.
Vmax_mini_window_height is nil. Otherwise, use a default if
Vmax_mini_window_height is not ot a number.
(syms_of_xdisp): Extend documentation of Vmax_mini_window_height.
Auto-detect .sbss section.
(round_up): Make it static.
(unexec): Declare alignment as Elf Word. Skip ``Program
segment above .bss'' test on MIPS without .sbss.
Copy sections .got and .sdata1 sections. Adjust offsets in
sections .sdata, .lit4, .lit8, .got and .sdata1.
before calling try_window.
(echo_area_display): If height has changed, update other windows.
(resize_mini_frame, resize_mini_initial_height): New.
(resize_mini_window): Save/restore window configuration
differently.
resizing mini-window.
(unwind_with_echo_area_buffer): Use
set_buffer_internal_1 instead of set_buffer_internal.
(with_echo_area_buffer): Ditto.
(Vresize_mini_config): New.
(resize_mini_window): Use it to save restore original window
configuration
(syms_of_xdisp): Initialize it.
(reconsider_clip_changes): New.
(redisplay_internal, redisplay_window): Call it.
(mark_window_display_accurate, redisplay_internal): Set current
matrix' buffer, begv, zv.
overlay_unchanged_modified): Removed.
(with_echo_area_unwind_data): Don't save beg/end_unchanged.
(unwind_with_echo_area_buffer): Don't restore them.
(debug_beg_unchanged, debug_end_unchanged) [GLYPH_DEBUG]: Removed.
(text_outside_line_unchanged_p, redisplay_internal,
try_scrolling): Use/set buffer-specific beg/end_unchanged.
(redisplay_window): Let try_window_id be called if more than one
window is displayed. Use/set buffer-specific beg/end_unchanged.
(get_last_unchanged_at_beg_row, get_first_unchanged_at_end_row,
try_window_id):
Use buffer-specific beg/end_unchanged.
(beg_unchanged, end_unchanged, unchanged_modified,
overlay_unchanged_modified): Remove extern declarations.
only if buffer is displayed somewhere.
(modify_overlay): Use BUF_COMPUTE_UNCHANGED.
(reset_buffer): Set clip_changed to 0 and
prevent_redisplay_optimizations_p to 1.
(Fget_buffer_create): Set prevent_redisplay_optimizations_p to 1.
(modify_overlay): Compute beg/end_unchanged
per buffer.
(Fget_buffer_create): Initialize new members of the buffer
structure.
well.
(redisplay_internal): Resize mini-window only if text might
have changed.
(display_echo_area): Reset displayed echo_area_buffer to nil
at the end if we're displaying a nil message.
new parameter.
Remove conditional compilation on
NO_PROMPT_IN_BUFFER.
(get_next_display_element): Display \r as ^M.
(minibuffer_scroll_overlap): Removed because not used
anywhere.
(unwind_redisplay): Return nil.
(clear_garbaged_frames): New.
(redisplay_internal): Use it.
(echo_area_display): Ditto.
(resize_mini_window): Mew.
(display_echo_area_1): Use it to resize echo area window.
(redisplay_internal): Use it to resize active mini-window.
(echo_area_glyphs, echo_area_message,
echo_area_glyphs_length, previous_echo_glyphs,
previous_echo_area_message, previous_echo_area_glyphs_length):
Removed.
(Vmessage_stack, echo_area_buffer, echo_buffer,
display_last_displayed_message_p, Vwith_echo_area_save_vector): New.
(message2_nolog): Use set_message and clear_message.
(message3): Rename parameter len to nbytes to make clear what
it is.
(message3_nolog): Ditto. Use set_message and clear_message.
(update_echo_area): Rewritten.
(with_echo_area_buffer): New.
(with_echo_area_buffer_unwind_data, unwind_with_area_buffer): New.
(setup_echo_area_for_printing): New.
(display_echo_area, display_echo_area_1): New.
(current_message, current_message_1): New.
(push_message, restore_message, pop_message,
check_message_stack): New.
(truncate_echo_area): Rewritten.
(truncate_message_1): New.
(set_message, set_message_1, clear_message): New.
(echo_area_display): Rewritten.
(redisplay_internal): Check for needed echo area update
differently.
(redisplay_preserve_echo_area): Rewritten.
(redisplay_window): Check for mini-window displaying echo area
message differently.
(syms_of_xdisp): Initialize Vmessage_stack and echo area buffers.
Remove initialzation of removed variables.
(init_xdisp): Remove references to removed variables.
(glyph_len, str_to_glyph_cpy, str_to_glyph_ncpy,
glyph_to_str_cpy): Remove that section because GLYPHs are no
longer used in that way.
(PRINTDECLARE): Add multibyte.
(PRINTPREPARE, PRINTFINISH): Handle printcharfun t differently.
(printbufidx): Removed.
(printchar, strout): Rewritten.
NO_PROMPT_IN_BUFFER.
(Fminibuffer_prompt_end): New.
(syms_of_minibuf): Defsubr it. Remove
minibuffer-prompt-in-buffer.
(Fminibuffer_prompt_width): Return 0 if not in mini-buffer.
Extend documentation.
(read_minibuf): Use clear_message instead of
setting echo_area_glyphs.
(Fminibuffer_completion_help): Ditto.
new parameter.
(ok_to_echo_at_next_pause): Make it a pointer to
a struct kboard.
(echo_kboard): New.
(echo_now): Set echo_kboard to the current kboard.
(cancel_echoing): Set echo_kboard to null.
(cmd_error_internal): Use clear_message, remove references
to echo_area_glyphs and echo_area_message.
(command_loop_1): Check for echo area messages differently.
(read_char): Likewise.
(record_menu_key): Use clear_message.
(Fexecute_extended_command): Check for echo area messages
differently. Use push_message, restore_message, pop_message.
function.
(hash_remove): Ditto.
(cmpfn_eq): Removed.
(cmpfn_eql): Don't test with EQ.
(cmpfn_equal): Ditto.
(make_hash_table): Set comparison function for `eq' to null.