Mercurial > emacs
comparison src/xdisp.c @ 112364:42e22c4f06b7
Move all DEFVAR'd globals into a structure -- threading infrastructure
* globals.h: New file.
* xterm.h (Vx_pixel_size_width_font_regexp): Remove declaration.
* window.h (Vinitial_window_system, Vminibuf_scroll_window)
(Vwindow_system_version): Remove declaration.
* w32term.h (Vw32_enable_palette)
(Vx_pixel_size_width_font_regexp): Remove declaration.
* w32menu.c (Voverriding_local_map)
(Voverriding_local_map_menu_flag): Remove declaration.
* w32inevt.c (Vw32_alt_is_meta, Vw32_apps_modifier)
(Vw32_capslock_is_shiftlock, Vw32_enable_caps_lock)
(Vw32_enable_num_lock, Vw32_lwindow_modifier)
(Vw32_pass_lwindow_to_system, Vw32_pass_rwindow_to_system)
(Vw32_phantom_key_code, Vw32_recognize_altgr)
(Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
(w32_use_full_screen_buffer): Remove declaration.
* w32.c (Vsystem_configuration, Vw32_downcase_file_names)
(Vw32_generate_fake_inodes, Vw32_get_true_file_attributes)
(w32_num_mouse_buttons, w32_pipe_read_delay): Remove declaration.
* termopts.h (Vtruncate_partial_width_windows, inverse_video)
(no_redraw_on_reenter, visible_bell): Remove declaration.
* sysdep.c (Vsystem_name): Remove declaration.
* syntax.h (parse_sexp_lookup_properties): Remove declaration.
* menu.h (Vmenu_updating_frame): Remove declaration.
* macros.h (Vexecuting_kbd_macro, executing_kbd_macro_index):
Remove declaration.
* lisp.h (Vafter_init_time, Vafter_load_alist)
(Vauto_save_list_file_name, Vbefore_init_time, Vcommand_history)
(Vcompletion_regexp_list, Vcurrent_load_list)
(Vcurrent_prefix_arg, Vdata_directory, Vdebug_on_error)
(Vdoc_directory, Vdoc_file_name, Vdynamic_library_alist)
(Vexec_directory, Vexec_path, Vexec_suffixes)
(Vface_font_rescale_alist, Vface_ignored_fonts, Vfeatures)
(Vhelp_form, Vhistory_length, Vinhibit_field_text_motion)
(Vinhibit_quit, Vinhibit_read_only, Vinhibit_redisplay)
(Vinstallation_directory, Vinvocation_directory)
(Vinvocation_name, Vload_file_rep_suffixes, Vload_history)
(Vload_suffixes, Vmark_even_if_inactive, Vmemory_full)
(Vmessage_log_max, Vobarray, Vprint_length, Vprint_level)
(Vpurify_flag, Vquit_flag, Vsaved_region_selection)
(Vscalable_fonts_allowed, Vselect_active_regions)
(Vshell_file_name, Vstandard_input, Vstandard_output)
(Vsystem_name, Vtemporary_file_directory, Vthrow_on_input)
(Vtop_level, Vtty_erase_char, Vundo_outer_limit)
(Vuser_login_name, Vwindow_scroll_functions)
(Vwindow_system_version, Vx_no_window_manager)
(Vx_resource_class, Vx_resource_name, baud_rate)
(completion_ignore_case, debug_on_next_call, gc_cons_threshold)
(history_delete_duplicates, inhibit_x_resources)
(last_nonmenu_event, load_in_progress, max_specpdl_size)
(minibuffer_auto_raise, print_escape_newlines, scroll_margin)
(use_dialog_box, use_file_dialog): Remove declaration. Include
globals.h.
* keymap.h (Voverriding_local_map)
(Voverriding_local_map_menu_flag, meta_prefix_char): Remove
declaration.
* keyboard.h (Vdouble_click_time, Vfunction_key_map)
(Vinput_method_function, Vkey_translation_map)
(Vlucid_menu_bar_dirty_flag, Vthis_original_command)
(do_mouse_tracking, extra_keyboard_modifiers)
(num_nonmacro_input_events): Remove declaration.
* intervals.h (Vchar_property_alias_alist)
(Vdefault_text_properties, Vinhibit_point_motion_hooks)
(Vtext_property_default_nonsticky): Remove declaration.
* gtkutil.h (x_gtk_file_dialog_help_text)
(x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
(x_gtk_whole_detached_tool_bar): Remove declaration.
* frame.h (Vdefault_frame_alist, Vframe_alpha_lower_limit)
(Vmenu_bar_mode, Vmouse_highlight, Vterminal_frame)
(Vtool_bar_mode, Vx_resource_class, Vx_resource_name)
(focus_follows_mouse): Remove declaration.
* fontset.h (Valternate_fontname_alist, Vfontset_alias_alist)
(Vignore_relative_composition, Votf_script_alist)
(Vuse_default_ascent, Vvertical_centering_font_regexp): Remove
declaration.
* font.h (Vfont_log): Remove declaration.
* dosfns.h (Vdos_display_scancodes, Vdos_version)
(Vdos_windows_version, dos_codepage, dos_country_code)
(dos_decimal_point, dos_hyper_key, dos_keyboard_layout)
(dos_keypad_mode, dos_super_key, dos_timezone_offset): Remove
declaration.
* disptab.h (Vglyph_table, Vstandard_display_table): Remove
declaration.
* dispextern.h (Vface_remapping_alist, Vglyphless_char_display)
(Vmouse_autoselect_window, Voverflow_newline_into_fringe)
(Vshow_trailing_whitespace, Vtool_bar_button_margin)
(Vtool_bar_style, cursor_in_echo_area, display_hourglass_p)
(inverse_video, mode_line_in_non_selected_windows)
(tool_bar_button_relief, tool_bar_max_label_size)
(underline_minimum_offset)
(unibyte_display_via_language_environment, x_stretch_cursor_p):
Remove declaration.
* composite.h (Vauto_composition_function)
(Vcomposition_function_table): Remove declaration.
* commands.h (Vexecuting_kbd_macro)
(Vminibuffer_local_completion_map)
(Vminibuffer_local_filename_completion_map)
(Vminibuffer_local_filename_must_match_map)
(Vminibuffer_local_map, Vminibuffer_local_must_match_map)
(Vminibuffer_local_ns_map, Vthis_command)
(Vunread_command_events, cursor_in_echo_area)
(last_command_event, last_nonmenu_event, unread_command_char):
Remove declaration.
* coding.h (Vcoding_system_for_read, Vcoding_system_for_write)
(Vdefault_file_name_coding_system)
(Vdefault_process_coding_system, Vfile_name_coding_system)
(Vlast_coding_system_used, Vlocale_coding_system)
(Vselect_safe_coding_system_function)
(Vtranslation_table_for_input, coding_system_require_warning)
(eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
(eol_mnemonic_unix, inherit_process_coding_system): Remove
declaration.
* charset.h (Vcharset_list, Vcurrent_iso639_language): Remove
declaration.
* character.h (Vauto_fill_chars, Vchar_direction_table)
(Vchar_script_table, Vchar_width_table, Vprintable_chars)
(Vscript_representative_chars, Vtranslation_table_vector)
(Vunicode_category_table): Remove declaration.
* ccl.h (Vfont_ccl_encoder_alist): Remove declaration.
* buffer.h (Vafter_change_functions, Vbefore_change_functions)
(Vdeactivate_mark, Vfirst_change_hook, Vtransient_mark_mode)
(inhibit_modification_hooks): Remove declaration.
* xterm.c (syms_of_xterm): Update.
(Vx_alt_keysym, Vx_hyper_keysym, Vx_keysym_table)
(Vx_meta_keysym, Vx_super_keysym, Vx_toolkit_scroll_bars)
(x_mouse_click_focus_ignore_position)
(x_underline_at_descent_line)
(x_use_underline_position_properties): Remove.
* xsmfns.c (syms_of_xsmfns): Update.
(Vx_session_id, Vx_session_previous_id): Remove.
* xsettings.c (syms_of_xsettings): Update.
(Vxft_settings, use_system_font): Remove.
* xselect.c (syms_of_xselect): Update.
(Vselection_converter_alist, Vx_lost_selection_functions)
(Vx_sent_selection_functions, x_selection_timeout): Remove.
* xfns.c (syms_of_xfns): Update.
(Vgtk_version_string, Vmotif_version_string)
(Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
(Vx_max_tooltip_size, Vx_mode_pointer_shape)
(Vx_no_window_manager, Vx_nontext_pointer_shape)
(Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
(Vx_sensitive_text_pointer_shape)
(Vx_window_horizontal_drag_shape, x_gtk_file_dialog_help_text)
(x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
(x_gtk_use_system_tooltips, x_gtk_whole_detached_tool_bar):
Remove.
* xfaces.c (syms_of_xfaces): Update.
(Vface_default_stipple, Vface_font_rescale_alist)
(Vface_ignored_fonts, Vface_new_frame_defaults)
(Vface_remapping_alist, Vfont_list_limit)
(Vscalable_fonts_allowed, Vtty_defined_color_alist): Remove.
* xdisp.c (syms_of_xdisp): Update.
(Vauto_resize_tool_bars, Vblink_cursor_alist)
(Vdisplay_pixels_per_inch, Vfontification_functions)
(Vframe_title_format, Vglobal_mode_string)
(Vglyphless_char_display, Vhourglass_delay, Vhscroll_step)
(Vicon_title_format, Vinhibit_redisplay)
(Vline_number_display_limit, Vline_prefix)
(Vmax_mini_window_height, Vmenu_bar_update_hook)
(Vmenu_updating_frame, Vmessage_log_max)
(Vmouse_autoselect_window, Vnobreak_char_display)
(Voverlay_arrow_position, Voverlay_arrow_string)
(Voverlay_arrow_variable_list, Vredisplay_end_trigger_functions)
(Vresize_mini_windows, Vshow_trailing_whitespace)
(Vtool_bar_border, Vtool_bar_button_margin, Vtool_bar_style)
(Vtruncate_partial_width_windows, Vvoid_text_area_pointer)
(Vwindow_scroll_functions, Vwindow_size_change_functions)
(Vwindow_text_change_functions, Vwrap_prefix)
(auto_raise_tool_bar_buttons_p, automatic_hscrolling_p)
(debug_end_pos, display_hourglass_p, emacs_scroll_step)
(highlight_nonselected_windows, hscroll_margin)
(inhibit_eval_during_redisplay, inhibit_free_realized_faces)
(inhibit_menubar_update, inhibit_try_cursor_movement)
(inhibit_try_window_id, inhibit_try_window_reusing)
(line_number_display_limit_width)
(make_cursor_line_fully_visible_p, message_truncate_lines)
(mode_line_inverse_video, multiple_frames, overline_margin)
(scroll_conservatively, scroll_margin, tool_bar_button_relief)
(tool_bar_max_label_size, underline_minimum_offset)
(unibyte_display_via_language_environment, x_stretch_cursor_p):
Remove.
* window.c (syms_of_window): Update.
(Vminibuf_scroll_window, Vother_window_scroll_buffer)
(Vrecenter_redisplay, Vscroll_preserve_screen_position)
(Vtemp_buffer_show_function, Vwindow_configuration_change_hook)
(Vwindow_point_insertion_type, auto_window_vscroll_p)
(mode_line_in_non_selected_windows, next_screen_context_lines)
(window_min_height, window_min_width): Remove.
(scroll_margin): Remove declaration.
* w32term.c (syms_of_w32term): Update.
(Vw32_capslock_is_shiftlock, Vw32_grab_focus_on_raise)
(Vw32_recognize_altgr, Vw32_swap_mouse_buttons)
(Vx_toolkit_scroll_bars, w32_num_mouse_buttons)
(w32_use_visible_system_caret, x_underline_at_descent_line)
(x_use_underline_position_properties): Remove.
(Vcommand_line_args, Vsystem_name, extra_keyboard_modifiers):
Remove declaration.
* w32select.c (syms_of_w32select): Update.
(Vnext_selection_coding_system, Vselection_coding_system): Remove.
* w32proc.c (syms_of_ntproc): Update.
(Vw32_downcase_file_names, Vw32_generate_fake_inodes)
(Vw32_get_true_file_attributes, Vw32_quote_process_args)
(Vw32_start_process_inherit_error_mode)
(Vw32_start_process_share_console)
(Vw32_start_process_show_window, w32_pipe_read_delay): Remove.
(Vsystem_name): Remove declaration.
* w32font.c (syms_of_w32font): Update.
(Vw32_charset_info_alist): Remove.
* w32fns.c (globals_of_w32fns, syms_of_w32fns): Update.
(Vw32_alt_is_meta, Vw32_apps_modifier, Vw32_bdf_filename_alist)
(Vw32_color_map, Vw32_enable_caps_lock, Vw32_enable_num_lock)
(Vw32_enable_palette, Vw32_lwindow_modifier)
(Vw32_pass_alt_to_system, Vw32_pass_lwindow_to_system)
(Vw32_pass_rwindow_to_system, Vw32_phantom_key_code)
(Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
(Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
(Vx_max_tooltip_size, Vx_mode_pointer_shape)
(Vx_no_window_manager, Vx_nontext_pointer_shape)
(Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
(Vx_sensitive_text_pointer_shape)
(Vx_window_horizontal_drag_shape, w32_ansi_code_page)
(w32_enable_synthesized_fonts, w32_mouse_button_tolerance)
(w32_mouse_move_interval)
(w32_pass_extra_mouse_buttons_to_system)
(w32_pass_multimedia_buttons_to_system, w32_quit_key)
(w32_strict_fontnames, w32_strict_painting): Remove.
(Vhourglass_delay, Vmenu_bar_mode, Vtool_bar_mode)
(Vw32_recognize_altgr, Vwindow_system_version)
(w32_num_mouse_buttons, w32_use_visible_system_caret): Remove
declaration.
* w32console.c (syms_of_ntterm): Update.
(w32_use_full_screen_buffer): Remove.
(Vtty_defined_color_alist): Remove declaration.
* w16select.c (syms_of_win16select): Update.
(Vnext_selection_coding_system, Vselection_coding_system): Remove.
* undo.c (syms_of_undo): Update.
(Vundo_outer_limit, Vundo_outer_limit_function)
(undo_inhibit_record_point, undo_limit, undo_strong_limit):
Remove.
* textprop.c (syms_of_textprop): Update.
(Vchar_property_alias_alist, Vdefault_text_properties)
(Vinhibit_point_motion_hooks, Vtext_property_default_nonsticky):
Remove.
* terminal.c (syms_of_terminal): Update.
(Vdelete_terminal_functions, Vring_bell_function): Remove.
* term.c (syms_of_term): Update.
(Vresume_tty_functions, Vsuspend_tty_functions)
(no_redraw_on_reenter, system_uses_terminfo, visible_cursor):
Remove.
* syntax.c (syms_of_syntax): Update.
(Vfind_word_boundary_function_table, multibyte_syntax_as_symbol)
(open_paren_in_column_0_is_defun_start)
(parse_sexp_ignore_comments, parse_sexp_lookup_properties)
(words_include_escapes): Remove.
* search.c (syms_of_search): Update.
(Vinhibit_changing_match_data, Vsearch_spaces_regexp): Remove.
* process.c (syms_of_process): Update.
(Vprocess_adaptive_read_buffering, Vprocess_connection_type)
(delete_exited_processes): Remove.
* print.c (syms_of_print): Update.
(Vfloat_output_format, Vprint_charset_text_property)
(Vprint_circle, Vprint_continuous_numbering, Vprint_gensym)
(Vprint_length, Vprint_level, Vprint_number_table)
(Vstandard_output, print_escape_multibyte)
(print_escape_newlines, print_escape_nonascii, print_quoted):
Remove.
* msdos.c (syms_of_msdos): Update.
(Vdos_unsupported_char_glyph): Remove.
(unibyte_display_via_language_environment): Remove declaration.
* minibuf.c (syms_of_minibuf): Update.
(Vcompletion_regexp_list, Vhistory_add_new_input)
(Vhistory_length, Vminibuffer_completing_file_name)
(Vminibuffer_completion_confirm)
(Vminibuffer_completion_predicate, Vminibuffer_completion_table)
(Vminibuffer_exit_hook, Vminibuffer_help_form)
(Vminibuffer_history_position, Vminibuffer_history_variable)
(Vminibuffer_prompt_properties, Vminibuffer_setup_hook)
(Vread_buffer_function, Vread_expression_map)
(completion_ignore_case, enable_recursive_minibuffers)
(history_delete_duplicates, minibuffer_allow_text_properties)
(minibuffer_auto_raise, read_buffer_completion_ignore_case):
Remove.
* marker.c (syms_of_marker): Update.
(byte_debug_flag): Remove.
* macros.c (syms_of_macros): Update.
(Vexecuting_kbd_macro, executing_kbd_macro_index): Remove.
* lread.c (syms_of_lread): Update.
(Vafter_load_alist, Vbyte_boolean_vars)
(Vbytecomp_version_regexp, Vcurrent_load_list)
(Veval_buffer_list, Vload_file_name, Vload_file_rep_suffixes)
(Vload_history, Vload_path, Vload_read_function)
(Vload_source_file_function, Vload_suffixes, Vobarray)
(Vold_style_backquotes, Vpreloaded_file_list, Vread_circle)
(Vread_symbol_positions_list, Vread_with_symbol_positions)
(Vsource_directory, Vstandard_input, Vuser_init_file, Vvalues)
(force_load_messages, load_convert_to_unibyte)
(load_dangerous_libraries, load_force_doc_strings)
(load_in_progress): Remove.
* keymap.c (syms_of_keymap): Update.
(Vdefine_key_rebound_commands, Vemulation_mode_map_alists)
(Vminibuffer_local_completion_map)
(Vminibuffer_local_filename_completion_map)
(Vminibuffer_local_filename_must_match_map)
(Vminibuffer_local_map, Vminibuffer_local_must_match_map)
(Vminibuffer_local_ns_map, Vminor_mode_map_alist)
(Vminor_mode_overriding_map_alist, Vwhere_is_preferred_modifier):
Remove.
* keyboard.c (syms_of_keyboard): Update.
(Vauto_save_timeout, Vcommand_error_function)
(Vcommand_hook_internal, Vdeactivate_mark)
(Vdeferred_action_function, Vdeferred_action_list)
(Vdisable_point_adjustment, Vdouble_click_time)
(Vecho_keystrokes, Venable_disabled_menus_and_buttons)
(Vfunction_key_map, Vglobal_disable_point_adjustment)
(Vhelp_char, Vhelp_event_list, Vhelp_form)
(Vinput_method_function, Vinput_method_previous_message)
(Vkey_translation_map, Vlast_event_frame)
(Vlucid_menu_bar_dirty_flag, Vmenu_bar_final_items)
(Vminibuffer_message_timeout, Voverriding_local_map)
(Voverriding_local_map_menu_flag, Vpost_command_hook)
(Vpre_command_hook, Vprefix_help_command)
(Vsaved_region_selection, Vselect_active_regions)
(Vshow_help_function, Vspecial_event_map, Vsuggest_key_bindings)
(Vthis_command, Vthis_command_keys_shift_translated)
(Vthis_original_command, Vthrow_on_input, Vtimer_idle_list)
(Vtimer_list, Vtool_bar_separator_image_expression, Vtop_level)
(Vtty_erase_char, Vunread_command_events)
(Vunread_input_method_events, Vunread_post_input_method_events)
(auto_save_interval, cannot_suspend, do_mouse_tracking)
(double_click_fuzz, extra_keyboard_modifiers)
(inhibit_local_menu_bar_menus, last_command_event)
(last_input_event, last_nonmenu_event, menu_prompt_more_char)
(menu_prompting, meta_prefix_char, num_input_keys)
(num_nonmacro_input_events, polling_period, unread_command_char):
Remove.
* insdel.c (syms_of_insdel): Update.
(Vcombine_after_change_calls, check_markers_debug_flag): Remove.
* indent.c (syms_of_indent): Update.
(indent_tabs_mode): Remove.
* image.c (syms_of_image): Update.
(Vimage_cache_eviction_delay, Vimage_types)
(Vimagemagick_render_type, Vmax_image_size, Vx_bitmap_file_path)
(cross_disabled_images): Remove.
* fringe.c (syms_of_fringe): Update.
(Vfringe_bitmaps, Voverflow_newline_into_fringe): Remove.
* frame.c (syms_of_frame): Update.
(Vdefault_frame_alist, Vdefault_frame_scroll_bars)
(Vdelete_frame_functions, Vframe_alpha_lower_limit)
(Vmake_pointer_invisible, Vmenu_bar_mode, Vmouse_highlight)
(Vmouse_position_function, Vterminal_frame, Vtool_bar_mode)
(Vx_resource_class, Vx_resource_name, focus_follows_mouse):
Remove.
* fontset.c (syms_of_fontset): Update.
(Valternate_fontname_alist, Vfont_encoding_charset_alist)
(Vfontset_alias_alist, Vignore_relative_composition)
(Votf_script_alist, Vuse_default_ascent)
(Vvertical_centering_font_regexp): Remove.
* font.c (syms_of_font): Update.
(Vfont_encoding_alist, Vfont_log, Vfont_slant_table)
(Vfont_weight_table, Vfont_width_table): Remove.
* fns.c (syms_of_fns): Update.
(Vfeatures, use_dialog_box, use_file_dialog): Remove.
* filelock.c (syms_of_filelock): Update.
(Vtemporary_file_directory): Remove.
* fileio.c (syms_of_fileio): Update.
(Vafter_insert_file_functions, Vauto_save_include_big_deletions)
(Vauto_save_list_file_name, Vauto_save_visited_file_name)
(Vdefault_file_name_coding_system, Vfile_name_coding_system)
(Vfile_name_handler_alist, Vinhibit_file_name_handlers)
(Vinhibit_file_name_operation, Vset_auto_coding_function)
(Vwrite_region_annotate_functions)
(Vwrite_region_annotations_so_far)
(Vwrite_region_post_annotation_function)
(delete_by_moving_to_trash, write_region_inhibit_fsync): Remove.
(Vw32_get_true_file_attributes): Remove declaration.
* eval.c (syms_of_eval): Update.
(Vdebug_ignored_errors, Vdebug_on_error, Vdebug_on_signal)
(Vdebugger, Vinhibit_quit, Vmacro_declaration_function)
(Vquit_flag, Vsignal_hook_function, Vstack_trace_on_error)
(debug_on_next_call, debug_on_quit, debugger_may_continue)
(max_lisp_eval_depth, max_specpdl_size): Remove.
* emacs.c (syms_of_emacs): Update.
(Vafter_init_time, Vbefore_init_time, Vcommand_line_args)
(Vdynamic_library_alist, Vemacs_copyright, Vemacs_version)
(Vinstallation_directory, Vinvocation_directory)
(Vinvocation_name, Vkill_emacs_hook, Vpath_separator)
(Vprevious_system_messages_locale, Vprevious_system_time_locale)
(Vsystem_configuration, Vsystem_configuration_options)
(Vsystem_messages_locale, Vsystem_time_locale, Vsystem_type)
(inhibit_x_resources, noninteractive1): Remove.
* editfns.c (syms_of_editfns): Update.
(Vbuffer_access_fontified_property)
(Vbuffer_access_fontify_functions, Vinhibit_field_text_motion)
(Voperating_system_release, Vsystem_name, Vuser_full_name)
(Vuser_login_name, Vuser_real_login_name): Remove.
* dosfns.c (syms_of_dosfns): Update.
(Vdos_display_scancodes, Vdos_version, Vdos_windows_version)
(dos_codepage, dos_country_code, dos_decimal_point)
(dos_hyper_key, dos_keyboard_layout, dos_keypad_mode)
(dos_super_key, dos_timezone_offset): Remove.
* doc.c (syms_of_doc): Update.
(Vbuild_files, Vdoc_file_name): Remove.
* dispnew.c (syms_of_display): Update.
(Vglyph_table, Vinitial_window_system)
(Vredisplay_preemption_period, Vstandard_display_table)
(Vwindow_system_version, baud_rate, cursor_in_echo_area)
(inverse_video, redisplay_dont_pause, visible_bell): Remove.
* dired.c (syms_of_dired): Update.
(Vcompletion_ignored_extensions): Remove.
(Vw32_get_true_file_attributes): Remove declaration.
* dbusbind.c (syms_of_dbusbind): Update.
(Vdbus_debug, Vdbus_registered_buses)
(Vdbus_registered_objects_table): Remove.
* data.c (syms_of_data): Update.
(Vmost_negative_fixnum, Vmost_positive_fixnum): Remove.
* composite.c (syms_of_composite): Update.
(Vauto_composition_function, Vauto_composition_mode)
(Vcompose_chars_after_function, Vcomposition_function_table):
Remove.
* coding.c (syms_of_coding): Update.
(Vcharset_revision_table, Vcoding_category_list)
(Vcoding_system_alist, Vcoding_system_for_read)
(Vcoding_system_for_write, Vcoding_system_list)
(Vdefault_process_coding_system, Venable_character_translation)
(Vfile_coding_system_alist, Vlast_code_conversion_error)
(Vlast_coding_system_used, Vlatin_extra_code_table)
(Vlocale_coding_system, Vnetwork_coding_system_alist)
(Vprocess_coding_system_alist)
(Vselect_safe_coding_system_function)
(Vstandard_translation_table_for_decode)
(Vstandard_translation_table_for_encode)
(Vtranslation_table_for_input, coding_system_require_warning)
(eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
(eol_mnemonic_unix, inherit_process_coding_system)
(inhibit_eol_conversion, inhibit_iso_escape_detection)
(inhibit_null_byte_detection): Remove.
* cmds.c (syms_of_cmds): Update.
(Vpost_self_insert_hook): Remove.
* charset.c (syms_of_charset): Update.
(Vcharset_list, Vcharset_map_path, Vcurrent_iso639_language)
(inhibit_load_charset_map): Remove.
* character.c (syms_of_character): Update.
(Vauto_fill_chars, Vchar_direction_table, Vchar_script_table)
(Vchar_width_table, Vprintable_chars)
(Vscript_representative_chars, Vtranslation_table_vector)
(Vunicode_category_table): Remove.
* ccl.c (syms_of_ccl): Update.
(Vcode_conversion_map_vector, Vfont_ccl_encoder_alist)
(Vtranslation_hash_table_vector): Remove.
* category.c (syms_of_category): Update.
(Vword_combining_categories, Vword_separating_categories): Remove.
* callproc.c (syms_of_callproc): Update.
(Vconfigure_info_directory, Vdata_directory, Vdoc_directory)
(Vexec_directory, Vexec_path, Vexec_suffixes)
(Vinitial_environment, Vprocess_environment)
(Vshared_game_score_directory, Vshell_file_name): Remove.
* callint.c (syms_of_callint): Update.
(Vcommand_debug_status, Vcommand_history, Vcurrent_prefix_arg)
(Vmark_even_if_inactive, Vmouse_leave_buffer_hook): Remove.
* bytecode.c (syms_of_bytecode): Update.
(Vbyte_code_meter, byte_metering_on): Remove.
* buffer.c (syms_of_buffer): Update.
(Vafter_change_functions, Vbefore_change_functions)
(Vchange_major_mode_hook, Vfirst_change_hook)
(Vinhibit_read_only, Vkill_buffer_query_functions)
(Vtransient_mark_mode, inhibit_modification_hooks): Remove.
* alloc.c (syms_of_alloc): Update.
(Vgc_cons_percentage, Vgc_elapsed, Vmemory_full)
(Vmemory_signal_data, Vpost_gc_hook, Vpurify_flag)
(cons_cells_consed, floats_consed, garbage_collection_messages)
(gc_cons_threshold, gcs_done, intervals_consed)
(misc_objects_consed, pure_bytes_used, string_chars_consed)
(strings_consed, symbols_consed, vector_cells_consed): Remove.
* lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
(DEFVAR_INT): Assume global is in `globals'.
* alloc.c (globals): Define.
author | Tom Tromey <tromey@redhat.com> |
---|---|
date | Tue, 18 Jan 2011 13:45:37 -0700 |
parents | 116a3428737d |
children | 9de5a68b57e1 |
comparison
equal
deleted
inserted
replaced
112363:6a0c66185ba1 | 112364:42e22c4f06b7 |
---|---|
317 #endif | 317 #endif |
318 | 318 |
319 #define INFINITY 10000000 | 319 #define INFINITY 10000000 |
320 | 320 |
321 Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map; | 321 Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map; |
322 Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions; | 322 Lisp_Object Qwindow_scroll_functions; |
323 Lisp_Object Qwindow_text_change_functions, Vwindow_text_change_functions; | 323 Lisp_Object Qwindow_text_change_functions; |
324 Lisp_Object Qredisplay_end_trigger_functions, Vredisplay_end_trigger_functions; | 324 Lisp_Object Qredisplay_end_trigger_functions; |
325 Lisp_Object Qinhibit_point_motion_hooks; | 325 Lisp_Object Qinhibit_point_motion_hooks; |
326 Lisp_Object QCeval, QCfile, QCdata, QCpropertize; | 326 Lisp_Object QCeval, QCfile, QCdata, QCpropertize; |
327 Lisp_Object Qfontified; | 327 Lisp_Object Qfontified; |
328 Lisp_Object Qgrow_only; | 328 Lisp_Object Qgrow_only; |
329 Lisp_Object Qinhibit_eval_during_redisplay; | 329 Lisp_Object Qinhibit_eval_during_redisplay; |
337 Lisp_Object Qarrow, Qhand, Qtext; | 337 Lisp_Object Qarrow, Qhand, Qtext; |
338 | 338 |
339 /* Holds the list (error). */ | 339 /* Holds the list (error). */ |
340 Lisp_Object list_of_error; | 340 Lisp_Object list_of_error; |
341 | 341 |
342 /* Functions called to fontify regions of text. */ | |
343 | |
344 Lisp_Object Vfontification_functions; | |
345 Lisp_Object Qfontification_functions; | 342 Lisp_Object Qfontification_functions; |
346 | 343 |
347 /* Non-nil means automatically select any window when the mouse | 344 Lisp_Object Qwrap_prefix; |
348 cursor moves into it. */ | 345 Lisp_Object Qline_prefix; |
349 Lisp_Object Vmouse_autoselect_window; | |
350 | |
351 Lisp_Object Vwrap_prefix, Qwrap_prefix; | |
352 Lisp_Object Vline_prefix, Qline_prefix; | |
353 | |
354 /* Non-zero means draw tool bar buttons raised when the mouse moves | |
355 over them. */ | |
356 | |
357 int auto_raise_tool_bar_buttons_p; | |
358 | |
359 /* Non-zero means to reposition window if cursor line is only partially visible. */ | |
360 | |
361 int make_cursor_line_fully_visible_p; | |
362 | |
363 /* Margin below tool bar in pixels. 0 or nil means no margin. | |
364 If value is `internal-border-width' or `border-width', | |
365 the corresponding frame parameter is used. */ | |
366 | |
367 Lisp_Object Vtool_bar_border; | |
368 | |
369 /* Margin around tool bar buttons in pixels. */ | |
370 | |
371 Lisp_Object Vtool_bar_button_margin; | |
372 | |
373 /* Thickness of shadow to draw around tool bar buttons. */ | |
374 | |
375 EMACS_INT tool_bar_button_relief; | |
376 | |
377 /* Non-nil means automatically resize tool-bars so that all tool-bar | |
378 items are visible, and no blank lines remain. | |
379 | |
380 If value is `grow-only', only make tool-bar bigger. */ | |
381 | |
382 Lisp_Object Vauto_resize_tool_bars; | |
383 | |
384 /* Type of tool bar. Can be symbols image, text, both or both-hroiz. */ | |
385 | |
386 Lisp_Object Vtool_bar_style; | |
387 | |
388 /* Maximum number of characters a label can have to be shown. */ | |
389 | |
390 EMACS_INT tool_bar_max_label_size; | |
391 | |
392 /* Non-zero means draw block and hollow cursor as wide as the glyph | |
393 under it. For example, if a block cursor is over a tab, it will be | |
394 drawn as wide as that tab on the display. */ | |
395 | |
396 int x_stretch_cursor_p; | |
397 | 346 |
398 /* Non-nil means don't actually do any redisplay. */ | 347 /* Non-nil means don't actually do any redisplay. */ |
399 | 348 |
400 Lisp_Object Vinhibit_redisplay, Qinhibit_redisplay; | 349 Lisp_Object Qinhibit_redisplay; |
401 | |
402 /* Non-zero means Lisp evaluation during redisplay is inhibited. */ | |
403 | |
404 int inhibit_eval_during_redisplay; | |
405 | 350 |
406 /* Names of text properties relevant for redisplay. */ | 351 /* Names of text properties relevant for redisplay. */ |
407 | 352 |
408 Lisp_Object Qdisplay; | 353 Lisp_Object Qdisplay; |
409 | 354 |
410 /* Symbols used in text property values. */ | |
411 | |
412 Lisp_Object Vdisplay_pixels_per_inch; | |
413 Lisp_Object Qspace, QCalign_to, QCrelative_width, QCrelative_height; | 355 Lisp_Object Qspace, QCalign_to, QCrelative_width, QCrelative_height; |
414 Lisp_Object Qleft_margin, Qright_margin, Qspace_width, Qraise; | 356 Lisp_Object Qleft_margin, Qright_margin, Qspace_width, Qraise; |
415 Lisp_Object Qslice; | 357 Lisp_Object Qslice; |
416 Lisp_Object Qcenter; | 358 Lisp_Object Qcenter; |
417 Lisp_Object Qmargin, Qpointer; | 359 Lisp_Object Qmargin, Qpointer; |
418 Lisp_Object Qline_height; | 360 Lisp_Object Qline_height; |
419 | |
420 /* Non-nil means highlight trailing whitespace. */ | |
421 | |
422 Lisp_Object Vshow_trailing_whitespace; | |
423 | |
424 /* Non-nil means escape non-break space and hyphens. */ | |
425 | |
426 Lisp_Object Vnobreak_char_display; | |
427 | 361 |
428 #ifdef HAVE_WINDOW_SYSTEM | 362 #ifdef HAVE_WINDOW_SYSTEM |
429 | 363 |
430 /* Test if overflow newline into fringe. Called with iterator IT | 364 /* Test if overflow newline into fringe. Called with iterator IT |
431 at or past right window margin, and with IT->current_x set. */ | 365 at or past right window margin, and with IT->current_x set. */ |
446 /* Test if the display element loaded in IT is a space or tab | 380 /* Test if the display element loaded in IT is a space or tab |
447 character. This is used to determine word wrapping. */ | 381 character. This is used to determine word wrapping. */ |
448 | 382 |
449 #define IT_DISPLAYING_WHITESPACE(it) \ | 383 #define IT_DISPLAYING_WHITESPACE(it) \ |
450 (it->what == IT_CHARACTER && (it->c == ' ' || it->c == '\t')) | 384 (it->what == IT_CHARACTER && (it->c == ' ' || it->c == '\t')) |
451 | |
452 /* Non-nil means show the text cursor in void text areas | |
453 i.e. in blank areas after eol and eob. This used to be | |
454 the default in 21.3. */ | |
455 | |
456 Lisp_Object Vvoid_text_area_pointer; | |
457 | 385 |
458 /* Name of the face used to highlight trailing whitespace. */ | 386 /* Name of the face used to highlight trailing whitespace. */ |
459 | 387 |
460 Lisp_Object Qtrailing_whitespace; | 388 Lisp_Object Qtrailing_whitespace; |
461 | 389 |
520 | 448 |
521 /* Buffer that this_line_.* variables are referring to. */ | 449 /* Buffer that this_line_.* variables are referring to. */ |
522 | 450 |
523 static struct buffer *this_line_buffer; | 451 static struct buffer *this_line_buffer; |
524 | 452 |
525 /* Nonzero means truncate lines in all windows less wide than the | |
526 frame. */ | |
527 | |
528 Lisp_Object Vtruncate_partial_width_windows; | |
529 | |
530 /* A flag to control how to display unibyte 8-bit character. */ | |
531 | |
532 int unibyte_display_via_language_environment; | |
533 | |
534 /* Nonzero means we have more than one non-mini-buffer-only frame. | |
535 Not guaranteed to be accurate except while parsing | |
536 frame-title-format. */ | |
537 | |
538 int multiple_frames; | |
539 | |
540 Lisp_Object Vglobal_mode_string; | |
541 | |
542 | |
543 /* List of variables (symbols) which hold markers for overlay arrows. | |
544 The symbols on this list are examined during redisplay to determine | |
545 where to display overlay arrows. */ | |
546 | |
547 Lisp_Object Voverlay_arrow_variable_list; | |
548 | |
549 /* Marker for where to display an arrow on top of the buffer text. */ | |
550 | |
551 Lisp_Object Voverlay_arrow_position; | |
552 | |
553 /* String to display for the arrow. Only used on terminal frames. */ | |
554 | |
555 Lisp_Object Voverlay_arrow_string; | |
556 | 453 |
557 /* Values of those variables at last redisplay are stored as | 454 /* Values of those variables at last redisplay are stored as |
558 properties on `overlay-arrow-position' symbol. However, if | 455 properties on `overlay-arrow-position' symbol. However, if |
559 Voverlay_arrow_position is a marker, last-arrow-position is its | 456 Voverlay_arrow_position is a marker, last-arrow-position is its |
560 numerical position. */ | 457 numerical position. */ |
564 /* Alternative overlay-arrow-string and overlay-arrow-bitmap | 461 /* Alternative overlay-arrow-string and overlay-arrow-bitmap |
565 properties on a symbol in overlay-arrow-variable-list. */ | 462 properties on a symbol in overlay-arrow-variable-list. */ |
566 | 463 |
567 Lisp_Object Qoverlay_arrow_string, Qoverlay_arrow_bitmap; | 464 Lisp_Object Qoverlay_arrow_string, Qoverlay_arrow_bitmap; |
568 | 465 |
569 /* Like mode-line-format, but for the title bar on a visible frame. */ | 466 Lisp_Object Qmenu_bar_update_hook; |
570 | |
571 Lisp_Object Vframe_title_format; | |
572 | |
573 /* Like mode-line-format, but for the title bar on an iconified frame. */ | |
574 | |
575 Lisp_Object Vicon_title_format; | |
576 | |
577 /* List of functions to call when a window's size changes. These | |
578 functions get one arg, a frame on which one or more windows' sizes | |
579 have changed. */ | |
580 | |
581 static Lisp_Object Vwindow_size_change_functions; | |
582 | |
583 Lisp_Object Qmenu_bar_update_hook, Vmenu_bar_update_hook; | |
584 | 467 |
585 /* Nonzero if an overlay arrow has been displayed in this window. */ | 468 /* Nonzero if an overlay arrow has been displayed in this window. */ |
586 | 469 |
587 static int overlay_arrow_seen; | 470 static int overlay_arrow_seen; |
588 | |
589 /* Nonzero means highlight the region even in nonselected windows. */ | |
590 | |
591 int highlight_nonselected_windows; | |
592 | |
593 /* If cursor motion alone moves point off frame, try scrolling this | |
594 many lines up or down if that will bring it back. */ | |
595 | |
596 static EMACS_INT emacs_scroll_step; | |
597 | |
598 /* Nonzero means scroll just far enough to bring point back on the | |
599 screen, when appropriate. */ | |
600 | |
601 static EMACS_INT scroll_conservatively; | |
602 | |
603 /* Recenter the window whenever point gets within this many lines of | |
604 the top or bottom of the window. This value is translated into a | |
605 pixel value by multiplying it with FRAME_LINE_HEIGHT, which means | |
606 that there is really a fixed pixel height scroll margin. */ | |
607 | |
608 EMACS_INT scroll_margin; | |
609 | 471 |
610 /* Number of windows showing the buffer of the selected window (or | 472 /* Number of windows showing the buffer of the selected window (or |
611 another buffer with the same base buffer). keyboard.c refers to | 473 another buffer with the same base buffer). keyboard.c refers to |
612 this. */ | 474 this. */ |
613 | 475 |
614 int buffer_shared; | 476 int buffer_shared; |
615 | 477 |
616 /* Vector containing glyphs for an ellipsis `...'. */ | 478 /* Vector containing glyphs for an ellipsis `...'. */ |
617 | 479 |
618 static Lisp_Object default_invis_vector[3]; | 480 static Lisp_Object default_invis_vector[3]; |
619 | |
620 /* Zero means display the mode-line/header-line/menu-bar in the default face | |
621 (this slightly odd definition is for compatibility with previous versions | |
622 of emacs), non-zero means display them using their respective faces. | |
623 | |
624 This variable is deprecated. */ | |
625 | |
626 int mode_line_inverse_video; | |
627 | 481 |
628 /* Prompt to display in front of the mini-buffer contents. */ | 482 /* Prompt to display in front of the mini-buffer contents. */ |
629 | 483 |
630 Lisp_Object minibuf_prompt; | 484 Lisp_Object minibuf_prompt; |
631 | 485 |
668 /* Nonzero after display_mode_line if %l was used and it displayed a | 522 /* Nonzero after display_mode_line if %l was used and it displayed a |
669 line number. */ | 523 line number. */ |
670 | 524 |
671 int line_number_displayed; | 525 int line_number_displayed; |
672 | 526 |
673 /* Maximum buffer size for which to display line numbers. */ | |
674 | |
675 Lisp_Object Vline_number_display_limit; | |
676 | |
677 /* Line width to consider when repositioning for line number display. */ | |
678 | |
679 static EMACS_INT line_number_display_limit_width; | |
680 | |
681 /* Number of lines to keep in the message log buffer. t means | |
682 infinite. nil means don't log at all. */ | |
683 | |
684 Lisp_Object Vmessage_log_max; | |
685 | |
686 /* The name of the *Messages* buffer, a string. */ | 527 /* The name of the *Messages* buffer, a string. */ |
687 | 528 |
688 static Lisp_Object Vmessages_buffer_name; | 529 static Lisp_Object Vmessages_buffer_name; |
689 | 530 |
690 /* Current, index 0, and last displayed echo area message. Either | 531 /* Current, index 0, and last displayed echo area message. Either |
711 int message_buf_print; | 552 int message_buf_print; |
712 | 553 |
713 /* The symbol `inhibit-menubar-update' and its DEFVAR_BOOL variable. */ | 554 /* The symbol `inhibit-menubar-update' and its DEFVAR_BOOL variable. */ |
714 | 555 |
715 Lisp_Object Qinhibit_menubar_update; | 556 Lisp_Object Qinhibit_menubar_update; |
716 int inhibit_menubar_update; | |
717 | |
718 /* When evaluating expressions from menu bar items (enable conditions, | |
719 for instance), this is the frame they are being processed for. */ | |
720 | |
721 Lisp_Object Vmenu_updating_frame; | |
722 | |
723 /* Maximum height for resizing mini-windows. Either a float | |
724 specifying a fraction of the available height, or an integer | |
725 specifying a number of lines. */ | |
726 | |
727 Lisp_Object Vmax_mini_window_height; | |
728 | |
729 /* Non-zero means messages should be displayed with truncated | |
730 lines instead of being continued. */ | |
731 | |
732 int message_truncate_lines; | |
733 Lisp_Object Qmessage_truncate_lines; | 557 Lisp_Object Qmessage_truncate_lines; |
734 | 558 |
735 /* Set to 1 in clear_message to make redisplay_internal aware | 559 /* Set to 1 in clear_message to make redisplay_internal aware |
736 of an emptied echo area. */ | 560 of an emptied echo area. */ |
737 | 561 |
738 static int message_cleared_p; | 562 static int message_cleared_p; |
739 | |
740 /* How to blink the default frame cursor off. */ | |
741 Lisp_Object Vblink_cursor_alist; | |
742 | 563 |
743 /* A scratch glyph row with contents used for generating truncation | 564 /* A scratch glyph row with contents used for generating truncation |
744 glyphs. Also used in direct_output_for_insert. */ | 565 glyphs. Also used in direct_output_for_insert. */ |
745 | 566 |
746 #define MAX_SCRATCH_GLYPHS 100 | 567 #define MAX_SCRATCH_GLYPHS 100 |
769 | 590 |
770 #define TEXT_PROP_DISTANCE_LIMIT 100 | 591 #define TEXT_PROP_DISTANCE_LIMIT 100 |
771 | 592 |
772 #if GLYPH_DEBUG | 593 #if GLYPH_DEBUG |
773 | 594 |
774 /* Variables to turn off display optimizations from Lisp. */ | |
775 | |
776 int inhibit_try_window_id, inhibit_try_window_reusing; | |
777 int inhibit_try_cursor_movement; | |
778 | |
779 /* Non-zero means print traces of redisplay if compiled with | 595 /* Non-zero means print traces of redisplay if compiled with |
780 GLYPH_DEBUG != 0. */ | 596 GLYPH_DEBUG != 0. */ |
781 | 597 |
782 int trace_redisplay_p; | 598 int trace_redisplay_p; |
783 | 599 |
790 #define TRACE_MOVE(x) if (trace_move) fprintf x; else (void) 0 | 606 #define TRACE_MOVE(x) if (trace_move) fprintf x; else (void) 0 |
791 #else | 607 #else |
792 #define TRACE_MOVE(x) (void) 0 | 608 #define TRACE_MOVE(x) (void) 0 |
793 #endif | 609 #endif |
794 | 610 |
795 /* Non-zero means automatically scroll windows horizontally to make | |
796 point visible. */ | |
797 | |
798 int automatic_hscrolling_p; | |
799 Lisp_Object Qauto_hscroll_mode; | 611 Lisp_Object Qauto_hscroll_mode; |
800 | 612 |
801 /* How close to the margin can point get before the window is scrolled | |
802 horizontally. */ | |
803 EMACS_INT hscroll_margin; | |
804 | |
805 /* How much to scroll horizontally when point is inside the above margin. */ | |
806 Lisp_Object Vhscroll_step; | |
807 | |
808 /* The variable `resize-mini-windows'. If nil, don't resize | |
809 mini-windows. If t, always resize them to fit the text they | |
810 display. If `grow-only', let mini-windows grow only until they | |
811 become empty. */ | |
812 | |
813 Lisp_Object Vresize_mini_windows; | |
814 | |
815 /* Buffer being redisplayed -- for redisplay_window_error. */ | 613 /* Buffer being redisplayed -- for redisplay_window_error. */ |
816 | 614 |
817 struct buffer *displayed_buffer; | 615 struct buffer *displayed_buffer; |
818 | |
819 /* Space between overline and text. */ | |
820 | |
821 EMACS_INT overline_margin; | |
822 | |
823 /* Require underline to be at least this many screen pixels below baseline | |
824 This to avoid underline "merging" with the base of letters at small | |
825 font sizes, particularly when x_use_underline_position_properties is on. */ | |
826 | |
827 EMACS_INT underline_minimum_offset; | |
828 | 616 |
829 /* Value returned from text property handlers (see below). */ | 617 /* Value returned from text property handlers (see below). */ |
830 | 618 |
831 enum prop_handled | 619 enum prop_handled |
832 { | 620 { |
923 | 711 |
924 /* Non-zero while redisplay_internal is in progress. */ | 712 /* Non-zero while redisplay_internal is in progress. */ |
925 | 713 |
926 int redisplaying_p; | 714 int redisplaying_p; |
927 | 715 |
928 /* Non-zero means don't free realized faces. Bound while freeing | |
929 realized faces is dangerous because glyph matrices might still | |
930 reference them. */ | |
931 | |
932 int inhibit_free_realized_faces; | |
933 Lisp_Object Qinhibit_free_realized_faces; | 716 Lisp_Object Qinhibit_free_realized_faces; |
934 | 717 |
935 /* If a string, XTread_socket generates an event to display that string. | 718 /* If a string, XTread_socket generates an event to display that string. |
936 (The display is done in read_char.) */ | 719 (The display is done in read_char.) */ |
937 | 720 |
944 | 727 |
945 Lisp_Object previous_help_echo_string; | 728 Lisp_Object previous_help_echo_string; |
946 | 729 |
947 /* Platform-independent portion of hourglass implementation. */ | 730 /* Platform-independent portion of hourglass implementation. */ |
948 | 731 |
949 /* Non-zero means we're allowed to display a hourglass pointer. */ | |
950 int display_hourglass_p; | |
951 | |
952 /* Non-zero means an hourglass cursor is currently shown. */ | 732 /* Non-zero means an hourglass cursor is currently shown. */ |
953 int hourglass_shown_p; | 733 int hourglass_shown_p; |
954 | 734 |
955 /* If non-null, an asynchronous timer that, when it expires, displays | 735 /* If non-null, an asynchronous timer that, when it expires, displays |
956 an hourglass cursor on all frames. */ | 736 an hourglass cursor on all frames. */ |
957 struct atimer *hourglass_atimer; | 737 struct atimer *hourglass_atimer; |
958 | 738 |
959 /* Number of seconds to wait before displaying an hourglass cursor. */ | |
960 Lisp_Object Vhourglass_delay; | |
961 | |
962 /* Name of the face used to display glyphless characters. */ | 739 /* Name of the face used to display glyphless characters. */ |
963 Lisp_Object Qglyphless_char; | 740 Lisp_Object Qglyphless_char; |
964 | |
965 /* Char-table to control the display of glyphless characters. */ | |
966 Lisp_Object Vglyphless_char_display; | |
967 | 741 |
968 /* Symbol for the purpose of Vglyphless_char_display. */ | 742 /* Symbol for the purpose of Vglyphless_char_display. */ |
969 Lisp_Object Qglyphless_char_display; | 743 Lisp_Object Qglyphless_char_display; |
970 | 744 |
971 /* Method symbols for Vglyphless_char_display. */ | 745 /* Method symbols for Vglyphless_char_display. */ |
11226 EMACS_INT debug_delta, debug_delta_bytes; | 11000 EMACS_INT debug_delta, debug_delta_bytes; |
11227 | 11001 |
11228 /* Values of window_end_pos and window_end_vpos at the end of | 11002 /* Values of window_end_pos and window_end_vpos at the end of |
11229 try_window_id. */ | 11003 try_window_id. */ |
11230 | 11004 |
11231 EMACS_INT debug_end_pos, debug_end_vpos; | 11005 EMACS_INT debug_end_vpos; |
11232 | 11006 |
11233 /* Append a string to W->desired_matrix->method. FMT is a printf | 11007 /* Append a string to W->desired_matrix->method. FMT is a printf |
11234 format string. A1...A9 are a supplement for a variable-length | 11008 format string. A1...A9 are a supplement for a variable-length |
11235 argument list. If trace_redisplay_p is non-zero also printf the | 11009 argument list. If trace_redisplay_p is non-zero also printf the |
11236 resulting string to stderr. */ | 11010 resulting string to stderr. */ |
26633 staticpro (&Qright_to_left); | 26407 staticpro (&Qright_to_left); |
26634 Qleft_to_right = intern_c_string ("left-to-right"); | 26408 Qleft_to_right = intern_c_string ("left-to-right"); |
26635 staticpro (&Qleft_to_right); | 26409 staticpro (&Qleft_to_right); |
26636 | 26410 |
26637 #ifdef HAVE_WINDOW_SYSTEM | 26411 #ifdef HAVE_WINDOW_SYSTEM |
26638 DEFVAR_BOOL ("x-stretch-cursor", &x_stretch_cursor_p, | 26412 DEFVAR_BOOL ("x-stretch-cursor", x_stretch_cursor_p, |
26639 doc: /* *Non-nil means draw block cursor as wide as the glyph under it. | 26413 doc: /* *Non-nil means draw block cursor as wide as the glyph under it. |
26640 For example, if a block cursor is over a tab, it will be drawn as | 26414 For example, if a block cursor is over a tab, it will be drawn as |
26641 wide as that tab on the display. */); | 26415 wide as that tab on the display. */); |
26642 x_stretch_cursor_p = 0; | 26416 x_stretch_cursor_p = 0; |
26643 #endif | 26417 #endif |
26644 | 26418 |
26645 DEFVAR_LISP ("show-trailing-whitespace", &Vshow_trailing_whitespace, | 26419 DEFVAR_LISP ("show-trailing-whitespace", Vshow_trailing_whitespace, |
26646 doc: /* *Non-nil means highlight trailing whitespace. | 26420 doc: /* *Non-nil means highlight trailing whitespace. |
26647 The face used for trailing whitespace is `trailing-whitespace'. */); | 26421 The face used for trailing whitespace is `trailing-whitespace'. */); |
26648 Vshow_trailing_whitespace = Qnil; | 26422 Vshow_trailing_whitespace = Qnil; |
26649 | 26423 |
26650 DEFVAR_LISP ("nobreak-char-display", &Vnobreak_char_display, | 26424 DEFVAR_LISP ("nobreak-char-display", Vnobreak_char_display, |
26651 doc: /* *Control highlighting of nobreak space and soft hyphen. | 26425 doc: /* *Control highlighting of nobreak space and soft hyphen. |
26652 A value of t means highlight the character itself (for nobreak space, | 26426 A value of t means highlight the character itself (for nobreak space, |
26653 use face `nobreak-space'). | 26427 use face `nobreak-space'). |
26654 A value of nil means no highlighting. | 26428 A value of nil means no highlighting. |
26655 Other values mean display the escape glyph followed by an ordinary | 26429 Other values mean display the escape glyph followed by an ordinary |
26656 space or ordinary hyphen. */); | 26430 space or ordinary hyphen. */); |
26657 Vnobreak_char_display = Qt; | 26431 Vnobreak_char_display = Qt; |
26658 | 26432 |
26659 DEFVAR_LISP ("void-text-area-pointer", &Vvoid_text_area_pointer, | 26433 DEFVAR_LISP ("void-text-area-pointer", Vvoid_text_area_pointer, |
26660 doc: /* *The pointer shape to show in void text areas. | 26434 doc: /* *The pointer shape to show in void text areas. |
26661 A value of nil means to show the text pointer. Other options are `arrow', | 26435 A value of nil means to show the text pointer. Other options are `arrow', |
26662 `text', `hand', `vdrag', `hdrag', `modeline', and `hourglass'. */); | 26436 `text', `hand', `vdrag', `hdrag', `modeline', and `hourglass'. */); |
26663 Vvoid_text_area_pointer = Qarrow; | 26437 Vvoid_text_area_pointer = Qarrow; |
26664 | 26438 |
26665 DEFVAR_LISP ("inhibit-redisplay", &Vinhibit_redisplay, | 26439 DEFVAR_LISP ("inhibit-redisplay", Vinhibit_redisplay, |
26666 doc: /* Non-nil means don't actually do any redisplay. | 26440 doc: /* Non-nil means don't actually do any redisplay. |
26667 This is used for internal purposes. */); | 26441 This is used for internal purposes. */); |
26668 Vinhibit_redisplay = Qnil; | 26442 Vinhibit_redisplay = Qnil; |
26669 | 26443 |
26670 DEFVAR_LISP ("global-mode-string", &Vglobal_mode_string, | 26444 DEFVAR_LISP ("global-mode-string", Vglobal_mode_string, |
26671 doc: /* String (or mode line construct) included (normally) in `mode-line-format'. */); | 26445 doc: /* String (or mode line construct) included (normally) in `mode-line-format'. */); |
26672 Vglobal_mode_string = Qnil; | 26446 Vglobal_mode_string = Qnil; |
26673 | 26447 |
26674 DEFVAR_LISP ("overlay-arrow-position", &Voverlay_arrow_position, | 26448 DEFVAR_LISP ("overlay-arrow-position", Voverlay_arrow_position, |
26675 doc: /* Marker for where to display an arrow on top of the buffer text. | 26449 doc: /* Marker for where to display an arrow on top of the buffer text. |
26676 This must be the beginning of a line in order to work. | 26450 This must be the beginning of a line in order to work. |
26677 See also `overlay-arrow-string'. */); | 26451 See also `overlay-arrow-string'. */); |
26678 Voverlay_arrow_position = Qnil; | 26452 Voverlay_arrow_position = Qnil; |
26679 | 26453 |
26680 DEFVAR_LISP ("overlay-arrow-string", &Voverlay_arrow_string, | 26454 DEFVAR_LISP ("overlay-arrow-string", Voverlay_arrow_string, |
26681 doc: /* String to display as an arrow in non-window frames. | 26455 doc: /* String to display as an arrow in non-window frames. |
26682 See also `overlay-arrow-position'. */); | 26456 See also `overlay-arrow-position'. */); |
26683 Voverlay_arrow_string = make_pure_c_string ("=>"); | 26457 Voverlay_arrow_string = make_pure_c_string ("=>"); |
26684 | 26458 |
26685 DEFVAR_LISP ("overlay-arrow-variable-list", &Voverlay_arrow_variable_list, | 26459 DEFVAR_LISP ("overlay-arrow-variable-list", Voverlay_arrow_variable_list, |
26686 doc: /* List of variables (symbols) which hold markers for overlay arrows. | 26460 doc: /* List of variables (symbols) which hold markers for overlay arrows. |
26687 The symbols on this list are examined during redisplay to determine | 26461 The symbols on this list are examined during redisplay to determine |
26688 where to display overlay arrows. */); | 26462 where to display overlay arrows. */); |
26689 Voverlay_arrow_variable_list | 26463 Voverlay_arrow_variable_list |
26690 = Fcons (intern_c_string ("overlay-arrow-position"), Qnil); | 26464 = Fcons (intern_c_string ("overlay-arrow-position"), Qnil); |
26691 | 26465 |
26692 DEFVAR_INT ("scroll-step", &emacs_scroll_step, | 26466 DEFVAR_INT ("scroll-step", emacs_scroll_step, |
26693 doc: /* *The number of lines to try scrolling a window by when point moves out. | 26467 doc: /* *The number of lines to try scrolling a window by when point moves out. |
26694 If that fails to bring point back on frame, point is centered instead. | 26468 If that fails to bring point back on frame, point is centered instead. |
26695 If this is zero, point is always centered after it moves off frame. | 26469 If this is zero, point is always centered after it moves off frame. |
26696 If you want scrolling to always be a line at a time, you should set | 26470 If you want scrolling to always be a line at a time, you should set |
26697 `scroll-conservatively' to a large value rather than set this to 1. */); | 26471 `scroll-conservatively' to a large value rather than set this to 1. */); |
26698 | 26472 |
26699 DEFVAR_INT ("scroll-conservatively", &scroll_conservatively, | 26473 DEFVAR_INT ("scroll-conservatively", scroll_conservatively, |
26700 doc: /* *Scroll up to this many lines, to bring point back on screen. | 26474 doc: /* *Scroll up to this many lines, to bring point back on screen. |
26701 If point moves off-screen, redisplay will scroll by up to | 26475 If point moves off-screen, redisplay will scroll by up to |
26702 `scroll-conservatively' lines in order to bring point just barely | 26476 `scroll-conservatively' lines in order to bring point just barely |
26703 onto the screen again. If that cannot be done, then redisplay | 26477 onto the screen again. If that cannot be done, then redisplay |
26704 recenters point as usual. | 26478 recenters point as usual. |
26705 | 26479 |
26706 A value of zero means always recenter point if it moves off screen. */); | 26480 A value of zero means always recenter point if it moves off screen. */); |
26707 scroll_conservatively = 0; | 26481 scroll_conservatively = 0; |
26708 | 26482 |
26709 DEFVAR_INT ("scroll-margin", &scroll_margin, | 26483 DEFVAR_INT ("scroll-margin", scroll_margin, |
26710 doc: /* *Number of lines of margin at the top and bottom of a window. | 26484 doc: /* *Number of lines of margin at the top and bottom of a window. |
26711 Recenter the window whenever point gets within this many lines | 26485 Recenter the window whenever point gets within this many lines |
26712 of the top or bottom of the window. */); | 26486 of the top or bottom of the window. */); |
26713 scroll_margin = 0; | 26487 scroll_margin = 0; |
26714 | 26488 |
26715 DEFVAR_LISP ("display-pixels-per-inch", &Vdisplay_pixels_per_inch, | 26489 DEFVAR_LISP ("display-pixels-per-inch", Vdisplay_pixels_per_inch, |
26716 doc: /* Pixels per inch value for non-window system displays. | 26490 doc: /* Pixels per inch value for non-window system displays. |
26717 Value is a number or a cons (WIDTH-DPI . HEIGHT-DPI). */); | 26491 Value is a number or a cons (WIDTH-DPI . HEIGHT-DPI). */); |
26718 Vdisplay_pixels_per_inch = make_float (72.0); | 26492 Vdisplay_pixels_per_inch = make_float (72.0); |
26719 | 26493 |
26720 #if GLYPH_DEBUG | 26494 #if GLYPH_DEBUG |
26721 DEFVAR_INT ("debug-end-pos", &debug_end_pos, doc: /* Don't ask. */); | 26495 DEFVAR_INT ("debug-end-pos", debug_end_pos, doc: /* Don't ask. */); |
26722 #endif | 26496 #endif |
26723 | 26497 |
26724 DEFVAR_LISP ("truncate-partial-width-windows", | 26498 DEFVAR_LISP ("truncate-partial-width-windows", |
26725 &Vtruncate_partial_width_windows, | 26499 Vtruncate_partial_width_windows, |
26726 doc: /* Non-nil means truncate lines in windows narrower than the frame. | 26500 doc: /* Non-nil means truncate lines in windows narrower than the frame. |
26727 For an integer value, truncate lines in each window narrower than the | 26501 For an integer value, truncate lines in each window narrower than the |
26728 full frame width, provided the window width is less than that integer; | 26502 full frame width, provided the window width is less than that integer; |
26729 otherwise, respect the value of `truncate-lines'. | 26503 otherwise, respect the value of `truncate-lines'. |
26730 | 26504 |
26734 A value of nil means to respect the value of `truncate-lines'. | 26508 A value of nil means to respect the value of `truncate-lines'. |
26735 | 26509 |
26736 If `word-wrap' is enabled, you might want to reduce this. */); | 26510 If `word-wrap' is enabled, you might want to reduce this. */); |
26737 Vtruncate_partial_width_windows = make_number (50); | 26511 Vtruncate_partial_width_windows = make_number (50); |
26738 | 26512 |
26739 DEFVAR_BOOL ("mode-line-inverse-video", &mode_line_inverse_video, | 26513 DEFVAR_BOOL ("mode-line-inverse-video", mode_line_inverse_video, |
26740 doc: /* When nil, display the mode-line/header-line/menu-bar in the default face. | 26514 doc: /* When nil, display the mode-line/header-line/menu-bar in the default face. |
26741 Any other value means to use the appropriate face, `mode-line', | 26515 Any other value means to use the appropriate face, `mode-line', |
26742 `header-line', or `menu' respectively. */); | 26516 `header-line', or `menu' respectively. */); |
26743 mode_line_inverse_video = 1; | 26517 mode_line_inverse_video = 1; |
26744 | 26518 |
26745 DEFVAR_LISP ("line-number-display-limit", &Vline_number_display_limit, | 26519 DEFVAR_LISP ("line-number-display-limit", Vline_number_display_limit, |
26746 doc: /* *Maximum buffer size for which line number should be displayed. | 26520 doc: /* *Maximum buffer size for which line number should be displayed. |
26747 If the buffer is bigger than this, the line number does not appear | 26521 If the buffer is bigger than this, the line number does not appear |
26748 in the mode line. A value of nil means no limit. */); | 26522 in the mode line. A value of nil means no limit. */); |
26749 Vline_number_display_limit = Qnil; | 26523 Vline_number_display_limit = Qnil; |
26750 | 26524 |
26751 DEFVAR_INT ("line-number-display-limit-width", | 26525 DEFVAR_INT ("line-number-display-limit-width", |
26752 &line_number_display_limit_width, | 26526 line_number_display_limit_width, |
26753 doc: /* *Maximum line width (in characters) for line number display. | 26527 doc: /* *Maximum line width (in characters) for line number display. |
26754 If the average length of the lines near point is bigger than this, then the | 26528 If the average length of the lines near point is bigger than this, then the |
26755 line number may be omitted from the mode line. */); | 26529 line number may be omitted from the mode line. */); |
26756 line_number_display_limit_width = 200; | 26530 line_number_display_limit_width = 200; |
26757 | 26531 |
26758 DEFVAR_BOOL ("highlight-nonselected-windows", &highlight_nonselected_windows, | 26532 DEFVAR_BOOL ("highlight-nonselected-windows", highlight_nonselected_windows, |
26759 doc: /* *Non-nil means highlight region even in nonselected windows. */); | 26533 doc: /* *Non-nil means highlight region even in nonselected windows. */); |
26760 highlight_nonselected_windows = 0; | 26534 highlight_nonselected_windows = 0; |
26761 | 26535 |
26762 DEFVAR_BOOL ("multiple-frames", &multiple_frames, | 26536 DEFVAR_BOOL ("multiple-frames", multiple_frames, |
26763 doc: /* Non-nil if more than one frame is visible on this display. | 26537 doc: /* Non-nil if more than one frame is visible on this display. |
26764 Minibuffer-only frames don't count, but iconified frames do. | 26538 Minibuffer-only frames don't count, but iconified frames do. |
26765 This variable is not guaranteed to be accurate except while processing | 26539 This variable is not guaranteed to be accurate except while processing |
26766 `frame-title-format' and `icon-title-format'. */); | 26540 `frame-title-format' and `icon-title-format'. */); |
26767 | 26541 |
26768 DEFVAR_LISP ("frame-title-format", &Vframe_title_format, | 26542 DEFVAR_LISP ("frame-title-format", Vframe_title_format, |
26769 doc: /* Template for displaying the title bar of visible frames. | 26543 doc: /* Template for displaying the title bar of visible frames. |
26770 \(Assuming the window manager supports this feature.) | 26544 \(Assuming the window manager supports this feature.) |
26771 | 26545 |
26772 This variable has the same structure as `mode-line-format', except that | 26546 This variable has the same structure as `mode-line-format', except that |
26773 the %c and %l constructs are ignored. It is used only on frames for | 26547 the %c and %l constructs are ignored. It is used only on frames for |
26774 which no explicit name has been set \(see `modify-frame-parameters'). */); | 26548 which no explicit name has been set \(see `modify-frame-parameters'). */); |
26775 | 26549 |
26776 DEFVAR_LISP ("icon-title-format", &Vicon_title_format, | 26550 DEFVAR_LISP ("icon-title-format", Vicon_title_format, |
26777 doc: /* Template for displaying the title bar of an iconified frame. | 26551 doc: /* Template for displaying the title bar of an iconified frame. |
26778 \(Assuming the window manager supports this feature.) | 26552 \(Assuming the window manager supports this feature.) |
26779 This variable has the same structure as `mode-line-format' (which see), | 26553 This variable has the same structure as `mode-line-format' (which see), |
26780 and is used only on frames for which no explicit name has been set | 26554 and is used only on frames for which no explicit name has been set |
26781 \(see `modify-frame-parameters'). */); | 26555 \(see `modify-frame-parameters'). */); |
26788 pure_cons (make_pure_c_string ("@"), | 26562 pure_cons (make_pure_c_string ("@"), |
26789 pure_cons (intern_c_string ("system-name"), | 26563 pure_cons (intern_c_string ("system-name"), |
26790 Qnil)))), | 26564 Qnil)))), |
26791 Qnil))); | 26565 Qnil))); |
26792 | 26566 |
26793 DEFVAR_LISP ("message-log-max", &Vmessage_log_max, | 26567 DEFVAR_LISP ("message-log-max", Vmessage_log_max, |
26794 doc: /* Maximum number of lines to keep in the message log buffer. | 26568 doc: /* Maximum number of lines to keep in the message log buffer. |
26795 If nil, disable message logging. If t, log messages but don't truncate | 26569 If nil, disable message logging. If t, log messages but don't truncate |
26796 the buffer when it becomes large. */); | 26570 the buffer when it becomes large. */); |
26797 Vmessage_log_max = make_number (100); | 26571 Vmessage_log_max = make_number (100); |
26798 | 26572 |
26799 DEFVAR_LISP ("window-size-change-functions", &Vwindow_size_change_functions, | 26573 DEFVAR_LISP ("window-size-change-functions", Vwindow_size_change_functions, |
26800 doc: /* Functions called before redisplay, if window sizes have changed. | 26574 doc: /* Functions called before redisplay, if window sizes have changed. |
26801 The value should be a list of functions that take one argument. | 26575 The value should be a list of functions that take one argument. |
26802 Just before redisplay, for each frame, if any of its windows have changed | 26576 Just before redisplay, for each frame, if any of its windows have changed |
26803 size since the last redisplay, or have been split or deleted, | 26577 size since the last redisplay, or have been split or deleted, |
26804 all the functions in the list are called, with the frame as argument. */); | 26578 all the functions in the list are called, with the frame as argument. */); |
26805 Vwindow_size_change_functions = Qnil; | 26579 Vwindow_size_change_functions = Qnil; |
26806 | 26580 |
26807 DEFVAR_LISP ("window-scroll-functions", &Vwindow_scroll_functions, | 26581 DEFVAR_LISP ("window-scroll-functions", Vwindow_scroll_functions, |
26808 doc: /* List of functions to call before redisplaying a window with scrolling. | 26582 doc: /* List of functions to call before redisplaying a window with scrolling. |
26809 Each function is called with two arguments, the window and its new | 26583 Each function is called with two arguments, the window and its new |
26810 display-start position. Note that these functions are also called by | 26584 display-start position. Note that these functions are also called by |
26811 `set-window-buffer'. Also note that the value of `window-end' is not | 26585 `set-window-buffer'. Also note that the value of `window-end' is not |
26812 valid when these functions are called. */); | 26586 valid when these functions are called. */); |
26813 Vwindow_scroll_functions = Qnil; | 26587 Vwindow_scroll_functions = Qnil; |
26814 | 26588 |
26815 DEFVAR_LISP ("window-text-change-functions", | 26589 DEFVAR_LISP ("window-text-change-functions", |
26816 &Vwindow_text_change_functions, | 26590 Vwindow_text_change_functions, |
26817 doc: /* Functions to call in redisplay when text in the window might change. */); | 26591 doc: /* Functions to call in redisplay when text in the window might change. */); |
26818 Vwindow_text_change_functions = Qnil; | 26592 Vwindow_text_change_functions = Qnil; |
26819 | 26593 |
26820 DEFVAR_LISP ("redisplay-end-trigger-functions", &Vredisplay_end_trigger_functions, | 26594 DEFVAR_LISP ("redisplay-end-trigger-functions", Vredisplay_end_trigger_functions, |
26821 doc: /* Functions called when redisplay of a window reaches the end trigger. | 26595 doc: /* Functions called when redisplay of a window reaches the end trigger. |
26822 Each function is called with two arguments, the window and the end trigger value. | 26596 Each function is called with two arguments, the window and the end trigger value. |
26823 See `set-window-redisplay-end-trigger'. */); | 26597 See `set-window-redisplay-end-trigger'. */); |
26824 Vredisplay_end_trigger_functions = Qnil; | 26598 Vredisplay_end_trigger_functions = Qnil; |
26825 | 26599 |
26826 DEFVAR_LISP ("mouse-autoselect-window", &Vmouse_autoselect_window, | 26600 DEFVAR_LISP ("mouse-autoselect-window", Vmouse_autoselect_window, |
26827 doc: /* *Non-nil means autoselect window with mouse pointer. | 26601 doc: /* *Non-nil means autoselect window with mouse pointer. |
26828 If nil, do not autoselect windows. | 26602 If nil, do not autoselect windows. |
26829 A positive number means delay autoselection by that many seconds: a | 26603 A positive number means delay autoselection by that many seconds: a |
26830 window is autoselected only after the mouse has remained in that | 26604 window is autoselected only after the mouse has remained in that |
26831 window for the duration of the delay. | 26605 window for the duration of the delay. |
26841 | 26615 |
26842 When customizing this variable make sure that the actual value of | 26616 When customizing this variable make sure that the actual value of |
26843 `focus-follows-mouse' matches the behavior of your window manager. */); | 26617 `focus-follows-mouse' matches the behavior of your window manager. */); |
26844 Vmouse_autoselect_window = Qnil; | 26618 Vmouse_autoselect_window = Qnil; |
26845 | 26619 |
26846 DEFVAR_LISP ("auto-resize-tool-bars", &Vauto_resize_tool_bars, | 26620 DEFVAR_LISP ("auto-resize-tool-bars", Vauto_resize_tool_bars, |
26847 doc: /* *Non-nil means automatically resize tool-bars. | 26621 doc: /* *Non-nil means automatically resize tool-bars. |
26848 This dynamically changes the tool-bar's height to the minimum height | 26622 This dynamically changes the tool-bar's height to the minimum height |
26849 that is needed to make all tool-bar items visible. | 26623 that is needed to make all tool-bar items visible. |
26850 If value is `grow-only', the tool-bar's height is only increased | 26624 If value is `grow-only', the tool-bar's height is only increased |
26851 automatically; to decrease the tool-bar height, use \\[recenter]. */); | 26625 automatically; to decrease the tool-bar height, use \\[recenter]. */); |
26852 Vauto_resize_tool_bars = Qt; | 26626 Vauto_resize_tool_bars = Qt; |
26853 | 26627 |
26854 DEFVAR_BOOL ("auto-raise-tool-bar-buttons", &auto_raise_tool_bar_buttons_p, | 26628 DEFVAR_BOOL ("auto-raise-tool-bar-buttons", auto_raise_tool_bar_buttons_p, |
26855 doc: /* *Non-nil means raise tool-bar buttons when the mouse moves over them. */); | 26629 doc: /* *Non-nil means raise tool-bar buttons when the mouse moves over them. */); |
26856 auto_raise_tool_bar_buttons_p = 1; | 26630 auto_raise_tool_bar_buttons_p = 1; |
26857 | 26631 |
26858 DEFVAR_BOOL ("make-cursor-line-fully-visible", &make_cursor_line_fully_visible_p, | 26632 DEFVAR_BOOL ("make-cursor-line-fully-visible", make_cursor_line_fully_visible_p, |
26859 doc: /* *Non-nil means to scroll (recenter) cursor line if it is not fully visible. */); | 26633 doc: /* *Non-nil means to scroll (recenter) cursor line if it is not fully visible. */); |
26860 make_cursor_line_fully_visible_p = 1; | 26634 make_cursor_line_fully_visible_p = 1; |
26861 | 26635 |
26862 DEFVAR_LISP ("tool-bar-border", &Vtool_bar_border, | 26636 DEFVAR_LISP ("tool-bar-border", Vtool_bar_border, |
26863 doc: /* *Border below tool-bar in pixels. | 26637 doc: /* *Border below tool-bar in pixels. |
26864 If an integer, use it as the height of the border. | 26638 If an integer, use it as the height of the border. |
26865 If it is one of `internal-border-width' or `border-width', use the | 26639 If it is one of `internal-border-width' or `border-width', use the |
26866 value of the corresponding frame parameter. | 26640 value of the corresponding frame parameter. |
26867 Otherwise, no border is added below the tool-bar. */); | 26641 Otherwise, no border is added below the tool-bar. */); |
26868 Vtool_bar_border = Qinternal_border_width; | 26642 Vtool_bar_border = Qinternal_border_width; |
26869 | 26643 |
26870 DEFVAR_LISP ("tool-bar-button-margin", &Vtool_bar_button_margin, | 26644 DEFVAR_LISP ("tool-bar-button-margin", Vtool_bar_button_margin, |
26871 doc: /* *Margin around tool-bar buttons in pixels. | 26645 doc: /* *Margin around tool-bar buttons in pixels. |
26872 If an integer, use that for both horizontal and vertical margins. | 26646 If an integer, use that for both horizontal and vertical margins. |
26873 Otherwise, value should be a pair of integers `(HORZ . VERT)' with | 26647 Otherwise, value should be a pair of integers `(HORZ . VERT)' with |
26874 HORZ specifying the horizontal margin, and VERT specifying the | 26648 HORZ specifying the horizontal margin, and VERT specifying the |
26875 vertical margin. */); | 26649 vertical margin. */); |
26876 Vtool_bar_button_margin = make_number (DEFAULT_TOOL_BAR_BUTTON_MARGIN); | 26650 Vtool_bar_button_margin = make_number (DEFAULT_TOOL_BAR_BUTTON_MARGIN); |
26877 | 26651 |
26878 DEFVAR_INT ("tool-bar-button-relief", &tool_bar_button_relief, | 26652 DEFVAR_INT ("tool-bar-button-relief", tool_bar_button_relief, |
26879 doc: /* *Relief thickness of tool-bar buttons. */); | 26653 doc: /* *Relief thickness of tool-bar buttons. */); |
26880 tool_bar_button_relief = DEFAULT_TOOL_BAR_BUTTON_RELIEF; | 26654 tool_bar_button_relief = DEFAULT_TOOL_BAR_BUTTON_RELIEF; |
26881 | 26655 |
26882 DEFVAR_LISP ("tool-bar-style", &Vtool_bar_style, | 26656 DEFVAR_LISP ("tool-bar-style", Vtool_bar_style, |
26883 doc: /* Tool bar style to use. | 26657 doc: /* Tool bar style to use. |
26884 It can be one of | 26658 It can be one of |
26885 image - show images only | 26659 image - show images only |
26886 text - show text only | 26660 text - show text only |
26887 both - show both, text below image | 26661 both - show both, text below image |
26888 both-horiz - show text to the right of the image | 26662 both-horiz - show text to the right of the image |
26889 text-image-horiz - show text to the left of the image | 26663 text-image-horiz - show text to the left of the image |
26890 any other - use system default or image if no system default. */); | 26664 any other - use system default or image if no system default. */); |
26891 Vtool_bar_style = Qnil; | 26665 Vtool_bar_style = Qnil; |
26892 | 26666 |
26893 DEFVAR_INT ("tool-bar-max-label-size", &tool_bar_max_label_size, | 26667 DEFVAR_INT ("tool-bar-max-label-size", tool_bar_max_label_size, |
26894 doc: /* *Maximum number of characters a label can have to be shown. | 26668 doc: /* *Maximum number of characters a label can have to be shown. |
26895 The tool bar style must also show labels for this to have any effect, see | 26669 The tool bar style must also show labels for this to have any effect, see |
26896 `tool-bar-style'. */); | 26670 `tool-bar-style'. */); |
26897 tool_bar_max_label_size = DEFAULT_TOOL_BAR_LABEL_SIZE; | 26671 tool_bar_max_label_size = DEFAULT_TOOL_BAR_LABEL_SIZE; |
26898 | 26672 |
26899 DEFVAR_LISP ("fontification-functions", &Vfontification_functions, | 26673 DEFVAR_LISP ("fontification-functions", Vfontification_functions, |
26900 doc: /* List of functions to call to fontify regions of text. | 26674 doc: /* List of functions to call to fontify regions of text. |
26901 Each function is called with one argument POS. Functions must | 26675 Each function is called with one argument POS. Functions must |
26902 fontify a region starting at POS in the current buffer, and give | 26676 fontify a region starting at POS in the current buffer, and give |
26903 fontified regions the property `fontified'. */); | 26677 fontified regions the property `fontified'. */); |
26904 Vfontification_functions = Qnil; | 26678 Vfontification_functions = Qnil; |
26905 Fmake_variable_buffer_local (Qfontification_functions); | 26679 Fmake_variable_buffer_local (Qfontification_functions); |
26906 | 26680 |
26907 DEFVAR_BOOL ("unibyte-display-via-language-environment", | 26681 DEFVAR_BOOL ("unibyte-display-via-language-environment", |
26908 &unibyte_display_via_language_environment, | 26682 unibyte_display_via_language_environment, |
26909 doc: /* *Non-nil means display unibyte text according to language environment. | 26683 doc: /* *Non-nil means display unibyte text according to language environment. |
26910 Specifically, this means that raw bytes in the range 160-255 decimal | 26684 Specifically, this means that raw bytes in the range 160-255 decimal |
26911 are displayed by converting them to the equivalent multibyte characters | 26685 are displayed by converting them to the equivalent multibyte characters |
26912 according to the current language environment. As a result, they are | 26686 according to the current language environment. As a result, they are |
26913 displayed according to the current fontset. | 26687 displayed according to the current fontset. |
26914 | 26688 |
26915 Note that this variable affects only how these bytes are displayed, | 26689 Note that this variable affects only how these bytes are displayed, |
26916 but does not change the fact they are interpreted as raw bytes. */); | 26690 but does not change the fact they are interpreted as raw bytes. */); |
26917 unibyte_display_via_language_environment = 0; | 26691 unibyte_display_via_language_environment = 0; |
26918 | 26692 |
26919 DEFVAR_LISP ("max-mini-window-height", &Vmax_mini_window_height, | 26693 DEFVAR_LISP ("max-mini-window-height", Vmax_mini_window_height, |
26920 doc: /* *Maximum height for resizing mini-windows. | 26694 doc: /* *Maximum height for resizing mini-windows. |
26921 If a float, it specifies a fraction of the mini-window frame's height. | 26695 If a float, it specifies a fraction of the mini-window frame's height. |
26922 If an integer, it specifies a number of lines. */); | 26696 If an integer, it specifies a number of lines. */); |
26923 Vmax_mini_window_height = make_float (0.25); | 26697 Vmax_mini_window_height = make_float (0.25); |
26924 | 26698 |
26925 DEFVAR_LISP ("resize-mini-windows", &Vresize_mini_windows, | 26699 DEFVAR_LISP ("resize-mini-windows", Vresize_mini_windows, |
26926 doc: /* *How to resize mini-windows. | 26700 doc: /* *How to resize mini-windows. |
26927 A value of nil means don't automatically resize mini-windows. | 26701 A value of nil means don't automatically resize mini-windows. |
26928 A value of t means resize them to fit the text displayed in them. | 26702 A value of t means resize them to fit the text displayed in them. |
26929 A value of `grow-only', the default, means let mini-windows grow | 26703 A value of `grow-only', the default, means let mini-windows grow |
26930 only, until their display becomes empty, at which point the windows | 26704 only, until their display becomes empty, at which point the windows |
26931 go back to their normal size. */); | 26705 go back to their normal size. */); |
26932 Vresize_mini_windows = Qgrow_only; | 26706 Vresize_mini_windows = Qgrow_only; |
26933 | 26707 |
26934 DEFVAR_LISP ("blink-cursor-alist", &Vblink_cursor_alist, | 26708 DEFVAR_LISP ("blink-cursor-alist", Vblink_cursor_alist, |
26935 doc: /* Alist specifying how to blink the cursor off. | 26709 doc: /* Alist specifying how to blink the cursor off. |
26936 Each element has the form (ON-STATE . OFF-STATE). Whenever the | 26710 Each element has the form (ON-STATE . OFF-STATE). Whenever the |
26937 `cursor-type' frame-parameter or variable equals ON-STATE, | 26711 `cursor-type' frame-parameter or variable equals ON-STATE, |
26938 comparing using `equal', Emacs uses OFF-STATE to specify | 26712 comparing using `equal', Emacs uses OFF-STATE to specify |
26939 how to blink it off. ON-STATE and OFF-STATE are values for | 26713 how to blink it off. ON-STATE and OFF-STATE are values for |
26941 | 26715 |
26942 If a frame's ON-STATE has no entry in this list, | 26716 If a frame's ON-STATE has no entry in this list, |
26943 the frame's other specifications determine how to blink the cursor off. */); | 26717 the frame's other specifications determine how to blink the cursor off. */); |
26944 Vblink_cursor_alist = Qnil; | 26718 Vblink_cursor_alist = Qnil; |
26945 | 26719 |
26946 DEFVAR_BOOL ("auto-hscroll-mode", &automatic_hscrolling_p, | 26720 DEFVAR_BOOL ("auto-hscroll-mode", automatic_hscrolling_p, |
26947 doc: /* Allow or disallow automatic horizontal scrolling of windows. | 26721 doc: /* Allow or disallow automatic horizontal scrolling of windows. |
26948 If non-nil, windows are automatically scrolled horizontally to make | 26722 If non-nil, windows are automatically scrolled horizontally to make |
26949 point visible. */); | 26723 point visible. */); |
26950 automatic_hscrolling_p = 1; | 26724 automatic_hscrolling_p = 1; |
26951 Qauto_hscroll_mode = intern_c_string ("auto-hscroll-mode"); | 26725 Qauto_hscroll_mode = intern_c_string ("auto-hscroll-mode"); |
26952 staticpro (&Qauto_hscroll_mode); | 26726 staticpro (&Qauto_hscroll_mode); |
26953 | 26727 |
26954 DEFVAR_INT ("hscroll-margin", &hscroll_margin, | 26728 DEFVAR_INT ("hscroll-margin", hscroll_margin, |
26955 doc: /* *How many columns away from the window edge point is allowed to get | 26729 doc: /* *How many columns away from the window edge point is allowed to get |
26956 before automatic hscrolling will horizontally scroll the window. */); | 26730 before automatic hscrolling will horizontally scroll the window. */); |
26957 hscroll_margin = 5; | 26731 hscroll_margin = 5; |
26958 | 26732 |
26959 DEFVAR_LISP ("hscroll-step", &Vhscroll_step, | 26733 DEFVAR_LISP ("hscroll-step", Vhscroll_step, |
26960 doc: /* *How many columns to scroll the window when point gets too close to the edge. | 26734 doc: /* *How many columns to scroll the window when point gets too close to the edge. |
26961 When point is less than `hscroll-margin' columns from the window | 26735 When point is less than `hscroll-margin' columns from the window |
26962 edge, automatic hscrolling will scroll the window by the amount of columns | 26736 edge, automatic hscrolling will scroll the window by the amount of columns |
26963 determined by this variable. If its value is a positive integer, scroll that | 26737 determined by this variable. If its value is a positive integer, scroll that |
26964 many columns. If it's a positive floating-point number, it specifies the | 26738 many columns. If it's a positive floating-point number, it specifies the |
26972 | 26746 |
26973 Note that the lower bound for automatic hscrolling specified by `scroll-left' | 26747 Note that the lower bound for automatic hscrolling specified by `scroll-left' |
26974 and `scroll-right' overrides this variable's effect. */); | 26748 and `scroll-right' overrides this variable's effect. */); |
26975 Vhscroll_step = make_number (0); | 26749 Vhscroll_step = make_number (0); |
26976 | 26750 |
26977 DEFVAR_BOOL ("message-truncate-lines", &message_truncate_lines, | 26751 DEFVAR_BOOL ("message-truncate-lines", message_truncate_lines, |
26978 doc: /* If non-nil, messages are truncated instead of resizing the echo area. | 26752 doc: /* If non-nil, messages are truncated instead of resizing the echo area. |
26979 Bind this around calls to `message' to let it take effect. */); | 26753 Bind this around calls to `message' to let it take effect. */); |
26980 message_truncate_lines = 0; | 26754 message_truncate_lines = 0; |
26981 | 26755 |
26982 DEFVAR_LISP ("menu-bar-update-hook", &Vmenu_bar_update_hook, | 26756 DEFVAR_LISP ("menu-bar-update-hook", Vmenu_bar_update_hook, |
26983 doc: /* Normal hook run to update the menu bar definitions. | 26757 doc: /* Normal hook run to update the menu bar definitions. |
26984 Redisplay runs this hook before it redisplays the menu bar. | 26758 Redisplay runs this hook before it redisplays the menu bar. |
26985 This is used to update submenus such as Buffers, | 26759 This is used to update submenus such as Buffers, |
26986 whose contents depend on various data. */); | 26760 whose contents depend on various data. */); |
26987 Vmenu_bar_update_hook = Qnil; | 26761 Vmenu_bar_update_hook = Qnil; |
26988 | 26762 |
26989 DEFVAR_LISP ("menu-updating-frame", &Vmenu_updating_frame, | 26763 DEFVAR_LISP ("menu-updating-frame", Vmenu_updating_frame, |
26990 doc: /* Frame for which we are updating a menu. | 26764 doc: /* Frame for which we are updating a menu. |
26991 The enable predicate for a menu binding should check this variable. */); | 26765 The enable predicate for a menu binding should check this variable. */); |
26992 Vmenu_updating_frame = Qnil; | 26766 Vmenu_updating_frame = Qnil; |
26993 | 26767 |
26994 DEFVAR_BOOL ("inhibit-menubar-update", &inhibit_menubar_update, | 26768 DEFVAR_BOOL ("inhibit-menubar-update", inhibit_menubar_update, |
26995 doc: /* Non-nil means don't update menu bars. Internal use only. */); | 26769 doc: /* Non-nil means don't update menu bars. Internal use only. */); |
26996 inhibit_menubar_update = 0; | 26770 inhibit_menubar_update = 0; |
26997 | 26771 |
26998 DEFVAR_LISP ("wrap-prefix", &Vwrap_prefix, | 26772 DEFVAR_LISP ("wrap-prefix", Vwrap_prefix, |
26999 doc: /* Prefix prepended to all continuation lines at display time. | 26773 doc: /* Prefix prepended to all continuation lines at display time. |
27000 The value may be a string, an image, or a stretch-glyph; it is | 26774 The value may be a string, an image, or a stretch-glyph; it is |
27001 interpreted in the same way as the value of a `display' text property. | 26775 interpreted in the same way as the value of a `display' text property. |
27002 | 26776 |
27003 This variable is overridden by any `wrap-prefix' text or overlay | 26777 This variable is overridden by any `wrap-prefix' text or overlay |
27007 Vwrap_prefix = Qnil; | 26781 Vwrap_prefix = Qnil; |
27008 staticpro (&Qwrap_prefix); | 26782 staticpro (&Qwrap_prefix); |
27009 Qwrap_prefix = intern_c_string ("wrap-prefix"); | 26783 Qwrap_prefix = intern_c_string ("wrap-prefix"); |
27010 Fmake_variable_buffer_local (Qwrap_prefix); | 26784 Fmake_variable_buffer_local (Qwrap_prefix); |
27011 | 26785 |
27012 DEFVAR_LISP ("line-prefix", &Vline_prefix, | 26786 DEFVAR_LISP ("line-prefix", Vline_prefix, |
27013 doc: /* Prefix prepended to all non-continuation lines at display time. | 26787 doc: /* Prefix prepended to all non-continuation lines at display time. |
27014 The value may be a string, an image, or a stretch-glyph; it is | 26788 The value may be a string, an image, or a stretch-glyph; it is |
27015 interpreted in the same way as the value of a `display' text property. | 26789 interpreted in the same way as the value of a `display' text property. |
27016 | 26790 |
27017 This variable is overridden by any `line-prefix' text or overlay | 26791 This variable is overridden by any `line-prefix' text or overlay |
27021 Vline_prefix = Qnil; | 26795 Vline_prefix = Qnil; |
27022 staticpro (&Qline_prefix); | 26796 staticpro (&Qline_prefix); |
27023 Qline_prefix = intern_c_string ("line-prefix"); | 26797 Qline_prefix = intern_c_string ("line-prefix"); |
27024 Fmake_variable_buffer_local (Qline_prefix); | 26798 Fmake_variable_buffer_local (Qline_prefix); |
27025 | 26799 |
27026 DEFVAR_BOOL ("inhibit-eval-during-redisplay", &inhibit_eval_during_redisplay, | 26800 DEFVAR_BOOL ("inhibit-eval-during-redisplay", inhibit_eval_during_redisplay, |
27027 doc: /* Non-nil means don't eval Lisp during redisplay. */); | 26801 doc: /* Non-nil means don't eval Lisp during redisplay. */); |
27028 inhibit_eval_during_redisplay = 0; | 26802 inhibit_eval_during_redisplay = 0; |
27029 | 26803 |
27030 DEFVAR_BOOL ("inhibit-free-realized-faces", &inhibit_free_realized_faces, | 26804 DEFVAR_BOOL ("inhibit-free-realized-faces", inhibit_free_realized_faces, |
27031 doc: /* Non-nil means don't free realized faces. Internal use only. */); | 26805 doc: /* Non-nil means don't free realized faces. Internal use only. */); |
27032 inhibit_free_realized_faces = 0; | 26806 inhibit_free_realized_faces = 0; |
27033 | 26807 |
27034 #if GLYPH_DEBUG | 26808 #if GLYPH_DEBUG |
27035 DEFVAR_BOOL ("inhibit-try-window-id", &inhibit_try_window_id, | 26809 DEFVAR_BOOL ("inhibit-try-window-id", inhibit_try_window_id, |
27036 doc: /* Inhibit try_window_id display optimization. */); | 26810 doc: /* Inhibit try_window_id display optimization. */); |
27037 inhibit_try_window_id = 0; | 26811 inhibit_try_window_id = 0; |
27038 | 26812 |
27039 DEFVAR_BOOL ("inhibit-try-window-reusing", &inhibit_try_window_reusing, | 26813 DEFVAR_BOOL ("inhibit-try-window-reusing", inhibit_try_window_reusing, |
27040 doc: /* Inhibit try_window_reusing display optimization. */); | 26814 doc: /* Inhibit try_window_reusing display optimization. */); |
27041 inhibit_try_window_reusing = 0; | 26815 inhibit_try_window_reusing = 0; |
27042 | 26816 |
27043 DEFVAR_BOOL ("inhibit-try-cursor-movement", &inhibit_try_cursor_movement, | 26817 DEFVAR_BOOL ("inhibit-try-cursor-movement", inhibit_try_cursor_movement, |
27044 doc: /* Inhibit try_cursor_movement display optimization. */); | 26818 doc: /* Inhibit try_cursor_movement display optimization. */); |
27045 inhibit_try_cursor_movement = 0; | 26819 inhibit_try_cursor_movement = 0; |
27046 #endif /* GLYPH_DEBUG */ | 26820 #endif /* GLYPH_DEBUG */ |
27047 | 26821 |
27048 DEFVAR_INT ("overline-margin", &overline_margin, | 26822 DEFVAR_INT ("overline-margin", overline_margin, |
27049 doc: /* *Space between overline and text, in pixels. | 26823 doc: /* *Space between overline and text, in pixels. |
27050 The default value is 2: the height of the overline (1 pixel) plus 1 pixel | 26824 The default value is 2: the height of the overline (1 pixel) plus 1 pixel |
27051 margin to the caracter height. */); | 26825 margin to the caracter height. */); |
27052 overline_margin = 2; | 26826 overline_margin = 2; |
27053 | 26827 |
27054 DEFVAR_INT ("underline-minimum-offset", | 26828 DEFVAR_INT ("underline-minimum-offset", |
27055 &underline_minimum_offset, | 26829 underline_minimum_offset, |
27056 doc: /* Minimum distance between baseline and underline. | 26830 doc: /* Minimum distance between baseline and underline. |
27057 This can improve legibility of underlined text at small font sizes, | 26831 This can improve legibility of underlined text at small font sizes, |
27058 particularly when using variable `x-use-underline-position-properties' | 26832 particularly when using variable `x-use-underline-position-properties' |
27059 with fonts that specify an UNDERLINE_POSITION relatively close to the | 26833 with fonts that specify an UNDERLINE_POSITION relatively close to the |
27060 baseline. The default value is 1. */); | 26834 baseline. The default value is 1. */); |
27061 underline_minimum_offset = 1; | 26835 underline_minimum_offset = 1; |
27062 | 26836 |
27063 DEFVAR_BOOL ("display-hourglass", &display_hourglass_p, | 26837 DEFVAR_BOOL ("display-hourglass", display_hourglass_p, |
27064 doc: /* Non-nil means show an hourglass pointer, when Emacs is busy. | 26838 doc: /* Non-nil means show an hourglass pointer, when Emacs is busy. |
27065 This feature only works when on a window system that can change | 26839 This feature only works when on a window system that can change |
27066 cursor shapes. */); | 26840 cursor shapes. */); |
27067 display_hourglass_p = 1; | 26841 display_hourglass_p = 1; |
27068 | 26842 |
27069 DEFVAR_LISP ("hourglass-delay", &Vhourglass_delay, | 26843 DEFVAR_LISP ("hourglass-delay", Vhourglass_delay, |
27070 doc: /* *Seconds to wait before displaying an hourglass pointer when Emacs is busy. */); | 26844 doc: /* *Seconds to wait before displaying an hourglass pointer when Emacs is busy. */); |
27071 Vhourglass_delay = make_number (DEFAULT_HOURGLASS_DELAY); | 26845 Vhourglass_delay = make_number (DEFAULT_HOURGLASS_DELAY); |
27072 | 26846 |
27073 hourglass_atimer = NULL; | 26847 hourglass_atimer = NULL; |
27074 hourglass_shown_p = 0; | 26848 hourglass_shown_p = 0; |
27084 Setting this variable twice is harmless. | 26858 Setting this variable twice is harmless. |
27085 But don't staticpro it here--that is done in alloc.c. */ | 26859 But don't staticpro it here--that is done in alloc.c. */ |
27086 Qchar_table_extra_slots = intern_c_string ("char-table-extra-slots"); | 26860 Qchar_table_extra_slots = intern_c_string ("char-table-extra-slots"); |
27087 Fput (Qglyphless_char_display, Qchar_table_extra_slots, make_number (1)); | 26861 Fput (Qglyphless_char_display, Qchar_table_extra_slots, make_number (1)); |
27088 | 26862 |
27089 DEFVAR_LISP ("glyphless-char-display", &Vglyphless_char_display, | 26863 DEFVAR_LISP ("glyphless-char-display", Vglyphless_char_display, |
27090 doc: /* Char-table to control displaying of glyphless characters. | 26864 doc: /* Char-table to control displaying of glyphless characters. |
27091 Each element, if non-nil, is an ASCII acronym string (displayed in a box) | 26865 Each element, if non-nil, is an ASCII acronym string (displayed in a box) |
27092 or one of these symbols: | 26866 or one of these symbols: |
27093 hex-code: display the hexadecimal code of a character in a box | 26867 hex-code: display the hexadecimal code of a character in a box |
27094 empty-box: display as an empty box | 26868 empty-box: display as an empty box |