Mercurial > emacs
diff src/globals.h @ 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 | |
children | 7935463f385e |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/globals.h Tue Jan 18 13:45:37 2011 -0700 @@ -0,0 +1,2775 @@ +/* Declare all global lisp variables. + + Copyright (C) 2011 Free Software Foundation, Inc. + + This file is part of GNU Emacs. + + GNU Emacs is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + GNU Emacs is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ + +struct emacs_globals +{ + + /* Count the amount of consing of various sorts of space. */ + EMACS_INT f_cons_cells_consed; + + EMACS_INT f_floats_consed; + + EMACS_INT f_vector_cells_consed; + + EMACS_INT f_symbols_consed; + + EMACS_INT f_string_chars_consed; + + EMACS_INT f_misc_objects_consed; + + EMACS_INT f_intervals_consed; + + EMACS_INT f_strings_consed; + + /* Minimum number of bytes of consing since GC before next GC. */ + EMACS_INT f_gc_cons_threshold; + + Lisp_Object f_Vgc_cons_percentage; + + /* Nonzero means display messages at beginning and end of GC. */ + int f_garbage_collection_messages; + + /* Non-nil means defun should do purecopy on the function definition. */ + Lisp_Object f_Vpurify_flag; + + /* Non-nil means we are handling a memory-full error. */ + Lisp_Object f_Vmemory_full; + + /* Total number of bytes allocated in pure storage. */ + EMACS_INT f_pure_bytes_used; + + /* Pre-computed signal argument for use when memory is exhausted. */ + Lisp_Object f_Vmemory_signal_data; + + Lisp_Object f_Vpost_gc_hook; + + Lisp_Object f_Vgc_elapsed; + + EMACS_INT f_gcs_done; + + /* Functions to call before and after each text change. */ + Lisp_Object f_Vbefore_change_functions; + + Lisp_Object f_Vafter_change_functions; + + Lisp_Object f_Vtransient_mark_mode; + + /* t means ignore all read-only text properties. + A list means ignore such a property if its value is a member of the list. + Any non-nil value means ignore buffer-read-only. */ + Lisp_Object f_Vinhibit_read_only; + + /* List of functions to call that can query about killing a buffer. + If any of these functions returns nil, we don't kill it. */ + Lisp_Object f_Vkill_buffer_query_functions; + + Lisp_Object f_Vchange_major_mode_hook; + + /* List of functions to call before changing an unmodified buffer. */ + Lisp_Object f_Vfirst_change_hook; + + /* If nonzero, all modification hooks are suppressed. */ + int f_inhibit_modification_hooks; + + Lisp_Object f_Vbyte_code_meter; + + int f_byte_metering_on; + + Lisp_Object f_Vcurrent_prefix_arg; + + Lisp_Object f_Vcommand_history; + + Lisp_Object f_Vcommand_debug_status; + + /* Non-nil means treat the mark as active + even if mark_active is 0. */ + Lisp_Object f_Vmark_even_if_inactive; + + Lisp_Object f_Vmouse_leave_buffer_hook; + + Lisp_Object f_Vexec_path; + Lisp_Object f_Vexec_directory; + Lisp_Object f_Vexec_suffixes; + + Lisp_Object f_Vdata_directory; + Lisp_Object f_Vdoc_directory; + + Lisp_Object f_Vconfigure_info_directory; + Lisp_Object f_Vshared_game_score_directory; + + Lisp_Object f_Vshell_file_name; + + Lisp_Object f_Vprocess_environment; + Lisp_Object f_Vinitial_environment; + + /* Variables to determine word boundary. */ + Lisp_Object f_Vword_combining_categories; + Lisp_Object f_Vword_separating_categories; + + /* This contains all code conversion map available to CCL. */ + Lisp_Object f_Vcode_conversion_map_vector; + + /* Alist of fontname patterns vs corresponding CCL program. */ + Lisp_Object f_Vfont_ccl_encoder_alist; + + /* Vector of registered hash tables for translation. */ + Lisp_Object f_Vtranslation_hash_table_vector; + + /* Vector of translation table ever defined. + ID of a translation table is used to index this vector. */ + Lisp_Object f_Vtranslation_table_vector; + + /* A char-table for characters which may invoke auto-filling. */ + Lisp_Object f_Vauto_fill_chars; + + /* A char-table. An element is non-nil iff the corresponding + character has a printable glyph. */ + Lisp_Object f_Vprintable_chars; + + /* A char-table. An elemnent is a column-width of the corresponding + character. */ + Lisp_Object f_Vchar_width_table; + + /* A char-table. An element is a symbol indicating the direction + property of corresponding character. */ + Lisp_Object f_Vchar_direction_table; + + /* Char table of scripts. */ + Lisp_Object f_Vchar_script_table; + + /* Alist of scripts vs representative characters. */ + Lisp_Object f_Vscript_representative_chars; + + Lisp_Object f_Vunicode_category_table; + + /* List of all charsets. This variable is used only from Emacs + Lisp. */ + Lisp_Object f_Vcharset_list; + + Lisp_Object f_Vcharset_map_path; + + /* If nonzero, don't load charset maps. */ + int f_inhibit_load_charset_map; + + Lisp_Object f_Vcurrent_iso639_language; + + Lisp_Object f_Vpost_self_insert_hook; + + int f_coding_system_require_warning; + + Lisp_Object f_Vselect_safe_coding_system_function; + + /* Mnemonic string for each format of end-of-line. */ + Lisp_Object f_eol_mnemonic_unix; + Lisp_Object f_eol_mnemonic_dos; + Lisp_Object f_eol_mnemonic_mac; + + /* Mnemonic string to indicate format of end-of-line is not yet + decided. */ + Lisp_Object f_eol_mnemonic_undecided; + + Lisp_Object f_Vcoding_system_list; + Lisp_Object f_Vcoding_system_alist; + + /* Coding-system for reading files and receiving data from process. */ + Lisp_Object f_Vcoding_system_for_read; + + /* Coding-system for writing files and sending data to process. */ + Lisp_Object f_Vcoding_system_for_write; + + /* Coding-system actually used in the latest I/O. */ + Lisp_Object f_Vlast_coding_system_used; + + /* Set to non-nil when an error is detected while code conversion. */ + Lisp_Object f_Vlast_code_conversion_error; + + /* A vector of length 256 which contains information about special + Latin codes (especially for dealing with Microsoft codes). */ + Lisp_Object f_Vlatin_extra_code_table; + + /* Flag to inhibit code conversion of end-of-line format. */ + int f_inhibit_eol_conversion; + + /* Flag to inhibit ISO2022 escape sequence detection. */ + int f_inhibit_iso_escape_detection; + + /* Flag to inhibit detection of binary files through null bytes. */ + int f_inhibit_null_byte_detection; + + /* Flag to make buffer-file-coding-system inherit from process-coding. */ + int f_inherit_process_coding_system; + + Lisp_Object f_Vfile_coding_system_alist; + + Lisp_Object f_Vprocess_coding_system_alist; + + Lisp_Object f_Vnetwork_coding_system_alist; + + Lisp_Object f_Vlocale_coding_system; + + /* Flag to tell if we look up translation table on character code + conversion. */ + Lisp_Object f_Venable_character_translation; + + /* Standard translation table to look up on decoding (reading). */ + Lisp_Object f_Vstandard_translation_table_for_decode; + + /* Standard translation table to look up on encoding (writing). */ + Lisp_Object f_Vstandard_translation_table_for_encode; + + /* Alist of charsets vs revision number. */ + Lisp_Object f_Vcharset_revision_table; + + /* Default coding systems used for process I/O. */ + Lisp_Object f_Vdefault_process_coding_system; + + /* Char table for translating Quail and self-inserting input. */ + Lisp_Object f_Vtranslation_table_for_input; + + /* List of symbols `coding-category-xxx' ordered by priority. This + variable is exposed to Emacs Lisp. */ + Lisp_Object f_Vcoding_category_list; + + /* Function to call to adjust composition. */ + Lisp_Object f_Vcompose_chars_after_function; + + Lisp_Object f_Vauto_composition_mode; + + Lisp_Object f_Vauto_composition_function; + + Lisp_Object f_Vcomposition_function_table; + + Lisp_Object f_Vmost_positive_fixnum; + Lisp_Object f_Vmost_negative_fixnum; + + /* Registered buses. */ + Lisp_Object f_Vdbus_registered_buses; + + /* Hash table which keeps function definitions. */ + Lisp_Object f_Vdbus_registered_objects_table; + + /* Whether to debug D-Bus. */ + Lisp_Object f_Vdbus_debug; + + Lisp_Object f_Vcompletion_ignored_extensions; + + /* Non-zero means don't pause redisplay for pending input. (This is + for debugging and for a future implementation of EDT-like + scrolling. */ + int f_redisplay_dont_pause; + + /* If a number (float), check for user input every N seconds. */ + Lisp_Object f_Vredisplay_preemption_period; + + /* Lisp variable visible-bell; enables use of screen-flash instead of + audible bell. */ + int f_visible_bell; + + /* Invert the color of the whole frame, at a low level. */ + int f_inverse_video; + + /* Line speed of the terminal. */ + EMACS_INT f_baud_rate; + + /* Either nil or a symbol naming the window system under which Emacs + creates the first frame. */ + Lisp_Object f_Vinitial_window_system; + + /* Version number of X windows: 10, 11 or nil. */ + Lisp_Object f_Vwindow_system_version; + + /* Vector of glyph definitions. Indexed by glyph number, the contents + are a string which is how to output the glyph. + + If Vglyph_table is nil, a glyph is output by using its low 8 bits + as a character code. + + This is an obsolete feature that is no longer used. The variable + is retained for compatibility. */ + Lisp_Object f_Vglyph_table; + + /* Display table to use for vectors that don't specify their own. */ + Lisp_Object f_Vstandard_display_table; + + /* Nonzero means reading single-character input with prompt so put + cursor on mini-buffer after the prompt. Positive means at end of + text in echo area; negative means at beginning of line. */ + int f_cursor_in_echo_area; + + Lisp_Object f_Vdoc_file_name; + + /* A list of files used to build this Emacs binary. */ + Lisp_Object f_Vbuild_files; + + /* country info */ + EMACS_INT f_dos_country_code; + + EMACS_INT f_dos_codepage; + + EMACS_INT f_dos_timezone_offset; + + EMACS_INT f_dos_decimal_point; + + EMACS_INT f_dos_keyboard_layout; + + EMACS_INT f_dos_hyper_key; + + EMACS_INT f_dos_super_key; + + EMACS_INT f_dos_keypad_mode; + + Lisp_Object f_Vdos_version; + + Lisp_Object f_Vdos_display_scancodes; + + Lisp_Object f_Vdos_windows_version; + + Lisp_Object f_Vbuffer_access_fontify_functions; + + Lisp_Object f_Vbuffer_access_fontified_property; + + /* Non-nil means don't stop at field boundary in text motion commands. */ + Lisp_Object f_Vinhibit_field_text_motion; + + /* Some static data, and a function to initialize it for each run */ + Lisp_Object f_Vsystem_name; + + Lisp_Object f_Vuser_real_login_name; + + Lisp_Object f_Vuser_full_name; + + Lisp_Object f_Vuser_login_name; + + Lisp_Object f_Voperating_system_release; + + /* Command line args from shell, as list of strings. */ + Lisp_Object f_Vcommand_line_args; + + /* The name under which Emacs was invoked, with any leading directory + names discarded. */ + Lisp_Object f_Vinvocation_name; + + /* The directory name from which Emacs was invoked. */ + Lisp_Object f_Vinvocation_directory; + + /* The directory name in which to find subdirs such as lisp and etc. + nil means get them only from PATH_LOADSEARCH. */ + Lisp_Object f_Vinstallation_directory; + + /* The values of `current-time' before and after Emacs initialization. */ + Lisp_Object f_Vbefore_init_time; + Lisp_Object f_Vafter_init_time; + + /* Hook run by `kill-emacs' before it does really anything. */ + Lisp_Object f_Vkill_emacs_hook; + + /* Search path separator. */ + Lisp_Object f_Vpath_separator; + + /* Variable whose value is symbol giving operating system type. */ + Lisp_Object f_Vsystem_type; + + /* Variable whose value is string giving configuration built for. */ + Lisp_Object f_Vsystem_configuration; + + /* Variable whose value is string giving configuration options, + for use when reporting bugs. */ + Lisp_Object f_Vsystem_configuration_options; + + /* Current and previous system locales for messages and time. */ + Lisp_Object f_Vsystem_messages_locale; + + Lisp_Object f_Vprevious_system_messages_locale; + + Lisp_Object f_Vsystem_time_locale; + + Lisp_Object f_Vprevious_system_time_locale; + + /* Copyright and version info. The version number may be updated by + Lisp code. */ + Lisp_Object f_Vemacs_copyright; + Lisp_Object f_Vemacs_version; + + /* Alist of external libraries and files implementing them. */ + Lisp_Object f_Vdynamic_library_alist; + + /* Value of Lisp variable `noninteractive'. + Normally same as C variable `noninteractive' + but nothing terrible happens if user sets this one. */ + int f_noninteractive1; + + /* Nonzero means Emacs was run in --quick mode. */ + int f_inhibit_x_resources; + + Lisp_Object f_Vinhibit_quit; + Lisp_Object f_Vquit_flag; + + /* Maximum size allowed for specpdl allocation */ + EMACS_INT f_max_specpdl_size; + + /* Maximum allowed depth in Lisp evaluations and function calls. */ + EMACS_INT f_max_lisp_eval_depth; + + /* Nonzero means enter debugger before next function call */ + int f_debug_on_next_call; + + /* Non-zero means debugger may continue. This is zero when the + debugger is called during redisplay, where it might not be safe to + continue the interrupted redisplay. */ + int f_debugger_may_continue; + + /* List of conditions (non-nil atom means all) which cause a backtrace + if an error is handled by the command loop's error handler. */ + Lisp_Object f_Vstack_trace_on_error; + + /* List of conditions (non-nil atom means all) which enter the debugger + if an error is handled by the command loop's error handler. */ + Lisp_Object f_Vdebug_on_error; + + /* List of conditions and regexps specifying error messages which + do not enter the debugger even if Vdebug_on_error says they should. */ + Lisp_Object f_Vdebug_ignored_errors; + + /* Non-nil means call the debugger even if the error will be handled. */ + Lisp_Object f_Vdebug_on_signal; + + /* Hook for edebug to use. */ + Lisp_Object f_Vsignal_hook_function; + + /* Nonzero means enter debugger if a quit signal + is handled by the command loop's error handler. */ + int f_debug_on_quit; + + Lisp_Object f_Vdebugger; + + /* Function to process declarations in defmacro forms. */ + Lisp_Object f_Vmacro_declaration_function; + + /* Coding system for file names, or nil if none. */ + Lisp_Object f_Vfile_name_coding_system; + + /* Coding system for file names used only when + Vfile_name_coding_system is nil. */ + Lisp_Object f_Vdefault_file_name_coding_system; + + /* Alist of elements (REGEXP . HANDLER) for file names + whose I/O is done with a special handler. */ + Lisp_Object f_Vfile_name_handler_alist; + + /* Function to be called to decide a coding system of a reading file. */ + Lisp_Object f_Vset_auto_coding_function; + + /* Functions to be called to process text properties in inserted file. */ + Lisp_Object f_Vafter_insert_file_functions; + + /* Functions to be called to create text property annotations for file. */ + Lisp_Object f_Vwrite_region_annotate_functions; + + Lisp_Object f_Vwrite_region_post_annotation_function; + + /* During build_annotations, each time an annotation function is called, + this holds the annotations made by the previous functions. */ + Lisp_Object f_Vwrite_region_annotations_so_far; + + /* File name in which we write a list of all our auto save files. */ + Lisp_Object f_Vauto_save_list_file_name; + + /* Whether or not files are auto-saved into themselves. */ + Lisp_Object f_Vauto_save_visited_file_name; + + /* Whether or not to continue auto-saving after a large deletion. */ + Lisp_Object f_Vauto_save_include_big_deletions; + + /* Nonzero means skip the call to fsync in Fwrite-region. */ + int f_write_region_inhibit_fsync; + + /* Non-zero means call move-file-to-trash in Fdelete_file or + Fdelete_directory_internal. */ + int f_delete_by_moving_to_trash; + + /* These variables describe handlers that have "already" had a chance + to handle the current operation. + + Vinhibit_file_name_handlers is a list of file name handlers. + Vinhibit_file_name_operation is the operation being handled. + If we try to handle that operation, we ignore those handlers. */ + Lisp_Object f_Vinhibit_file_name_handlers; + + Lisp_Object f_Vinhibit_file_name_operation; + + /* The directory for writing temporary files. */ + Lisp_Object f_Vtemporary_file_directory; + + /* Nonzero enables use of dialog boxes for questions + asked by mouse commands. */ + int f_use_dialog_box; + + /* Nonzero enables use of a file dialog for file name + questions asked by mouse commands. */ + int f_use_file_dialog; + + Lisp_Object f_Vfeatures; + + Lisp_Object f_Vfont_weight_table; + Lisp_Object f_Vfont_slant_table; + Lisp_Object f_Vfont_width_table; + + Lisp_Object f_Vfont_encoding_alist; + + Lisp_Object f_Vfont_log; + + Lisp_Object f_Vfont_encoding_charset_alist; + + Lisp_Object f_Vuse_default_ascent; + + Lisp_Object f_Vignore_relative_composition; + + Lisp_Object f_Valternate_fontname_alist; + + Lisp_Object f_Vfontset_alias_alist; + + Lisp_Object f_Vvertical_centering_font_regexp; + + Lisp_Object f_Votf_script_alist; + + /* If we shall make pointer invisible when typing or not. */ + Lisp_Object f_Vmake_pointer_invisible; + + /* The name we're using in resource queries. Most often "emacs". */ + Lisp_Object f_Vx_resource_name; + + /* The application class we're using in resource queries. + Normally "Emacs". */ + Lisp_Object f_Vx_resource_class; + + /* Lower limit value of the frame opacity (alpha transparency). */ + Lisp_Object f_Vframe_alpha_lower_limit; + + Lisp_Object f_Vmenu_bar_mode; + Lisp_Object f_Vtool_bar_mode; + + Lisp_Object f_Vterminal_frame; + + Lisp_Object f_Vdefault_frame_alist; + + Lisp_Object f_Vdefault_frame_scroll_bars; + + Lisp_Object f_Vmouse_position_function; + + Lisp_Object f_Vmouse_highlight; + + Lisp_Object f_Vdelete_frame_functions; + + int f_focus_follows_mouse; + + /* Non-nil means that newline may flow into the right fringe. */ + Lisp_Object f_Voverflow_newline_into_fringe; + + /* List of known fringe bitmap symbols. + + The fringe bitmap number is stored in the `fringe' property on + those symbols. Names for the built-in bitmaps are installed by + loading fringe.el. + */ + Lisp_Object f_Vfringe_bitmaps; + + /* Search path for bitmap files. */ + Lisp_Object f_Vx_bitmap_file_path; + + /* A list of symbols, one for each supported image type. */ + Lisp_Object f_Vimage_types; + + /* Time in seconds after which images should be removed from the cache + if not displayed. */ + Lisp_Object f_Vimage_cache_eviction_delay; + + Lisp_Object f_Vmax_image_size; + + /* Non-zero means draw a cross on images having `:conversion + disabled'. */ + int f_cross_disabled_images; + + Lisp_Object f_Vimagemagick_render_type; + + /* Indentation can insert tabs if this is non-zero; + otherwise always uses spaces. */ + int f_indent_tabs_mode; + + /* Non-nil means don't call the after-change-functions right away, + just record an element in combine_after_change_list. */ + Lisp_Object f_Vcombine_after_change_calls; + + /* Check all markers in the current buffer, looking for something invalid. */ + int f_check_markers_debug_flag; + + /* Non-nil if the present key sequence was obtained by shift translation. */ + Lisp_Object f_Vthis_command_keys_shift_translated; + + /* If non-nil, the function that implements the display of help. + It's called with one argument, the help string to display. */ + Lisp_Object f_Vshow_help_function; + + /* Nonzero means do menu prompting. */ + int f_menu_prompting; + + /* Character to see next line of menu prompt. */ + Lisp_Object f_menu_prompt_more_char; + + /* Nonzero means disregard local maps for the menu bar. */ + int f_inhibit_local_menu_bar_menus; + + /* The user's hook function for outputting an error message. */ + Lisp_Object f_Vcommand_error_function; + + /* The user's ERASE setting. */ + Lisp_Object f_Vtty_erase_char; + + /* Character to recognize as the help char. */ + Lisp_Object f_Vhelp_char; + + /* List of other event types to recognize as meaning "help". */ + Lisp_Object f_Vhelp_event_list; + + /* Form to execute when help char is typed. */ + Lisp_Object f_Vhelp_form; + + /* Command to run when the help character follows a prefix key. */ + Lisp_Object f_Vprefix_help_command; + + /* List of items that should move to the end of the menu bar. */ + Lisp_Object f_Vmenu_bar_final_items; + + /* Expression to evaluate for the tool bar separator image. + This is used for build_desired_tool_bar_string only. For GTK, we + use GTK tool bar seperators. */ + Lisp_Object f_Vtool_bar_separator_image_expression; + + /* Non-nil means show the equivalent key-binding for + any M-x command that has one. + The value can be a length of time to show the message for. + If the value is non-nil and not a number, we wait 2 seconds. */ + Lisp_Object f_Vsuggest_key_bindings; + + /* How long to display an echo-area message when the minibuffer is active. + If the value is not a number, such messages don't time out. */ + Lisp_Object f_Vminibuffer_message_timeout; + + /* If non-nil, this is a map that overrides all other local maps. */ + Lisp_Object f_Voverriding_local_map; + + /* If non-nil, Voverriding_local_map applies to the menu bar. */ + Lisp_Object f_Voverriding_local_map_menu_flag; + + /* Keymap that defines special misc events that should + be processed immediately at a low level. */ + Lisp_Object f_Vspecial_event_map; + + /* Total number of times command_loop has read a key sequence. */ + EMACS_INT f_num_input_keys; + + /* Last input event read as a command. */ + Lisp_Object f_last_command_event; + + /* Last input character read as a command, not counting menus + reached by the mouse. */ + Lisp_Object f_last_nonmenu_event; + + /* Last input event read for any purpose. */ + Lisp_Object f_last_input_event; + + /* If not Qnil, a list of objects to be read as subsequent command input. */ + Lisp_Object f_Vunread_command_events; + + /* If not Qnil, a list of objects to be read as subsequent command input + including input method processing. */ + Lisp_Object f_Vunread_input_method_events; + + /* If not Qnil, a list of objects to be read as subsequent command input + but NOT including input method processing. */ + Lisp_Object f_Vunread_post_input_method_events; + + /* If not -1, an event to be read as subsequent command input. */ + EMACS_INT f_unread_command_char; + + /* A mask of extra modifier bits to put into every keyboard char. */ + EMACS_INT f_extra_keyboard_modifiers; + + /* Char to use as prefix when a meta character is typed in. + This is bound on entry to minibuffer in case ESC is changed there. */ + Lisp_Object f_meta_prefix_char; + + /* Number of idle seconds before an auto-save and garbage collection. */ + Lisp_Object f_Vauto_save_timeout; + + /* Total number of times read_char has returned, outside of macros. */ + EMACS_INT f_num_nonmacro_input_events; + + /* Auto-save automatically when this many characters have been typed + since the last time. */ + EMACS_INT f_auto_save_interval; + + /* The command being executed by the command loop. + Commands may set this, and the value set will be copied into + current_kboard->Vlast_command instead of the actual command. */ + Lisp_Object f_Vthis_command; + + /* If the lookup of the command returns a binding, the original + command is stored in this-original-command. It is nil otherwise. */ + Lisp_Object f_Vthis_original_command; + + /* A user-visible version of the above, intended to allow users to + figure out where the last event came from, if the event doesn't + carry that information itself (i.e. if it was a character). */ + Lisp_Object f_Vlast_event_frame; + + /* If non-nil, active regions automatically become the window selection. */ + Lisp_Object f_Vselect_active_regions; + + /* The text in the active region prior to modifying the buffer. + Used by the `select-active-regions' feature. */ + Lisp_Object f_Vsaved_region_selection; + + /* Echo unfinished commands after this many seconds of pause. */ + Lisp_Object f_Vecho_keystrokes; + + /* Form to evaluate (if non-nil) when Emacs is started. */ + Lisp_Object f_Vtop_level; + + /* If non-nil, this implements the current input method. */ + Lisp_Object f_Vinput_method_function; + + /* When we call Vinput_method_function, + this holds the echo area message that was just erased. */ + Lisp_Object f_Vinput_method_previous_message; + + /* Non-nil means deactivate the mark at end of this command. */ + Lisp_Object f_Vdeactivate_mark; + + /* Menu bar specified in Lucid Emacs fashion. */ + Lisp_Object f_Vlucid_menu_bar_dirty_flag; + + Lisp_Object f_Vpre_command_hook; + + Lisp_Object f_Vpost_command_hook; + + Lisp_Object f_Vcommand_hook_internal; + + /* Parent keymap of terminal-local function-key-map instances. */ + Lisp_Object f_Vfunction_key_map; + + /* Keymap of key translations that can override keymaps. */ + Lisp_Object f_Vkey_translation_map; + + /* List of deferred actions to be performed at a later time. + The precise format isn't relevant here; we just check whether it is nil. */ + Lisp_Object f_Vdeferred_action_list; + + /* Function to call to handle deferred actions, when there are any. */ + Lisp_Object f_Vdeferred_action_function; + + /* If this flag is non-nil, we check mouse_moved to see when the + mouse moves, and motion events will appear in the input stream. + Otherwise, mouse motion is ignored. */ + Lisp_Object f_do_mouse_tracking; + + /* List of absolute timers. Appears in order of next scheduled event. */ + Lisp_Object f_Vtimer_list; + + /* List of idle time timers. Appears in order of next scheduled event. */ + Lisp_Object f_Vtimer_idle_list; + + /* After a command is executed, if point is moved into a region that + has specific properties (e.g. composition, display), we adjust + point to the boundary of the region. But, if a command sets this + variable to non-nil, we suppress this point adjustment. This + variable is set to nil before reading a command. */ + Lisp_Object f_Vdisable_point_adjustment; + + /* If non-nil, always disable point adjustment. */ + Lisp_Object f_Vglobal_disable_point_adjustment; + + /* If non-nil, events produced by disabled menu items and tool-bar + buttons are not ignored. Help functions bind this to allow help on + those items and buttons. */ + Lisp_Object f_Venable_disabled_menus_and_buttons; + + /* Nonzero means don't try to suspend even if the operating system seems + to support it. */ + int f_cannot_suspend; + + /* Number of seconds between polling for input. This is a Lisp + variable that can be bound. */ + EMACS_INT f_polling_period; + + /* subprocesses */ + Lisp_Object f_Vthrow_on_input; + + /* The maximum time between clicks to make a double-click, or Qnil to + disable double-click detection, or Qt for no time limit. */ + Lisp_Object f_Vdouble_click_time; + + /* Maximum number of pixels the mouse may be moved between clicks + to make a double-click. */ + EMACS_INT f_double_click_fuzz; + + /* was MinibufLocalMap */ + Lisp_Object f_Vminibuffer_local_map; + + /* was MinibufLocalNSMap */ + Lisp_Object f_Vminibuffer_local_ns_map; + + /* was MinibufLocalCompletionMap */ + Lisp_Object f_Vminibuffer_local_completion_map; + + /* keymap used for minibuffers when doing completion in filenames */ + Lisp_Object f_Vminibuffer_local_filename_completion_map; + + /* keymap used for minibuffers when doing completion in filenames + with require-match*/ + Lisp_Object f_Vminibuffer_local_filename_must_match_map; + + /* was MinibufLocalMustMatchMap */ + Lisp_Object f_Vminibuffer_local_must_match_map; + + /* Alist of minor mode variables and keymaps. */ + Lisp_Object f_Vminor_mode_map_alist; + + /* Alist of major-mode-specific overrides for + minor mode variables and keymaps. */ + Lisp_Object f_Vminor_mode_overriding_map_alist; + + /* List of emulation mode keymap alists. */ + Lisp_Object f_Vemulation_mode_map_alists; + + /* A list of all commands given new bindings since a certain time + when nil was stored here. + This is used to speed up recomputation of menu key equivalents + when Emacs starts up. t means don't record anything here. */ + Lisp_Object f_Vdefine_key_rebound_commands; + + Lisp_Object f_Vwhere_is_preferred_modifier; + + Lisp_Object f_Vvalues; + Lisp_Object f_Vstandard_input; + Lisp_Object f_Vafter_load_alist; + + Lisp_Object f_Veval_buffer_list; + + /* non-zero if inside `load' */ + int f_load_in_progress; + + /* Directory in which the sources were found. */ + Lisp_Object f_Vsource_directory; + + /* Search path and suffixes for files to be loaded. */ + Lisp_Object f_Vload_path; + Lisp_Object f_Vload_suffixes; + Lisp_Object f_Vload_file_rep_suffixes; + + /* File name of user's init file. */ + Lisp_Object f_Vuser_init_file; + + /* This is the user-visible association list that maps features to + lists of defs in their load files. */ + Lisp_Object f_Vload_history; + + /* This is used to build the load history. */ + Lisp_Object f_Vcurrent_load_list; + + /* List of files that were preloaded. */ + Lisp_Object f_Vpreloaded_file_list; + + /* Name of file actually being read by `load'. */ + Lisp_Object f_Vload_file_name; + + /* Function to use for reading, in `load' and friends. */ + Lisp_Object f_Vload_read_function; + + /* Non-nil means read recursive structures using #n= and #n# syntax. */ + Lisp_Object f_Vread_circle; + + /* Nonzero means load should forcibly load all dynamic doc strings. */ + int f_load_force_doc_strings; + + /* Nonzero means read should convert strings to unibyte. */ + int f_load_convert_to_unibyte; + + /* Function to use for loading an Emacs Lisp source file (not + compiled) instead of readevalloop. */ + Lisp_Object f_Vload_source_file_function; + + /* List of all DEFVAR_BOOL variables. Used by the byte optimizer. */ + Lisp_Object f_Vbyte_boolean_vars; + + /* Whether or not to add a `read-positions' property to symbols + read. */ + Lisp_Object f_Vread_with_symbol_positions; + + /* List of (SYMBOL . POSITION) accumulated so far. */ + Lisp_Object f_Vread_symbol_positions_list; + + Lisp_Object f_Vold_style_backquotes; + + /* Non-zero means load dangerous compiled Lisp files. */ + int f_load_dangerous_libraries; + + /* Non-zero means force printing messages when loading Lisp files. */ + int f_force_load_messages; + + /* A regular expression used to detect files compiled with Emacs. */ + Lisp_Object f_Vbytecomp_version_regexp; + + Lisp_Object f_Vobarray; + + /* Kbd macro currently being executed (a string or vector). */ + Lisp_Object f_Vexecuting_kbd_macro; + + /* Index of next character to fetch from that macro. */ + EMACS_INT f_executing_kbd_macro_index; + + /* Nonzero means enable debugging checks on byte/char correspondences. */ + int f_byte_debug_flag; + + Lisp_Object f_Vhistory_length; + + /* No duplicates in history. */ + int f_history_delete_duplicates; + + /* Non-nil means add new input to history. */ + Lisp_Object f_Vhistory_add_new_input; + + /* Nonzero means let functions called when within a minibuffer + invoke recursive minibuffers (to read arguments, or whatever) */ + int f_enable_recursive_minibuffers; + + /* Nonzero means don't ignore text properties + in Fread_from_minibuffer. */ + int f_minibuffer_allow_text_properties; + + /* help-form is bound to this while in the minibuffer. */ + Lisp_Object f_Vminibuffer_help_form; + + /* Variable which is the history list to add minibuffer values to. */ + Lisp_Object f_Vminibuffer_history_variable; + + /* Current position in the history list (adjusted by M-n and M-p). */ + Lisp_Object f_Vminibuffer_history_position; + + /* Text properties that are added to minibuffer prompts. + These are in addition to the basic `field' property, and stickiness + properties. */ + Lisp_Object f_Vminibuffer_prompt_properties; + + Lisp_Object f_Vminibuffer_setup_hook; + + Lisp_Object f_Vminibuffer_exit_hook; + + /* Function to call to read a buffer name. */ + Lisp_Object f_Vread_buffer_function; + + /* Nonzero means completion ignores case. */ + int f_completion_ignore_case; + + int f_read_buffer_completion_ignore_case; + + /* List of regexps that should restrict possible completions. */ + Lisp_Object f_Vcompletion_regexp_list; + + /* Nonzero means raise the minibuffer frame when the minibuffer + is entered. */ + int f_minibuffer_auto_raise; + + /* Keymap for reading expressions. */ + Lisp_Object f_Vread_expression_map; + + Lisp_Object f_Vminibuffer_completion_table; + + Lisp_Object f_Vminibuffer_completion_predicate; + + Lisp_Object f_Vminibuffer_completion_confirm; + + Lisp_Object f_Vminibuffer_completing_file_name; + + Lisp_Object f_Vdos_unsupported_char_glyph; + + Lisp_Object f_Vstandard_output; + + Lisp_Object f_Vfloat_output_format; + + /* Maximum length of list to print in full; noninteger means + effectively infinity */ + Lisp_Object f_Vprint_length; + + /* Maximum depth of list to print in full; noninteger means + effectively infinity. */ + Lisp_Object f_Vprint_level; + + /* Nonzero means print newlines in strings as \n. */ + int f_print_escape_newlines; + + /* Nonzero means to print single-byte non-ascii characters in strings as + octal escapes. */ + int f_print_escape_nonascii; + + /* Nonzero means to print multibyte characters in strings as hex escapes. */ + int f_print_escape_multibyte; + + /* Nonzero means print (quote foo) forms as 'foo, etc. */ + int f_print_quoted; + + /* Non-nil means print #: before uninterned symbols. */ + Lisp_Object f_Vprint_gensym; + + /* Non-nil means print recursive structures using #n= and #n# syntax. */ + Lisp_Object f_Vprint_circle; + + /* Non-nil means keep continuous number for #n= and #n# syntax + between several print functions. */ + Lisp_Object f_Vprint_continuous_numbering; + + Lisp_Object f_Vprint_number_table; + + /* A flag to control printing of `charset' text property. + The default value is Qdefault. */ + Lisp_Object f_Vprint_charset_text_property; + + /* Nonzero means delete a process right away if it exits. */ + int f_delete_exited_processes; + + /* t means use pty, nil means use a pipe, + maybe other values to come. */ + Lisp_Object f_Vprocess_connection_type; + + /* Non-nil means to delay reading process output to improve buffering. + A value of t means that delay is reset after each send, any other + non-nil value does not reset the delay. A value of nil disables + adaptive read buffering completely. */ + Lisp_Object f_Vprocess_adaptive_read_buffering; + + Lisp_Object f_Vsearch_spaces_regexp; + + /* If non-nil, the match data will not be changed during call to + searching or matching functions. This variable is for internal use + only. */ + Lisp_Object f_Vinhibit_changing_match_data; + + int f_words_include_escapes; + + int f_parse_sexp_lookup_properties; + + /* Nonzero means `scan-sexps' treat all multibyte characters as symbol. */ + int f_multibyte_syntax_as_symbol; + + /* Non-zero means an open parenthesis in column 0 is always considered + to be the start of a defun. Zero means an open parenthesis in + column 0 has no special meaning. */ + int f_open_paren_in_column_0_is_defun_start; + + int f_parse_sexp_ignore_comments; + + /* Char-table of functions that find the next or previous word + boundary. */ + Lisp_Object f_Vfind_word_boundary_function_table; + + /* If true, use "vs", otherwise use "ve" to make the cursor visible. */ + int f_visible_cursor; + + /* Functions to call after suspending a tty. */ + Lisp_Object f_Vsuspend_tty_functions; + + /* Functions to call after resuming a tty. */ + Lisp_Object f_Vresume_tty_functions; + + /* Nonzero means no need to redraw the entire frame on resuming a + suspended Emacs. This is useful on terminals with multiple + pages, where one page is used for Emacs and another for all + else. */ + int f_no_redraw_on_reenter; + + /* Provided for lisp packages. */ + int f_system_uses_terminfo; + + /* Function to use to ring the bell. */ + Lisp_Object f_Vring_bell_function; + + Lisp_Object f_Vdelete_terminal_functions; + + Lisp_Object f_Vinhibit_point_motion_hooks; + + Lisp_Object f_Vdefault_text_properties; + + Lisp_Object f_Vchar_property_alias_alist; + + Lisp_Object f_Vtext_property_default_nonsticky; + + /* Limits controlling how much undo information to keep. */ + EMACS_INT f_undo_limit; + + EMACS_INT f_undo_strong_limit; + + Lisp_Object f_Vundo_outer_limit; + + /* Function to call when undo_outer_limit is exceeded. */ + Lisp_Object f_Vundo_outer_limit_function; + + /* Nonzero means do not record point in record_point. */ + int f_undo_inhibit_record_point; + + /* Coding system for communicating with other Windows programs via the + clipboard. */ + Lisp_Object f_Vselection_coding_system; + + /* Coding system for the next communicating with other Windows programs. */ + Lisp_Object f_Vnext_selection_coding_system; + + /* Determine whether to make frame dimensions match the screen buffer, + or the current window size. The former is desirable when running + over telnet, while the latter is more useful when working directly at + the console with a large scroll-back buffer. */ + int f_w32_use_full_screen_buffer; + + /* The colormap for converting color names to RGB values */ + Lisp_Object f_Vw32_color_map; + + /* Non nil if alt key presses are passed on to Windows. */ + Lisp_Object f_Vw32_pass_alt_to_system; + + /* Non nil if alt key is translated to meta_modifier, nil if it is translated + to alt_modifier. */ + Lisp_Object f_Vw32_alt_is_meta; + + /* If non-zero, the windows virtual key code for an alternative quit key. */ + int f_w32_quit_key; + + /* Non nil if left window key events are passed on to Windows (this only + affects whether "tapping" the key opens the Start menu). */ + Lisp_Object f_Vw32_pass_lwindow_to_system; + + /* Non nil if right window key events are passed on to Windows (this + only affects whether "tapping" the key opens the Start menu). */ + Lisp_Object f_Vw32_pass_rwindow_to_system; + + /* Virtual key code used to generate "phantom" key presses in order + to stop system from acting on Windows key events. */ + Lisp_Object f_Vw32_phantom_key_code; + + /* Modifier associated with the left "Windows" key, or nil to act as a + normal key. */ + Lisp_Object f_Vw32_lwindow_modifier; + + /* Modifier associated with the right "Windows" key, or nil to act as a + normal key. */ + Lisp_Object f_Vw32_rwindow_modifier; + + /* Modifier associated with the "Apps" key, or nil to act as a normal + key. */ + Lisp_Object f_Vw32_apps_modifier; + + /* Value is nil if Num Lock acts as a function key. */ + Lisp_Object f_Vw32_enable_num_lock; + + /* Value is nil if Caps Lock acts as a function key. */ + Lisp_Object f_Vw32_enable_caps_lock; + + /* Modifier associated with Scroll Lock, or nil to act as a normal key. */ + Lisp_Object f_Vw32_scroll_lock_modifier; + + /* Switch to control whether we inhibit requests for synthesized bold + and italic versions of fonts. */ + int f_w32_enable_synthesized_fonts; + + /* Enable palette management. */ + Lisp_Object f_Vw32_enable_palette; + + /* Control how close left/right button down events must be to + be converted to a middle button down event. */ + int f_w32_mouse_button_tolerance; + + /* Minimum interval between mouse movement (and scroll bar drag) + events that are passed on to the event loop. */ + int f_w32_mouse_move_interval; + + /* Flag to indicate if XBUTTON events should be passed on to Windows. */ + int f_w32_pass_extra_mouse_buttons_to_system; + + /* Flag to indicate if media keys should be passed on to Windows. */ + int f_w32_pass_multimedia_buttons_to_system; + + /* Non nil if no window manager is in use. */ + Lisp_Object f_Vx_no_window_manager; + + /* The background and shape of the mouse pointer, and shape when not + over text or in the modeline. */ + Lisp_Object f_Vx_pointer_shape; + Lisp_Object f_Vx_nontext_pointer_shape; + Lisp_Object f_Vx_mode_pointer_shape; + + /* TODO: Mouse cursor customization. */ + Lisp_Object f_Vx_hourglass_pointer_shape; + Lisp_Object f_Vx_window_horizontal_drag_shape; + + /* The shape when over mouse-sensitive text. */ + Lisp_Object f_Vx_sensitive_text_pointer_shape; + + /* Color of chars displayed in cursor box. */ + Lisp_Object f_Vx_cursor_fore_pixel; + + /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'. */ + Lisp_Object f_Vx_pixel_size_width_font_regexp; + + /* Alist of bdf fonts and the files that define them. */ + Lisp_Object f_Vw32_bdf_filename_alist; + + /* A flag to control whether fonts are matched strictly or not. */ + int f_w32_strict_fontnames; + + /* A flag to control whether we should only repaint if GetUpdateRect + indicates there is an update region. */ + int f_w32_strict_painting; + + /* The ANSI codepage. */ + int f_w32_ansi_code_page; + + /* Maximum size for tooltips; a cons (COLUMNS . ROWS). */ + Lisp_Object f_Vx_max_tooltip_size; + + /* Associative list linking character set strings to Windows codepages. */ + Lisp_Object f_Vw32_charset_info_alist; + + /* Control whether spawnve quotes arguments as necessary to ensure + correct parsing by child process. Because not all uses of spawnve + are careful about constructing argv arrays, we make this behavior + conditional (off by default). */ + Lisp_Object f_Vw32_quote_process_args; + + /* Control whether create_child causes the process' window to be + hidden. The default is nil. */ + Lisp_Object f_Vw32_start_process_show_window; + + /* Control whether create_child causes the process to inherit Emacs' + console window, or be given a new one of its own. The default is + nil, to allow multiple DOS programs to run on Win95. Having separate + consoles also allows Emacs to cleanly terminate process groups. */ + Lisp_Object f_Vw32_start_process_share_console; + + /* Control whether create_child cause the process to inherit Emacs' + error mode setting. The default is t, to minimize the possibility of + subprocesses blocking when accessing unmounted drives. */ + Lisp_Object f_Vw32_start_process_inherit_error_mode; + + /* Time to sleep before reading from a subprocess output pipe - this + avoids the inefficiency of frequently reading small amounts of data. + This is primarily necessary for handling DOS processes on Windows 95, + but is useful for W32 processes on both Windows 95 and NT as well. */ + int f_w32_pipe_read_delay; + + /* Control conversion of upper case file names to lower case. + nil means no, t means yes. */ + Lisp_Object f_Vw32_downcase_file_names; + + /* Control whether stat() attempts to generate fake but hopefully + "accurate" inode values, by hashing the absolute truenames of files. + This should detect aliasing between long and short names, but still + allows the possibility of hash collisions. */ + Lisp_Object f_Vw32_generate_fake_inodes; + + /* Control whether stat() attempts to determine file type and link count + exactly, at the expense of slower operation. Since true hard links + are supported on NTFS volumes, this is only relevant on NT. */ + Lisp_Object f_Vw32_get_true_file_attributes; + + /* Coding system for communicating with other programs via the + clipboard. */ + + /* Coding system for the next communication with other programs. */ + + /* Non-nil means Emacs uses toolkit scroll bars. */ + Lisp_Object f_Vx_toolkit_scroll_bars; + + /* Non-zero means make use of UNDERLINE_POSITION font properties. */ + int f_x_use_underline_position_properties; + + /* Non-zero means to draw the underline at the same place as the descent line. */ + int f_x_underline_at_descent_line; + + int f_w32_use_visible_system_caret; + + int f_w32_num_mouse_buttons; + + Lisp_Object f_Vw32_swap_mouse_buttons; + + /* Control whether x_raise_frame also sets input focus. */ + Lisp_Object f_Vw32_grab_focus_on_raise; + + /* Control whether Caps Lock affects non-ascii characters. */ + Lisp_Object f_Vw32_capslock_is_shiftlock; + + /* Control whether right-alt and left-ctrl should be recognized as AltGr. */ + Lisp_Object f_Vw32_recognize_altgr; + + /* Non-nil means it is the window for C-M-v to scroll + when the mini-buffer is selected. */ + Lisp_Object f_Vminibuf_scroll_window; + + /* Non-nil means this is the buffer whose window C-M-v should scroll. */ + Lisp_Object f_Vother_window_scroll_buffer; + + /* Non-nil means it's function to call to display temp buffers. */ + Lisp_Object f_Vtemp_buffer_show_function; + + /* Non-zero means line and page scrolling on tall lines (with images) + does partial scrolling by modifying window-vscroll. */ + int f_auto_window_vscroll_p; + + /* Non-zero means to use mode-line-inactive face in all windows but the + selected-window and the minibuffer-scroll-window when the + minibuffer is active. */ + int f_mode_line_in_non_selected_windows; + + /* If a window gets smaller than either of these, it is removed. */ + EMACS_INT f_window_min_height; + + EMACS_INT f_window_min_width; + + /* Number of lines of continuity in scrolling by screenfuls. */ + EMACS_INT f_next_screen_context_lines; + + Lisp_Object f_Vwindow_configuration_change_hook; + + /* Non-nil means scroll commands try to put point + at the same screen height as previously. */ + Lisp_Object f_Vscroll_preserve_screen_position; + + /* Non-nil means that text is inserted before window's markers. */ + Lisp_Object f_Vwindow_point_insertion_type; + + /* If non-nil, then the `recenter' command with a nil argument + the entire frame to be redrawn; the special value `tty' causes the + frame to be redrawn only if it is a tty frame. */ + Lisp_Object f_Vrecenter_redisplay; + + Lisp_Object f_Vwindow_scroll_functions; + + Lisp_Object f_Vwindow_text_change_functions; + + Lisp_Object f_Vredisplay_end_trigger_functions; + + /* Functions called to fontify regions of text. */ + Lisp_Object f_Vfontification_functions; + + /* Non-nil means automatically select any window when the mouse + cursor moves into it. */ + Lisp_Object f_Vmouse_autoselect_window; + + Lisp_Object f_Vwrap_prefix; + + Lisp_Object f_Vline_prefix; + + /* Non-zero means draw tool bar buttons raised when the mouse moves + over them. */ + int f_auto_raise_tool_bar_buttons_p; + + /* Non-zero means to reposition window if cursor line is only partially visible. */ + int f_make_cursor_line_fully_visible_p; + + /* Margin below tool bar in pixels. 0 or nil means no margin. + If value is `internal-border-width' or `border-width', + the corresponding frame parameter is used. */ + Lisp_Object f_Vtool_bar_border; + + /* Margin around tool bar buttons in pixels. */ + Lisp_Object f_Vtool_bar_button_margin; + + /* Thickness of shadow to draw around tool bar buttons. */ + EMACS_INT f_tool_bar_button_relief; + + /* Non-nil means automatically resize tool-bars so that all tool-bar + items are visible, and no blank lines remain. + + If value is `grow-only', only make tool-bar bigger. */ + Lisp_Object f_Vauto_resize_tool_bars; + + /* Type of tool bar. Can be symbols image, text, both or both-hroiz. */ + Lisp_Object f_Vtool_bar_style; + + /* Maximum number of characters a label can have to be shown. */ + EMACS_INT f_tool_bar_max_label_size; + + /* Non-zero means draw block and hollow cursor as wide as the glyph + under it. For example, if a block cursor is over a tab, it will be + drawn as wide as that tab on the display. */ + int f_x_stretch_cursor_p; + + Lisp_Object f_Vinhibit_redisplay; + + /* Non-zero means Lisp evaluation during redisplay is inhibited. */ + int f_inhibit_eval_during_redisplay; + + /* Symbols used in text property values. */ + Lisp_Object f_Vdisplay_pixels_per_inch; + + /* Non-nil means highlight trailing whitespace. */ + Lisp_Object f_Vshow_trailing_whitespace; + + /* Non-nil means escape non-break space and hyphens. */ + Lisp_Object f_Vnobreak_char_display; + + /* Non-nil means show the text cursor in void text areas + i.e. in blank areas after eol and eob. This used to be + the default in 21.3. */ + Lisp_Object f_Vvoid_text_area_pointer; + + /* Nonzero means truncate lines in all windows less wide than the + frame. */ + Lisp_Object f_Vtruncate_partial_width_windows; + + /* A flag to control how to display unibyte 8-bit character. */ + int f_unibyte_display_via_language_environment; + + /* Nonzero means we have more than one non-mini-buffer-only frame. + Not guaranteed to be accurate except while parsing + frame-title-format. */ + int f_multiple_frames; + + Lisp_Object f_Vglobal_mode_string; + + /* List of variables (symbols) which hold markers for overlay arrows. + The symbols on this list are examined during redisplay to determine + where to display overlay arrows. */ + Lisp_Object f_Voverlay_arrow_variable_list; + + /* Marker for where to display an arrow on top of the buffer text. */ + Lisp_Object f_Voverlay_arrow_position; + + /* String to display for the arrow. Only used on terminal frames. */ + Lisp_Object f_Voverlay_arrow_string; + + /* Like mode-line-format, but for the title bar on a visible frame. */ + Lisp_Object f_Vframe_title_format; + + /* Like mode-line-format, but for the title bar on an iconified frame. */ + Lisp_Object f_Vicon_title_format; + + /* List of functions to call when a window's size changes. These + functions get one arg, a frame on which one or more windows' sizes + have changed. */ + Lisp_Object f_Vwindow_size_change_functions; + + Lisp_Object f_Vmenu_bar_update_hook; + + /* Nonzero means highlight the region even in nonselected windows. */ + int f_highlight_nonselected_windows; + + /* If cursor motion alone moves point off frame, try scrolling this + many lines up or down if that will bring it back. */ + EMACS_INT f_emacs_scroll_step; + + /* Nonzero means scroll just far enough to bring point back on the + screen, when appropriate. */ + EMACS_INT f_scroll_conservatively; + + /* Recenter the window whenever point gets within this many lines of + the top or bottom of the window. This value is translated into a + pixel value by multiplying it with FRAME_LINE_HEIGHT, which means + that there is really a fixed pixel height scroll margin. */ + EMACS_INT f_scroll_margin; + + /* Zero means display the mode-line/header-line/menu-bar in the default face + (this slightly odd definition is for compatibility with previous versions + of emacs), non-zero means display them using their respective faces. + + This variable is deprecated. */ + int f_mode_line_inverse_video; + + /* Maximum buffer size for which to display line numbers. */ + Lisp_Object f_Vline_number_display_limit; + + /* Line width to consider when repositioning for line number display. */ + EMACS_INT f_line_number_display_limit_width; + + /* Number of lines to keep in the message log buffer. t means + infinite. nil means don't log at all. */ + Lisp_Object f_Vmessage_log_max; + + int f_inhibit_menubar_update; + + /* When evaluating expressions from menu bar items (enable conditions, + for instance), this is the frame they are being processed for. */ + Lisp_Object f_Vmenu_updating_frame; + + /* Maximum height for resizing mini-windows. Either a float + specifying a fraction of the available height, or an integer + specifying a number of lines. */ + Lisp_Object f_Vmax_mini_window_height; + + /* Non-zero means messages should be displayed with truncated + lines instead of being continued. */ + int f_message_truncate_lines; + + /* How to blink the default frame cursor off. */ + Lisp_Object f_Vblink_cursor_alist; + + /* Variables to turn off display optimizations from Lisp. */ + int f_inhibit_try_window_id; + int f_inhibit_try_window_reusing; + + int f_inhibit_try_cursor_movement; + + /* Non-zero means automatically scroll windows horizontally to make + point visible. */ + int f_automatic_hscrolling_p; + + /* How close to the margin can point get before the window is scrolled + horizontally. */ + EMACS_INT f_hscroll_margin; + + /* How much to scroll horizontally when point is inside the above margin. */ + Lisp_Object f_Vhscroll_step; + + /* The variable `resize-mini-windows'. If nil, don't resize + mini-windows. If t, always resize them to fit the text they + display. If `grow-only', let mini-windows grow only until they + become empty. */ + Lisp_Object f_Vresize_mini_windows; + + /* Space between overline and text. */ + EMACS_INT f_overline_margin; + + /* Require underline to be at least this many screen pixels below baseline + This to avoid underline "merging" with the base of letters at small + font sizes, particularly when x_use_underline_position_properties is on. */ + EMACS_INT f_underline_minimum_offset; + + /* Non-zero means don't free realized faces. Bound while freeing + realized faces is dangerous because glyph matrices might still + reference them. */ + int f_inhibit_free_realized_faces; + + /* Non-zero means we're allowed to display a hourglass pointer. */ + int f_display_hourglass_p; + + /* Number of seconds to wait before displaying an hourglass cursor. */ + Lisp_Object f_Vhourglass_delay; + + /* Char-table to control the display of glyphless characters. */ + Lisp_Object f_Vglyphless_char_display; + + EMACS_INT f_debug_end_pos; + + /* Default stipple pattern used on monochrome displays. This stipple + pattern is used on monochrome displays instead of shades of gray + for a face background color. See `set-face-stipple' for possible + values for this variable. */ + Lisp_Object f_Vface_default_stipple; + + Lisp_Object f_Vscalable_fonts_allowed; + + /* List of regular expressions that matches names of fonts to ignore. */ + Lisp_Object f_Vface_ignored_fonts; + + /* Alist of font name patterns vs the rescaling factor. */ + Lisp_Object f_Vface_font_rescale_alist; + + /* Maximum number of fonts to consider in font_list. If not an + integer > 0, DEFAULT_FONT_LIST_LIMIT is used instead. */ + Lisp_Object f_Vfont_list_limit; + + /* Alist of global face definitions. Each element is of the form + (FACE . LFACE) where FACE is a symbol naming a face and LFACE + is a Lisp vector of face attributes. These faces are used + to initialize faces for new frames. */ + Lisp_Object f_Vface_new_frame_defaults; + + /* Alist of face remappings. Each element is of the form: + (FACE REPLACEMENT...) which causes display of the face FACE to use + REPLACEMENT... instead. REPLACEMENT... is interpreted the same way + the value of a `face' text property is: it may be (1) A face name, + (2) A list of face names, (3) A property-list of face attribute/value + pairs, or (4) A list of face names intermixed with lists containing + face attribute/value pairs. + + Multiple entries in REPLACEMENT... are merged together to form the final + result, with faces or attributes earlier in the list taking precedence + over those that are later. + + Face-name remapping cycles are suppressed; recursive references use + the underlying face instead of the remapped face. */ + Lisp_Object f_Vface_remapping_alist; + + /* An alist of defined terminal colors and their RGB values. */ + Lisp_Object f_Vtty_defined_color_alist; + + /* LessTif/Motif version info. */ + Lisp_Object f_Vmotif_version_string; + + /* GTK+ version info */ + Lisp_Object f_Vgtk_version_string; + + /* Non-zero means prompt with the old GTK file selection dialog. */ + int f_x_gtk_use_old_file_dialog; + + /* If non-zero, by default show hidden files in the GTK file chooser. */ + int f_x_gtk_show_hidden_files; + + /* If non-zero, don't show additional help text in the GTK file chooser. */ + int f_x_gtk_file_dialog_help_text; + + /* If non-zero, don't collapse to tool bar when it is detached. */ + int f_x_gtk_whole_detached_tool_bar; + + /* If non-zero, use Gtk+ tooltips. */ + int f_x_gtk_use_system_tooltips; + + /* The background and shape of the mouse pointer, and shape when not + over text or in the modeline. */ + + /* The shape when over mouse-sensitive text. */ + + /* If non-nil, the pointer shape to indicate that windows can be + dragged horizontally. */ + + /* Color of chars displayed in cursor box. */ + + /* Non nil if no window manager is in use. */ + + /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'. */ + + /* Maximum size for tooltips; a cons (COLUMNS . ROWS). */ + + Lisp_Object f_Vx_lost_selection_functions; + + Lisp_Object f_Vx_sent_selection_functions; + + /* This is an alist whose CARs are selection-types (whose names are the same + as the names of X Atoms) and whose CDRs are the names of Lisp functions to + call to convert the given Emacs selection value to a string representing + the given selection type. This is for Lisp-level extension of the emacs + selection handling. */ + Lisp_Object f_Vselection_converter_alist; + + /* If the selection owner takes too long to reply to a selection request, + we give up on it. This is in milliseconds (0 = no timeout.) */ + EMACS_INT f_x_selection_timeout; + + int f_use_system_font; + + Lisp_Object f_Vxft_settings; + + /* The client session id for this session as a lisp object. */ + Lisp_Object f_Vx_session_id; + + /* The id we had the previous session. This is only available if we + have been started by the session manager with SMID_OPT. */ + Lisp_Object f_Vx_session_previous_id; + + /* Non-nil means Emacs uses toolkit scroll bars. */ + + /* Non-zero means make use of UNDERLINE_POSITION font properties. */ + + /* Non-zero means to draw the underline at the same place as the descent line. */ + + /* Non-zero means to not move point as a result of clicking on a + frame to focus it (when focus-follows-mouse is nil). */ + int f_x_mouse_click_focus_ignore_position; + + /* The keysyms to use for the various modifiers. */ + Lisp_Object f_Vx_alt_keysym; + Lisp_Object f_Vx_hyper_keysym; + Lisp_Object f_Vx_meta_keysym; + Lisp_Object f_Vx_super_keysym; + + Lisp_Object f_Vx_keysym_table; +}; + +extern struct emacs_globals globals; + +#define Vafter_change_functions \ + globals.f_Vafter_change_functions +#define Vafter_init_time \ + globals.f_Vafter_init_time +#define Vafter_insert_file_functions \ + globals.f_Vafter_insert_file_functions +#define Vafter_load_alist \ + globals.f_Vafter_load_alist +#define Valternate_fontname_alist \ + globals.f_Valternate_fontname_alist +#define Vauto_composition_function \ + globals.f_Vauto_composition_function +#define Vauto_composition_mode \ + globals.f_Vauto_composition_mode +#define Vauto_fill_chars \ + globals.f_Vauto_fill_chars +#define Vauto_resize_tool_bars \ + globals.f_Vauto_resize_tool_bars +#define Vauto_save_include_big_deletions \ + globals.f_Vauto_save_include_big_deletions +#define Vauto_save_list_file_name \ + globals.f_Vauto_save_list_file_name +#define Vauto_save_timeout \ + globals.f_Vauto_save_timeout +#define Vauto_save_visited_file_name \ + globals.f_Vauto_save_visited_file_name +#define Vbefore_change_functions \ + globals.f_Vbefore_change_functions +#define Vbefore_init_time \ + globals.f_Vbefore_init_time +#define Vblink_cursor_alist \ + globals.f_Vblink_cursor_alist +#define Vbuffer_access_fontified_property \ + globals.f_Vbuffer_access_fontified_property +#define Vbuffer_access_fontify_functions \ + globals.f_Vbuffer_access_fontify_functions +#define Vbuild_files \ + globals.f_Vbuild_files +#define Vbyte_boolean_vars \ + globals.f_Vbyte_boolean_vars +#define Vbyte_code_meter \ + globals.f_Vbyte_code_meter +#define Vbytecomp_version_regexp \ + globals.f_Vbytecomp_version_regexp +#define Vchange_major_mode_hook \ + globals.f_Vchange_major_mode_hook +#define Vchar_direction_table \ + globals.f_Vchar_direction_table +#define Vchar_property_alias_alist \ + globals.f_Vchar_property_alias_alist +#define Vchar_script_table \ + globals.f_Vchar_script_table +#define Vchar_width_table \ + globals.f_Vchar_width_table +#define Vcharset_list \ + globals.f_Vcharset_list +#define Vcharset_map_path \ + globals.f_Vcharset_map_path +#define Vcharset_revision_table \ + globals.f_Vcharset_revision_table +#define Vcode_conversion_map_vector \ + globals.f_Vcode_conversion_map_vector +#define Vcoding_category_list \ + globals.f_Vcoding_category_list +#define Vcoding_system_alist \ + globals.f_Vcoding_system_alist +#define Vcoding_system_for_read \ + globals.f_Vcoding_system_for_read +#define Vcoding_system_for_write \ + globals.f_Vcoding_system_for_write +#define Vcoding_system_list \ + globals.f_Vcoding_system_list +#define Vcombine_after_change_calls \ + globals.f_Vcombine_after_change_calls +#define Vcommand_debug_status \ + globals.f_Vcommand_debug_status +#define Vcommand_error_function \ + globals.f_Vcommand_error_function +#define Vcommand_history \ + globals.f_Vcommand_history +#define Vcommand_hook_internal \ + globals.f_Vcommand_hook_internal +#define Vcommand_line_args \ + globals.f_Vcommand_line_args +#define Vcompletion_ignored_extensions \ + globals.f_Vcompletion_ignored_extensions +#define Vcompletion_regexp_list \ + globals.f_Vcompletion_regexp_list +#define Vcompose_chars_after_function \ + globals.f_Vcompose_chars_after_function +#define Vcomposition_function_table \ + globals.f_Vcomposition_function_table +#define Vconfigure_info_directory \ + globals.f_Vconfigure_info_directory +#define Vcurrent_iso639_language \ + globals.f_Vcurrent_iso639_language +#define Vcurrent_load_list \ + globals.f_Vcurrent_load_list +#define Vcurrent_prefix_arg \ + globals.f_Vcurrent_prefix_arg +#define Vdata_directory \ + globals.f_Vdata_directory +#define Vdbus_debug \ + globals.f_Vdbus_debug +#define Vdbus_registered_buses \ + globals.f_Vdbus_registered_buses +#define Vdbus_registered_objects_table \ + globals.f_Vdbus_registered_objects_table +#define Vdeactivate_mark \ + globals.f_Vdeactivate_mark +#define Vdebug_ignored_errors \ + globals.f_Vdebug_ignored_errors +#define Vdebug_on_error \ + globals.f_Vdebug_on_error +#define Vdebug_on_signal \ + globals.f_Vdebug_on_signal +#define Vdebugger \ + globals.f_Vdebugger +#define Vdefault_file_name_coding_system \ + globals.f_Vdefault_file_name_coding_system +#define Vdefault_frame_alist \ + globals.f_Vdefault_frame_alist +#define Vdefault_frame_scroll_bars \ + globals.f_Vdefault_frame_scroll_bars +#define Vdefault_process_coding_system \ + globals.f_Vdefault_process_coding_system +#define Vdefault_text_properties \ + globals.f_Vdefault_text_properties +#define Vdeferred_action_function \ + globals.f_Vdeferred_action_function +#define Vdeferred_action_list \ + globals.f_Vdeferred_action_list +#define Vdefine_key_rebound_commands \ + globals.f_Vdefine_key_rebound_commands +#define Vdelete_frame_functions \ + globals.f_Vdelete_frame_functions +#define Vdelete_terminal_functions \ + globals.f_Vdelete_terminal_functions +#define Vdisable_point_adjustment \ + globals.f_Vdisable_point_adjustment +#define Vdisplay_pixels_per_inch \ + globals.f_Vdisplay_pixels_per_inch +#define Vdoc_directory \ + globals.f_Vdoc_directory +#define Vdoc_file_name \ + globals.f_Vdoc_file_name +#define Vdos_display_scancodes \ + globals.f_Vdos_display_scancodes +#define Vdos_unsupported_char_glyph \ + globals.f_Vdos_unsupported_char_glyph +#define Vdos_version \ + globals.f_Vdos_version +#define Vdos_windows_version \ + globals.f_Vdos_windows_version +#define Vdouble_click_time \ + globals.f_Vdouble_click_time +#define Vdynamic_library_alist \ + globals.f_Vdynamic_library_alist +#define Vecho_keystrokes \ + globals.f_Vecho_keystrokes +#define Vemacs_copyright \ + globals.f_Vemacs_copyright +#define Vemacs_version \ + globals.f_Vemacs_version +#define Vemulation_mode_map_alists \ + globals.f_Vemulation_mode_map_alists +#define Venable_character_translation \ + globals.f_Venable_character_translation +#define Venable_disabled_menus_and_buttons \ + globals.f_Venable_disabled_menus_and_buttons +#define Veval_buffer_list \ + globals.f_Veval_buffer_list +#define Vexec_directory \ + globals.f_Vexec_directory +#define Vexec_path \ + globals.f_Vexec_path +#define Vexec_suffixes \ + globals.f_Vexec_suffixes +#define Vexecuting_kbd_macro \ + globals.f_Vexecuting_kbd_macro +#define Vface_default_stipple \ + globals.f_Vface_default_stipple +#define Vface_font_rescale_alist \ + globals.f_Vface_font_rescale_alist +#define Vface_ignored_fonts \ + globals.f_Vface_ignored_fonts +#define Vface_new_frame_defaults \ + globals.f_Vface_new_frame_defaults +#define Vface_remapping_alist \ + globals.f_Vface_remapping_alist +#define Vfeatures \ + globals.f_Vfeatures +#define Vfile_coding_system_alist \ + globals.f_Vfile_coding_system_alist +#define Vfile_name_coding_system \ + globals.f_Vfile_name_coding_system +#define Vfile_name_handler_alist \ + globals.f_Vfile_name_handler_alist +#define Vfind_word_boundary_function_table \ + globals.f_Vfind_word_boundary_function_table +#define Vfirst_change_hook \ + globals.f_Vfirst_change_hook +#define Vfloat_output_format \ + globals.f_Vfloat_output_format +#define Vfont_ccl_encoder_alist \ + globals.f_Vfont_ccl_encoder_alist +#define Vfont_encoding_alist \ + globals.f_Vfont_encoding_alist +#define Vfont_encoding_charset_alist \ + globals.f_Vfont_encoding_charset_alist +#define Vfont_list_limit \ + globals.f_Vfont_list_limit +#define Vfont_log \ + globals.f_Vfont_log +#define Vfont_slant_table \ + globals.f_Vfont_slant_table +#define Vfont_weight_table \ + globals.f_Vfont_weight_table +#define Vfont_width_table \ + globals.f_Vfont_width_table +#define Vfontification_functions \ + globals.f_Vfontification_functions +#define Vfontset_alias_alist \ + globals.f_Vfontset_alias_alist +#define Vframe_alpha_lower_limit \ + globals.f_Vframe_alpha_lower_limit +#define Vframe_title_format \ + globals.f_Vframe_title_format +#define Vfringe_bitmaps \ + globals.f_Vfringe_bitmaps +#define Vfunction_key_map \ + globals.f_Vfunction_key_map +#define Vgc_cons_percentage \ + globals.f_Vgc_cons_percentage +#define Vgc_elapsed \ + globals.f_Vgc_elapsed +#define Vglobal_disable_point_adjustment \ + globals.f_Vglobal_disable_point_adjustment +#define Vglobal_mode_string \ + globals.f_Vglobal_mode_string +#define Vglyph_table \ + globals.f_Vglyph_table +#define Vglyphless_char_display \ + globals.f_Vglyphless_char_display +#define Vgtk_version_string \ + globals.f_Vgtk_version_string +#define Vhelp_char \ + globals.f_Vhelp_char +#define Vhelp_event_list \ + globals.f_Vhelp_event_list +#define Vhelp_form \ + globals.f_Vhelp_form +#define Vhistory_add_new_input \ + globals.f_Vhistory_add_new_input +#define Vhistory_length \ + globals.f_Vhistory_length +#define Vhourglass_delay \ + globals.f_Vhourglass_delay +#define Vhscroll_step \ + globals.f_Vhscroll_step +#define Vicon_title_format \ + globals.f_Vicon_title_format +#define Vignore_relative_composition \ + globals.f_Vignore_relative_composition +#define Vimage_cache_eviction_delay \ + globals.f_Vimage_cache_eviction_delay +#define Vimage_types \ + globals.f_Vimage_types +#define Vimagemagick_render_type \ + globals.f_Vimagemagick_render_type +#define Vinhibit_changing_match_data \ + globals.f_Vinhibit_changing_match_data +#define Vinhibit_field_text_motion \ + globals.f_Vinhibit_field_text_motion +#define Vinhibit_file_name_handlers \ + globals.f_Vinhibit_file_name_handlers +#define Vinhibit_file_name_operation \ + globals.f_Vinhibit_file_name_operation +#define Vinhibit_point_motion_hooks \ + globals.f_Vinhibit_point_motion_hooks +#define Vinhibit_quit \ + globals.f_Vinhibit_quit +#define Vinhibit_read_only \ + globals.f_Vinhibit_read_only +#define Vinhibit_redisplay \ + globals.f_Vinhibit_redisplay +#define Vinitial_environment \ + globals.f_Vinitial_environment +#define Vinitial_window_system \ + globals.f_Vinitial_window_system +#define Vinput_method_function \ + globals.f_Vinput_method_function +#define Vinput_method_previous_message \ + globals.f_Vinput_method_previous_message +#define Vinstallation_directory \ + globals.f_Vinstallation_directory +#define Vinvocation_directory \ + globals.f_Vinvocation_directory +#define Vinvocation_name \ + globals.f_Vinvocation_name +#define Vkey_translation_map \ + globals.f_Vkey_translation_map +#define Vkill_buffer_query_functions \ + globals.f_Vkill_buffer_query_functions +#define Vkill_emacs_hook \ + globals.f_Vkill_emacs_hook +#define Vlast_code_conversion_error \ + globals.f_Vlast_code_conversion_error +#define Vlast_coding_system_used \ + globals.f_Vlast_coding_system_used +#define Vlast_event_frame \ + globals.f_Vlast_event_frame +#define Vlatin_extra_code_table \ + globals.f_Vlatin_extra_code_table +#define Vline_number_display_limit \ + globals.f_Vline_number_display_limit +#define Vline_prefix \ + globals.f_Vline_prefix +#define Vload_file_name \ + globals.f_Vload_file_name +#define Vload_file_rep_suffixes \ + globals.f_Vload_file_rep_suffixes +#define Vload_history \ + globals.f_Vload_history +#define Vload_path \ + globals.f_Vload_path +#define Vload_read_function \ + globals.f_Vload_read_function +#define Vload_source_file_function \ + globals.f_Vload_source_file_function +#define Vload_suffixes \ + globals.f_Vload_suffixes +#define Vlocale_coding_system \ + globals.f_Vlocale_coding_system +#define Vlucid_menu_bar_dirty_flag \ + globals.f_Vlucid_menu_bar_dirty_flag +#define Vmacro_declaration_function \ + globals.f_Vmacro_declaration_function +#define Vmake_pointer_invisible \ + globals.f_Vmake_pointer_invisible +#define Vmark_even_if_inactive \ + globals.f_Vmark_even_if_inactive +#define Vmax_image_size \ + globals.f_Vmax_image_size +#define Vmax_mini_window_height \ + globals.f_Vmax_mini_window_height +#define Vmemory_full \ + globals.f_Vmemory_full +#define Vmemory_signal_data \ + globals.f_Vmemory_signal_data +#define Vmenu_bar_final_items \ + globals.f_Vmenu_bar_final_items +#define Vmenu_bar_mode \ + globals.f_Vmenu_bar_mode +#define Vmenu_bar_update_hook \ + globals.f_Vmenu_bar_update_hook +#define Vmenu_updating_frame \ + globals.f_Vmenu_updating_frame +#define Vmessage_log_max \ + globals.f_Vmessage_log_max +#define Vminibuf_scroll_window \ + globals.f_Vminibuf_scroll_window +#define Vminibuffer_completing_file_name \ + globals.f_Vminibuffer_completing_file_name +#define Vminibuffer_completion_confirm \ + globals.f_Vminibuffer_completion_confirm +#define Vminibuffer_completion_predicate \ + globals.f_Vminibuffer_completion_predicate +#define Vminibuffer_completion_table \ + globals.f_Vminibuffer_completion_table +#define Vminibuffer_exit_hook \ + globals.f_Vminibuffer_exit_hook +#define Vminibuffer_help_form \ + globals.f_Vminibuffer_help_form +#define Vminibuffer_history_position \ + globals.f_Vminibuffer_history_position +#define Vminibuffer_history_variable \ + globals.f_Vminibuffer_history_variable +#define Vminibuffer_local_completion_map \ + globals.f_Vminibuffer_local_completion_map +#define Vminibuffer_local_filename_completion_map \ + globals.f_Vminibuffer_local_filename_completion_map +#define Vminibuffer_local_filename_must_match_map \ + globals.f_Vminibuffer_local_filename_must_match_map +#define Vminibuffer_local_map \ + globals.f_Vminibuffer_local_map +#define Vminibuffer_local_must_match_map \ + globals.f_Vminibuffer_local_must_match_map +#define Vminibuffer_local_ns_map \ + globals.f_Vminibuffer_local_ns_map +#define Vminibuffer_message_timeout \ + globals.f_Vminibuffer_message_timeout +#define Vminibuffer_prompt_properties \ + globals.f_Vminibuffer_prompt_properties +#define Vminibuffer_setup_hook \ + globals.f_Vminibuffer_setup_hook +#define Vminor_mode_map_alist \ + globals.f_Vminor_mode_map_alist +#define Vminor_mode_overriding_map_alist \ + globals.f_Vminor_mode_overriding_map_alist +#define Vmost_negative_fixnum \ + globals.f_Vmost_negative_fixnum +#define Vmost_positive_fixnum \ + globals.f_Vmost_positive_fixnum +#define Vmotif_version_string \ + globals.f_Vmotif_version_string +#define Vmouse_autoselect_window \ + globals.f_Vmouse_autoselect_window +#define Vmouse_highlight \ + globals.f_Vmouse_highlight +#define Vmouse_leave_buffer_hook \ + globals.f_Vmouse_leave_buffer_hook +#define Vmouse_position_function \ + globals.f_Vmouse_position_function +#define Vnetwork_coding_system_alist \ + globals.f_Vnetwork_coding_system_alist +#define Vnext_selection_coding_system \ + globals.f_Vnext_selection_coding_system +#define Vnobreak_char_display \ + globals.f_Vnobreak_char_display +#define Vobarray \ + globals.f_Vobarray +#define Vold_style_backquotes \ + globals.f_Vold_style_backquotes +#define Voperating_system_release \ + globals.f_Voperating_system_release +#define Votf_script_alist \ + globals.f_Votf_script_alist +#define Vother_window_scroll_buffer \ + globals.f_Vother_window_scroll_buffer +#define Voverflow_newline_into_fringe \ + globals.f_Voverflow_newline_into_fringe +#define Voverlay_arrow_position \ + globals.f_Voverlay_arrow_position +#define Voverlay_arrow_string \ + globals.f_Voverlay_arrow_string +#define Voverlay_arrow_variable_list \ + globals.f_Voverlay_arrow_variable_list +#define Voverriding_local_map \ + globals.f_Voverriding_local_map +#define Voverriding_local_map_menu_flag \ + globals.f_Voverriding_local_map_menu_flag +#define Vpath_separator \ + globals.f_Vpath_separator +#define Vpost_command_hook \ + globals.f_Vpost_command_hook +#define Vpost_gc_hook \ + globals.f_Vpost_gc_hook +#define Vpost_self_insert_hook \ + globals.f_Vpost_self_insert_hook +#define Vpre_command_hook \ + globals.f_Vpre_command_hook +#define Vprefix_help_command \ + globals.f_Vprefix_help_command +#define Vpreloaded_file_list \ + globals.f_Vpreloaded_file_list +#define Vprevious_system_messages_locale \ + globals.f_Vprevious_system_messages_locale +#define Vprevious_system_time_locale \ + globals.f_Vprevious_system_time_locale +#define Vprint_charset_text_property \ + globals.f_Vprint_charset_text_property +#define Vprint_circle \ + globals.f_Vprint_circle +#define Vprint_continuous_numbering \ + globals.f_Vprint_continuous_numbering +#define Vprint_gensym \ + globals.f_Vprint_gensym +#define Vprint_length \ + globals.f_Vprint_length +#define Vprint_level \ + globals.f_Vprint_level +#define Vprint_number_table \ + globals.f_Vprint_number_table +#define Vprintable_chars \ + globals.f_Vprintable_chars +#define Vprocess_adaptive_read_buffering \ + globals.f_Vprocess_adaptive_read_buffering +#define Vprocess_coding_system_alist \ + globals.f_Vprocess_coding_system_alist +#define Vprocess_connection_type \ + globals.f_Vprocess_connection_type +#define Vprocess_environment \ + globals.f_Vprocess_environment +#define Vpurify_flag \ + globals.f_Vpurify_flag +#define Vquit_flag \ + globals.f_Vquit_flag +#define Vread_buffer_function \ + globals.f_Vread_buffer_function +#define Vread_circle \ + globals.f_Vread_circle +#define Vread_expression_map \ + globals.f_Vread_expression_map +#define Vread_symbol_positions_list \ + globals.f_Vread_symbol_positions_list +#define Vread_with_symbol_positions \ + globals.f_Vread_with_symbol_positions +#define Vrecenter_redisplay \ + globals.f_Vrecenter_redisplay +#define Vredisplay_end_trigger_functions \ + globals.f_Vredisplay_end_trigger_functions +#define Vredisplay_preemption_period \ + globals.f_Vredisplay_preemption_period +#define Vresize_mini_windows \ + globals.f_Vresize_mini_windows +#define Vresume_tty_functions \ + globals.f_Vresume_tty_functions +#define Vring_bell_function \ + globals.f_Vring_bell_function +#define Vsaved_region_selection \ + globals.f_Vsaved_region_selection +#define Vscalable_fonts_allowed \ + globals.f_Vscalable_fonts_allowed +#define Vscript_representative_chars \ + globals.f_Vscript_representative_chars +#define Vscroll_preserve_screen_position \ + globals.f_Vscroll_preserve_screen_position +#define Vsearch_spaces_regexp \ + globals.f_Vsearch_spaces_regexp +#define Vselect_active_regions \ + globals.f_Vselect_active_regions +#define Vselect_safe_coding_system_function \ + globals.f_Vselect_safe_coding_system_function +#define Vselection_coding_system \ + globals.f_Vselection_coding_system +#define Vselection_converter_alist \ + globals.f_Vselection_converter_alist +#define Vset_auto_coding_function \ + globals.f_Vset_auto_coding_function +#define Vshared_game_score_directory \ + globals.f_Vshared_game_score_directory +#define Vshell_file_name \ + globals.f_Vshell_file_name +#define Vshow_help_function \ + globals.f_Vshow_help_function +#define Vshow_trailing_whitespace \ + globals.f_Vshow_trailing_whitespace +#define Vsignal_hook_function \ + globals.f_Vsignal_hook_function +#define Vsource_directory \ + globals.f_Vsource_directory +#define Vspecial_event_map \ + globals.f_Vspecial_event_map +#define Vstack_trace_on_error \ + globals.f_Vstack_trace_on_error +#define Vstandard_display_table \ + globals.f_Vstandard_display_table +#define Vstandard_input \ + globals.f_Vstandard_input +#define Vstandard_output \ + globals.f_Vstandard_output +#define Vstandard_translation_table_for_decode \ + globals.f_Vstandard_translation_table_for_decode +#define Vstandard_translation_table_for_encode \ + globals.f_Vstandard_translation_table_for_encode +#define Vsuggest_key_bindings \ + globals.f_Vsuggest_key_bindings +#define Vsuspend_tty_functions \ + globals.f_Vsuspend_tty_functions +#define Vsystem_configuration \ + globals.f_Vsystem_configuration +#define Vsystem_configuration_options \ + globals.f_Vsystem_configuration_options +#define Vsystem_messages_locale \ + globals.f_Vsystem_messages_locale +#define Vsystem_name \ + globals.f_Vsystem_name +#define Vsystem_time_locale \ + globals.f_Vsystem_time_locale +#define Vsystem_type \ + globals.f_Vsystem_type +#define Vtemp_buffer_show_function \ + globals.f_Vtemp_buffer_show_function +#define Vtemporary_file_directory \ + globals.f_Vtemporary_file_directory +#define Vterminal_frame \ + globals.f_Vterminal_frame +#define Vtext_property_default_nonsticky \ + globals.f_Vtext_property_default_nonsticky +#define Vthis_command \ + globals.f_Vthis_command +#define Vthis_command_keys_shift_translated \ + globals.f_Vthis_command_keys_shift_translated +#define Vthis_original_command \ + globals.f_Vthis_original_command +#define Vthrow_on_input \ + globals.f_Vthrow_on_input +#define Vtimer_idle_list \ + globals.f_Vtimer_idle_list +#define Vtimer_list \ + globals.f_Vtimer_list +#define Vtool_bar_border \ + globals.f_Vtool_bar_border +#define Vtool_bar_button_margin \ + globals.f_Vtool_bar_button_margin +#define Vtool_bar_mode \ + globals.f_Vtool_bar_mode +#define Vtool_bar_separator_image_expression \ + globals.f_Vtool_bar_separator_image_expression +#define Vtool_bar_style \ + globals.f_Vtool_bar_style +#define Vtop_level \ + globals.f_Vtop_level +#define Vtransient_mark_mode \ + globals.f_Vtransient_mark_mode +#define Vtranslation_hash_table_vector \ + globals.f_Vtranslation_hash_table_vector +#define Vtranslation_table_for_input \ + globals.f_Vtranslation_table_for_input +#define Vtranslation_table_vector \ + globals.f_Vtranslation_table_vector +#define Vtruncate_partial_width_windows \ + globals.f_Vtruncate_partial_width_windows +#define Vtty_defined_color_alist \ + globals.f_Vtty_defined_color_alist +#define Vtty_erase_char \ + globals.f_Vtty_erase_char +#define Vundo_outer_limit \ + globals.f_Vundo_outer_limit +#define Vundo_outer_limit_function \ + globals.f_Vundo_outer_limit_function +#define Vunicode_category_table \ + globals.f_Vunicode_category_table +#define Vunread_command_events \ + globals.f_Vunread_command_events +#define Vunread_input_method_events \ + globals.f_Vunread_input_method_events +#define Vunread_post_input_method_events \ + globals.f_Vunread_post_input_method_events +#define Vuse_default_ascent \ + globals.f_Vuse_default_ascent +#define Vuser_full_name \ + globals.f_Vuser_full_name +#define Vuser_init_file \ + globals.f_Vuser_init_file +#define Vuser_login_name \ + globals.f_Vuser_login_name +#define Vuser_real_login_name \ + globals.f_Vuser_real_login_name +#define Vvalues \ + globals.f_Vvalues +#define Vvertical_centering_font_regexp \ + globals.f_Vvertical_centering_font_regexp +#define Vvoid_text_area_pointer \ + globals.f_Vvoid_text_area_pointer +#define Vw32_alt_is_meta \ + globals.f_Vw32_alt_is_meta +#define Vw32_apps_modifier \ + globals.f_Vw32_apps_modifier +#define Vw32_bdf_filename_alist \ + globals.f_Vw32_bdf_filename_alist +#define Vw32_capslock_is_shiftlock \ + globals.f_Vw32_capslock_is_shiftlock +#define Vw32_charset_info_alist \ + globals.f_Vw32_charset_info_alist +#define Vw32_color_map \ + globals.f_Vw32_color_map +#define Vw32_downcase_file_names \ + globals.f_Vw32_downcase_file_names +#define Vw32_enable_caps_lock \ + globals.f_Vw32_enable_caps_lock +#define Vw32_enable_num_lock \ + globals.f_Vw32_enable_num_lock +#define Vw32_enable_palette \ + globals.f_Vw32_enable_palette +#define Vw32_generate_fake_inodes \ + globals.f_Vw32_generate_fake_inodes +#define Vw32_get_true_file_attributes \ + globals.f_Vw32_get_true_file_attributes +#define Vw32_grab_focus_on_raise \ + globals.f_Vw32_grab_focus_on_raise +#define Vw32_lwindow_modifier \ + globals.f_Vw32_lwindow_modifier +#define Vw32_pass_alt_to_system \ + globals.f_Vw32_pass_alt_to_system +#define Vw32_pass_lwindow_to_system \ + globals.f_Vw32_pass_lwindow_to_system +#define Vw32_pass_rwindow_to_system \ + globals.f_Vw32_pass_rwindow_to_system +#define Vw32_phantom_key_code \ + globals.f_Vw32_phantom_key_code +#define Vw32_quote_process_args \ + globals.f_Vw32_quote_process_args +#define Vw32_recognize_altgr \ + globals.f_Vw32_recognize_altgr +#define Vw32_rwindow_modifier \ + globals.f_Vw32_rwindow_modifier +#define Vw32_scroll_lock_modifier \ + globals.f_Vw32_scroll_lock_modifier +#define Vw32_start_process_inherit_error_mode \ + globals.f_Vw32_start_process_inherit_error_mode +#define Vw32_start_process_share_console \ + globals.f_Vw32_start_process_share_console +#define Vw32_start_process_show_window \ + globals.f_Vw32_start_process_show_window +#define Vw32_swap_mouse_buttons \ + globals.f_Vw32_swap_mouse_buttons +#define Vwhere_is_preferred_modifier \ + globals.f_Vwhere_is_preferred_modifier +#define Vwindow_configuration_change_hook \ + globals.f_Vwindow_configuration_change_hook +#define Vwindow_point_insertion_type \ + globals.f_Vwindow_point_insertion_type +#define Vwindow_scroll_functions \ + globals.f_Vwindow_scroll_functions +#define Vwindow_size_change_functions \ + globals.f_Vwindow_size_change_functions +#define Vwindow_system_version \ + globals.f_Vwindow_system_version +#define Vwindow_text_change_functions \ + globals.f_Vwindow_text_change_functions +#define Vword_combining_categories \ + globals.f_Vword_combining_categories +#define Vword_separating_categories \ + globals.f_Vword_separating_categories +#define Vwrap_prefix \ + globals.f_Vwrap_prefix +#define Vwrite_region_annotate_functions \ + globals.f_Vwrite_region_annotate_functions +#define Vwrite_region_annotations_so_far \ + globals.f_Vwrite_region_annotations_so_far +#define Vwrite_region_post_annotation_function \ + globals.f_Vwrite_region_post_annotation_function +#define Vx_alt_keysym \ + globals.f_Vx_alt_keysym +#define Vx_bitmap_file_path \ + globals.f_Vx_bitmap_file_path +#define Vx_cursor_fore_pixel \ + globals.f_Vx_cursor_fore_pixel +#define Vx_hourglass_pointer_shape \ + globals.f_Vx_hourglass_pointer_shape +#define Vx_hyper_keysym \ + globals.f_Vx_hyper_keysym +#define Vx_keysym_table \ + globals.f_Vx_keysym_table +#define Vx_lost_selection_functions \ + globals.f_Vx_lost_selection_functions +#define Vx_max_tooltip_size \ + globals.f_Vx_max_tooltip_size +#define Vx_meta_keysym \ + globals.f_Vx_meta_keysym +#define Vx_mode_pointer_shape \ + globals.f_Vx_mode_pointer_shape +#define Vx_no_window_manager \ + globals.f_Vx_no_window_manager +#define Vx_nontext_pointer_shape \ + globals.f_Vx_nontext_pointer_shape +#define Vx_pixel_size_width_font_regexp \ + globals.f_Vx_pixel_size_width_font_regexp +#define Vx_pointer_shape \ + globals.f_Vx_pointer_shape +#define Vx_resource_class \ + globals.f_Vx_resource_class +#define Vx_resource_name \ + globals.f_Vx_resource_name +#define Vx_sensitive_text_pointer_shape \ + globals.f_Vx_sensitive_text_pointer_shape +#define Vx_sent_selection_functions \ + globals.f_Vx_sent_selection_functions +#define Vx_session_id \ + globals.f_Vx_session_id +#define Vx_session_previous_id \ + globals.f_Vx_session_previous_id +#define Vx_super_keysym \ + globals.f_Vx_super_keysym +#define Vx_toolkit_scroll_bars \ + globals.f_Vx_toolkit_scroll_bars +#define Vx_window_horizontal_drag_shape \ + globals.f_Vx_window_horizontal_drag_shape +#define Vxft_settings \ + globals.f_Vxft_settings +#define auto_raise_tool_bar_buttons_p \ + globals.f_auto_raise_tool_bar_buttons_p +#define auto_save_interval \ + globals.f_auto_save_interval +#define auto_window_vscroll_p \ + globals.f_auto_window_vscroll_p +#define automatic_hscrolling_p \ + globals.f_automatic_hscrolling_p +#define baud_rate \ + globals.f_baud_rate +#define byte_debug_flag \ + globals.f_byte_debug_flag +#define byte_metering_on \ + globals.f_byte_metering_on +#define cannot_suspend \ + globals.f_cannot_suspend +#define check_markers_debug_flag \ + globals.f_check_markers_debug_flag +#define coding_system_require_warning \ + globals.f_coding_system_require_warning +#define completion_ignore_case \ + globals.f_completion_ignore_case +#define cons_cells_consed \ + globals.f_cons_cells_consed +#define cross_disabled_images \ + globals.f_cross_disabled_images +#define cursor_in_echo_area \ + globals.f_cursor_in_echo_area +#define debug_end_pos \ + globals.f_debug_end_pos +#define debug_on_next_call \ + globals.f_debug_on_next_call +#define debug_on_quit \ + globals.f_debug_on_quit +#define debugger_may_continue \ + globals.f_debugger_may_continue +#define delete_by_moving_to_trash \ + globals.f_delete_by_moving_to_trash +#define delete_exited_processes \ + globals.f_delete_exited_processes +#define display_hourglass_p \ + globals.f_display_hourglass_p +#define do_mouse_tracking \ + globals.f_do_mouse_tracking +#define dos_codepage \ + globals.f_dos_codepage +#define dos_country_code \ + globals.f_dos_country_code +#define dos_decimal_point \ + globals.f_dos_decimal_point +#define dos_hyper_key \ + globals.f_dos_hyper_key +#define dos_keyboard_layout \ + globals.f_dos_keyboard_layout +#define dos_keypad_mode \ + globals.f_dos_keypad_mode +#define dos_super_key \ + globals.f_dos_super_key +#define dos_timezone_offset \ + globals.f_dos_timezone_offset +#define double_click_fuzz \ + globals.f_double_click_fuzz +#define emacs_scroll_step \ + globals.f_emacs_scroll_step +#define enable_recursive_minibuffers \ + globals.f_enable_recursive_minibuffers +#define eol_mnemonic_dos \ + globals.f_eol_mnemonic_dos +#define eol_mnemonic_mac \ + globals.f_eol_mnemonic_mac +#define eol_mnemonic_undecided \ + globals.f_eol_mnemonic_undecided +#define eol_mnemonic_unix \ + globals.f_eol_mnemonic_unix +#define executing_kbd_macro_index \ + globals.f_executing_kbd_macro_index +#define extra_keyboard_modifiers \ + globals.f_extra_keyboard_modifiers +#define floats_consed \ + globals.f_floats_consed +#define focus_follows_mouse \ + globals.f_focus_follows_mouse +#define force_load_messages \ + globals.f_force_load_messages +#define garbage_collection_messages \ + globals.f_garbage_collection_messages +#define gc_cons_threshold \ + globals.f_gc_cons_threshold +#define gcs_done \ + globals.f_gcs_done +#define highlight_nonselected_windows \ + globals.f_highlight_nonselected_windows +#define history_delete_duplicates \ + globals.f_history_delete_duplicates +#define hscroll_margin \ + globals.f_hscroll_margin +#define indent_tabs_mode \ + globals.f_indent_tabs_mode +#define inherit_process_coding_system \ + globals.f_inherit_process_coding_system +#define inhibit_eol_conversion \ + globals.f_inhibit_eol_conversion +#define inhibit_eval_during_redisplay \ + globals.f_inhibit_eval_during_redisplay +#define inhibit_free_realized_faces \ + globals.f_inhibit_free_realized_faces +#define inhibit_iso_escape_detection \ + globals.f_inhibit_iso_escape_detection +#define inhibit_load_charset_map \ + globals.f_inhibit_load_charset_map +#define inhibit_local_menu_bar_menus \ + globals.f_inhibit_local_menu_bar_menus +#define inhibit_menubar_update \ + globals.f_inhibit_menubar_update +#define inhibit_modification_hooks \ + globals.f_inhibit_modification_hooks +#define inhibit_null_byte_detection \ + globals.f_inhibit_null_byte_detection +#define inhibit_try_cursor_movement \ + globals.f_inhibit_try_cursor_movement +#define inhibit_try_window_id \ + globals.f_inhibit_try_window_id +#define inhibit_try_window_reusing \ + globals.f_inhibit_try_window_reusing +#define inhibit_x_resources \ + globals.f_inhibit_x_resources +#define intervals_consed \ + globals.f_intervals_consed +#define inverse_video \ + globals.f_inverse_video +#define last_command_event \ + globals.f_last_command_event +#define last_input_event \ + globals.f_last_input_event +#define last_nonmenu_event \ + globals.f_last_nonmenu_event +#define line_number_display_limit_width \ + globals.f_line_number_display_limit_width +#define load_convert_to_unibyte \ + globals.f_load_convert_to_unibyte +#define load_dangerous_libraries \ + globals.f_load_dangerous_libraries +#define load_force_doc_strings \ + globals.f_load_force_doc_strings +#define load_in_progress \ + globals.f_load_in_progress +#define make_cursor_line_fully_visible_p \ + globals.f_make_cursor_line_fully_visible_p +#define max_lisp_eval_depth \ + globals.f_max_lisp_eval_depth +#define max_specpdl_size \ + globals.f_max_specpdl_size +#define menu_prompt_more_char \ + globals.f_menu_prompt_more_char +#define menu_prompting \ + globals.f_menu_prompting +#define message_truncate_lines \ + globals.f_message_truncate_lines +#define meta_prefix_char \ + globals.f_meta_prefix_char +#define minibuffer_allow_text_properties \ + globals.f_minibuffer_allow_text_properties +#define minibuffer_auto_raise \ + globals.f_minibuffer_auto_raise +#define misc_objects_consed \ + globals.f_misc_objects_consed +#define mode_line_in_non_selected_windows \ + globals.f_mode_line_in_non_selected_windows +#define mode_line_inverse_video \ + globals.f_mode_line_inverse_video +#define multibyte_syntax_as_symbol \ + globals.f_multibyte_syntax_as_symbol +#define multiple_frames \ + globals.f_multiple_frames +#define next_screen_context_lines \ + globals.f_next_screen_context_lines +#define no_redraw_on_reenter \ + globals.f_no_redraw_on_reenter +#define noninteractive1 \ + globals.f_noninteractive1 +#define num_input_keys \ + globals.f_num_input_keys +#define num_nonmacro_input_events \ + globals.f_num_nonmacro_input_events +#define open_paren_in_column_0_is_defun_start \ + globals.f_open_paren_in_column_0_is_defun_start +#define overline_margin \ + globals.f_overline_margin +#define parse_sexp_ignore_comments \ + globals.f_parse_sexp_ignore_comments +#define parse_sexp_lookup_properties \ + globals.f_parse_sexp_lookup_properties +#define polling_period \ + globals.f_polling_period +#define print_escape_multibyte \ + globals.f_print_escape_multibyte +#define print_escape_newlines \ + globals.f_print_escape_newlines +#define print_escape_nonascii \ + globals.f_print_escape_nonascii +#define print_quoted \ + globals.f_print_quoted +#define pure_bytes_used \ + globals.f_pure_bytes_used +#define read_buffer_completion_ignore_case \ + globals.f_read_buffer_completion_ignore_case +#define redisplay_dont_pause \ + globals.f_redisplay_dont_pause +#define scroll_conservatively \ + globals.f_scroll_conservatively +#define scroll_margin \ + globals.f_scroll_margin +#define string_chars_consed \ + globals.f_string_chars_consed +#define strings_consed \ + globals.f_strings_consed +#define symbols_consed \ + globals.f_symbols_consed +#define system_uses_terminfo \ + globals.f_system_uses_terminfo +#define tool_bar_button_relief \ + globals.f_tool_bar_button_relief +#define tool_bar_max_label_size \ + globals.f_tool_bar_max_label_size +#define underline_minimum_offset \ + globals.f_underline_minimum_offset +#define undo_inhibit_record_point \ + globals.f_undo_inhibit_record_point +#define undo_limit \ + globals.f_undo_limit +#define undo_strong_limit \ + globals.f_undo_strong_limit +#define unibyte_display_via_language_environment \ + globals.f_unibyte_display_via_language_environment +#define unread_command_char \ + globals.f_unread_command_char +#define use_dialog_box \ + globals.f_use_dialog_box +#define use_file_dialog \ + globals.f_use_file_dialog +#define use_system_font \ + globals.f_use_system_font +#define vector_cells_consed \ + globals.f_vector_cells_consed +#define visible_bell \ + globals.f_visible_bell +#define visible_cursor \ + globals.f_visible_cursor +#define w32_ansi_code_page \ + globals.f_w32_ansi_code_page +#define w32_enable_synthesized_fonts \ + globals.f_w32_enable_synthesized_fonts +#define w32_mouse_button_tolerance \ + globals.f_w32_mouse_button_tolerance +#define w32_mouse_move_interval \ + globals.f_w32_mouse_move_interval +#define w32_num_mouse_buttons \ + globals.f_w32_num_mouse_buttons +#define w32_pass_extra_mouse_buttons_to_system \ + globals.f_w32_pass_extra_mouse_buttons_to_system +#define w32_pass_multimedia_buttons_to_system \ + globals.f_w32_pass_multimedia_buttons_to_system +#define w32_pipe_read_delay \ + globals.f_w32_pipe_read_delay +#define w32_quit_key \ + globals.f_w32_quit_key +#define w32_strict_fontnames \ + globals.f_w32_strict_fontnames +#define w32_strict_painting \ + globals.f_w32_strict_painting +#define w32_use_full_screen_buffer \ + globals.f_w32_use_full_screen_buffer +#define w32_use_visible_system_caret \ + globals.f_w32_use_visible_system_caret +#define window_min_height \ + globals.f_window_min_height +#define window_min_width \ + globals.f_window_min_width +#define words_include_escapes \ + globals.f_words_include_escapes +#define write_region_inhibit_fsync \ + globals.f_write_region_inhibit_fsync +#define x_gtk_file_dialog_help_text \ + globals.f_x_gtk_file_dialog_help_text +#define x_gtk_show_hidden_files \ + globals.f_x_gtk_show_hidden_files +#define x_gtk_use_old_file_dialog \ + globals.f_x_gtk_use_old_file_dialog +#define x_gtk_use_system_tooltips \ + globals.f_x_gtk_use_system_tooltips +#define x_gtk_whole_detached_tool_bar \ + globals.f_x_gtk_whole_detached_tool_bar +#define x_mouse_click_focus_ignore_position \ + globals.f_x_mouse_click_focus_ignore_position +#define x_selection_timeout \ + globals.f_x_selection_timeout +#define x_stretch_cursor_p \ + globals.f_x_stretch_cursor_p +#define x_underline_at_descent_line \ + globals.f_x_underline_at_descent_line +#define x_use_underline_position_properties \ + globals.f_x_use_underline_position_properties