comparison src/fileio.c @ 112364:42e22c4f06b7

Move all DEFVAR'd globals into a structure -- threading infrastructure * globals.h: New file. * xterm.h (Vx_pixel_size_width_font_regexp): Remove declaration. * window.h (Vinitial_window_system, Vminibuf_scroll_window) (Vwindow_system_version): Remove declaration. * w32term.h (Vw32_enable_palette) (Vx_pixel_size_width_font_regexp): Remove declaration. * w32menu.c (Voverriding_local_map) (Voverriding_local_map_menu_flag): Remove declaration. * w32inevt.c (Vw32_alt_is_meta, Vw32_apps_modifier) (Vw32_capslock_is_shiftlock, Vw32_enable_caps_lock) (Vw32_enable_num_lock, Vw32_lwindow_modifier) (Vw32_pass_lwindow_to_system, Vw32_pass_rwindow_to_system) (Vw32_phantom_key_code, Vw32_recognize_altgr) (Vw32_rwindow_modifier, Vw32_scroll_lock_modifier) (w32_use_full_screen_buffer): Remove declaration. * w32.c (Vsystem_configuration, Vw32_downcase_file_names) (Vw32_generate_fake_inodes, Vw32_get_true_file_attributes) (w32_num_mouse_buttons, w32_pipe_read_delay): Remove declaration. * termopts.h (Vtruncate_partial_width_windows, inverse_video) (no_redraw_on_reenter, visible_bell): Remove declaration. * sysdep.c (Vsystem_name): Remove declaration. * syntax.h (parse_sexp_lookup_properties): Remove declaration. * menu.h (Vmenu_updating_frame): Remove declaration. * macros.h (Vexecuting_kbd_macro, executing_kbd_macro_index): Remove declaration. * lisp.h (Vafter_init_time, Vafter_load_alist) (Vauto_save_list_file_name, Vbefore_init_time, Vcommand_history) (Vcompletion_regexp_list, Vcurrent_load_list) (Vcurrent_prefix_arg, Vdata_directory, Vdebug_on_error) (Vdoc_directory, Vdoc_file_name, Vdynamic_library_alist) (Vexec_directory, Vexec_path, Vexec_suffixes) (Vface_font_rescale_alist, Vface_ignored_fonts, Vfeatures) (Vhelp_form, Vhistory_length, Vinhibit_field_text_motion) (Vinhibit_quit, Vinhibit_read_only, Vinhibit_redisplay) (Vinstallation_directory, Vinvocation_directory) (Vinvocation_name, Vload_file_rep_suffixes, Vload_history) (Vload_suffixes, Vmark_even_if_inactive, Vmemory_full) (Vmessage_log_max, Vobarray, Vprint_length, Vprint_level) (Vpurify_flag, Vquit_flag, Vsaved_region_selection) (Vscalable_fonts_allowed, Vselect_active_regions) (Vshell_file_name, Vstandard_input, Vstandard_output) (Vsystem_name, Vtemporary_file_directory, Vthrow_on_input) (Vtop_level, Vtty_erase_char, Vundo_outer_limit) (Vuser_login_name, Vwindow_scroll_functions) (Vwindow_system_version, Vx_no_window_manager) (Vx_resource_class, Vx_resource_name, baud_rate) (completion_ignore_case, debug_on_next_call, gc_cons_threshold) (history_delete_duplicates, inhibit_x_resources) (last_nonmenu_event, load_in_progress, max_specpdl_size) (minibuffer_auto_raise, print_escape_newlines, scroll_margin) (use_dialog_box, use_file_dialog): Remove declaration. Include globals.h. * keymap.h (Voverriding_local_map) (Voverriding_local_map_menu_flag, meta_prefix_char): Remove declaration. * keyboard.h (Vdouble_click_time, Vfunction_key_map) (Vinput_method_function, Vkey_translation_map) (Vlucid_menu_bar_dirty_flag, Vthis_original_command) (do_mouse_tracking, extra_keyboard_modifiers) (num_nonmacro_input_events): Remove declaration. * intervals.h (Vchar_property_alias_alist) (Vdefault_text_properties, Vinhibit_point_motion_hooks) (Vtext_property_default_nonsticky): Remove declaration. * gtkutil.h (x_gtk_file_dialog_help_text) (x_gtk_show_hidden_files, x_gtk_use_old_file_dialog) (x_gtk_whole_detached_tool_bar): Remove declaration. * frame.h (Vdefault_frame_alist, Vframe_alpha_lower_limit) (Vmenu_bar_mode, Vmouse_highlight, Vterminal_frame) (Vtool_bar_mode, Vx_resource_class, Vx_resource_name) (focus_follows_mouse): Remove declaration. * fontset.h (Valternate_fontname_alist, Vfontset_alias_alist) (Vignore_relative_composition, Votf_script_alist) (Vuse_default_ascent, Vvertical_centering_font_regexp): Remove declaration. * font.h (Vfont_log): Remove declaration. * dosfns.h (Vdos_display_scancodes, Vdos_version) (Vdos_windows_version, dos_codepage, dos_country_code) (dos_decimal_point, dos_hyper_key, dos_keyboard_layout) (dos_keypad_mode, dos_super_key, dos_timezone_offset): Remove declaration. * disptab.h (Vglyph_table, Vstandard_display_table): Remove declaration. * dispextern.h (Vface_remapping_alist, Vglyphless_char_display) (Vmouse_autoselect_window, Voverflow_newline_into_fringe) (Vshow_trailing_whitespace, Vtool_bar_button_margin) (Vtool_bar_style, cursor_in_echo_area, display_hourglass_p) (inverse_video, mode_line_in_non_selected_windows) (tool_bar_button_relief, tool_bar_max_label_size) (underline_minimum_offset) (unibyte_display_via_language_environment, x_stretch_cursor_p): Remove declaration. * composite.h (Vauto_composition_function) (Vcomposition_function_table): Remove declaration. * commands.h (Vexecuting_kbd_macro) (Vminibuffer_local_completion_map) (Vminibuffer_local_filename_completion_map) (Vminibuffer_local_filename_must_match_map) (Vminibuffer_local_map, Vminibuffer_local_must_match_map) (Vminibuffer_local_ns_map, Vthis_command) (Vunread_command_events, cursor_in_echo_area) (last_command_event, last_nonmenu_event, unread_command_char): Remove declaration. * coding.h (Vcoding_system_for_read, Vcoding_system_for_write) (Vdefault_file_name_coding_system) (Vdefault_process_coding_system, Vfile_name_coding_system) (Vlast_coding_system_used, Vlocale_coding_system) (Vselect_safe_coding_system_function) (Vtranslation_table_for_input, coding_system_require_warning) (eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided) (eol_mnemonic_unix, inherit_process_coding_system): Remove declaration. * charset.h (Vcharset_list, Vcurrent_iso639_language): Remove declaration. * character.h (Vauto_fill_chars, Vchar_direction_table) (Vchar_script_table, Vchar_width_table, Vprintable_chars) (Vscript_representative_chars, Vtranslation_table_vector) (Vunicode_category_table): Remove declaration. * ccl.h (Vfont_ccl_encoder_alist): Remove declaration. * buffer.h (Vafter_change_functions, Vbefore_change_functions) (Vdeactivate_mark, Vfirst_change_hook, Vtransient_mark_mode) (inhibit_modification_hooks): Remove declaration. * xterm.c (syms_of_xterm): Update. (Vx_alt_keysym, Vx_hyper_keysym, Vx_keysym_table) (Vx_meta_keysym, Vx_super_keysym, Vx_toolkit_scroll_bars) (x_mouse_click_focus_ignore_position) (x_underline_at_descent_line) (x_use_underline_position_properties): Remove. * xsmfns.c (syms_of_xsmfns): Update. (Vx_session_id, Vx_session_previous_id): Remove. * xsettings.c (syms_of_xsettings): Update. (Vxft_settings, use_system_font): Remove. * xselect.c (syms_of_xselect): Update. (Vselection_converter_alist, Vx_lost_selection_functions) (Vx_sent_selection_functions, x_selection_timeout): Remove. * xfns.c (syms_of_xfns): Update. (Vgtk_version_string, Vmotif_version_string) (Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape) (Vx_max_tooltip_size, Vx_mode_pointer_shape) (Vx_no_window_manager, Vx_nontext_pointer_shape) (Vx_pixel_size_width_font_regexp, Vx_pointer_shape) (Vx_sensitive_text_pointer_shape) (Vx_window_horizontal_drag_shape, x_gtk_file_dialog_help_text) (x_gtk_show_hidden_files, x_gtk_use_old_file_dialog) (x_gtk_use_system_tooltips, x_gtk_whole_detached_tool_bar): Remove. * xfaces.c (syms_of_xfaces): Update. (Vface_default_stipple, Vface_font_rescale_alist) (Vface_ignored_fonts, Vface_new_frame_defaults) (Vface_remapping_alist, Vfont_list_limit) (Vscalable_fonts_allowed, Vtty_defined_color_alist): Remove. * xdisp.c (syms_of_xdisp): Update. (Vauto_resize_tool_bars, Vblink_cursor_alist) (Vdisplay_pixels_per_inch, Vfontification_functions) (Vframe_title_format, Vglobal_mode_string) (Vglyphless_char_display, Vhourglass_delay, Vhscroll_step) (Vicon_title_format, Vinhibit_redisplay) (Vline_number_display_limit, Vline_prefix) (Vmax_mini_window_height, Vmenu_bar_update_hook) (Vmenu_updating_frame, Vmessage_log_max) (Vmouse_autoselect_window, Vnobreak_char_display) (Voverlay_arrow_position, Voverlay_arrow_string) (Voverlay_arrow_variable_list, Vredisplay_end_trigger_functions) (Vresize_mini_windows, Vshow_trailing_whitespace) (Vtool_bar_border, Vtool_bar_button_margin, Vtool_bar_style) (Vtruncate_partial_width_windows, Vvoid_text_area_pointer) (Vwindow_scroll_functions, Vwindow_size_change_functions) (Vwindow_text_change_functions, Vwrap_prefix) (auto_raise_tool_bar_buttons_p, automatic_hscrolling_p) (debug_end_pos, display_hourglass_p, emacs_scroll_step) (highlight_nonselected_windows, hscroll_margin) (inhibit_eval_during_redisplay, inhibit_free_realized_faces) (inhibit_menubar_update, inhibit_try_cursor_movement) (inhibit_try_window_id, inhibit_try_window_reusing) (line_number_display_limit_width) (make_cursor_line_fully_visible_p, message_truncate_lines) (mode_line_inverse_video, multiple_frames, overline_margin) (scroll_conservatively, scroll_margin, tool_bar_button_relief) (tool_bar_max_label_size, underline_minimum_offset) (unibyte_display_via_language_environment, x_stretch_cursor_p): Remove. * window.c (syms_of_window): Update. (Vminibuf_scroll_window, Vother_window_scroll_buffer) (Vrecenter_redisplay, Vscroll_preserve_screen_position) (Vtemp_buffer_show_function, Vwindow_configuration_change_hook) (Vwindow_point_insertion_type, auto_window_vscroll_p) (mode_line_in_non_selected_windows, next_screen_context_lines) (window_min_height, window_min_width): Remove. (scroll_margin): Remove declaration. * w32term.c (syms_of_w32term): Update. (Vw32_capslock_is_shiftlock, Vw32_grab_focus_on_raise) (Vw32_recognize_altgr, Vw32_swap_mouse_buttons) (Vx_toolkit_scroll_bars, w32_num_mouse_buttons) (w32_use_visible_system_caret, x_underline_at_descent_line) (x_use_underline_position_properties): Remove. (Vcommand_line_args, Vsystem_name, extra_keyboard_modifiers): Remove declaration. * w32select.c (syms_of_w32select): Update. (Vnext_selection_coding_system, Vselection_coding_system): Remove. * w32proc.c (syms_of_ntproc): Update. (Vw32_downcase_file_names, Vw32_generate_fake_inodes) (Vw32_get_true_file_attributes, Vw32_quote_process_args) (Vw32_start_process_inherit_error_mode) (Vw32_start_process_share_console) (Vw32_start_process_show_window, w32_pipe_read_delay): Remove. (Vsystem_name): Remove declaration. * w32font.c (syms_of_w32font): Update. (Vw32_charset_info_alist): Remove. * w32fns.c (globals_of_w32fns, syms_of_w32fns): Update. (Vw32_alt_is_meta, Vw32_apps_modifier, Vw32_bdf_filename_alist) (Vw32_color_map, Vw32_enable_caps_lock, Vw32_enable_num_lock) (Vw32_enable_palette, Vw32_lwindow_modifier) (Vw32_pass_alt_to_system, Vw32_pass_lwindow_to_system) (Vw32_pass_rwindow_to_system, Vw32_phantom_key_code) (Vw32_rwindow_modifier, Vw32_scroll_lock_modifier) (Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape) (Vx_max_tooltip_size, Vx_mode_pointer_shape) (Vx_no_window_manager, Vx_nontext_pointer_shape) (Vx_pixel_size_width_font_regexp, Vx_pointer_shape) (Vx_sensitive_text_pointer_shape) (Vx_window_horizontal_drag_shape, w32_ansi_code_page) (w32_enable_synthesized_fonts, w32_mouse_button_tolerance) (w32_mouse_move_interval) (w32_pass_extra_mouse_buttons_to_system) (w32_pass_multimedia_buttons_to_system, w32_quit_key) (w32_strict_fontnames, w32_strict_painting): Remove. (Vhourglass_delay, Vmenu_bar_mode, Vtool_bar_mode) (Vw32_recognize_altgr, Vwindow_system_version) (w32_num_mouse_buttons, w32_use_visible_system_caret): Remove declaration. * w32console.c (syms_of_ntterm): Update. (w32_use_full_screen_buffer): Remove. (Vtty_defined_color_alist): Remove declaration. * w16select.c (syms_of_win16select): Update. (Vnext_selection_coding_system, Vselection_coding_system): Remove. * undo.c (syms_of_undo): Update. (Vundo_outer_limit, Vundo_outer_limit_function) (undo_inhibit_record_point, undo_limit, undo_strong_limit): Remove. * textprop.c (syms_of_textprop): Update. (Vchar_property_alias_alist, Vdefault_text_properties) (Vinhibit_point_motion_hooks, Vtext_property_default_nonsticky): Remove. * terminal.c (syms_of_terminal): Update. (Vdelete_terminal_functions, Vring_bell_function): Remove. * term.c (syms_of_term): Update. (Vresume_tty_functions, Vsuspend_tty_functions) (no_redraw_on_reenter, system_uses_terminfo, visible_cursor): Remove. * syntax.c (syms_of_syntax): Update. (Vfind_word_boundary_function_table, multibyte_syntax_as_symbol) (open_paren_in_column_0_is_defun_start) (parse_sexp_ignore_comments, parse_sexp_lookup_properties) (words_include_escapes): Remove. * search.c (syms_of_search): Update. (Vinhibit_changing_match_data, Vsearch_spaces_regexp): Remove. * process.c (syms_of_process): Update. (Vprocess_adaptive_read_buffering, Vprocess_connection_type) (delete_exited_processes): Remove. * print.c (syms_of_print): Update. (Vfloat_output_format, Vprint_charset_text_property) (Vprint_circle, Vprint_continuous_numbering, Vprint_gensym) (Vprint_length, Vprint_level, Vprint_number_table) (Vstandard_output, print_escape_multibyte) (print_escape_newlines, print_escape_nonascii, print_quoted): Remove. * msdos.c (syms_of_msdos): Update. (Vdos_unsupported_char_glyph): Remove. (unibyte_display_via_language_environment): Remove declaration. * minibuf.c (syms_of_minibuf): Update. (Vcompletion_regexp_list, Vhistory_add_new_input) (Vhistory_length, Vminibuffer_completing_file_name) (Vminibuffer_completion_confirm) (Vminibuffer_completion_predicate, Vminibuffer_completion_table) (Vminibuffer_exit_hook, Vminibuffer_help_form) (Vminibuffer_history_position, Vminibuffer_history_variable) (Vminibuffer_prompt_properties, Vminibuffer_setup_hook) (Vread_buffer_function, Vread_expression_map) (completion_ignore_case, enable_recursive_minibuffers) (history_delete_duplicates, minibuffer_allow_text_properties) (minibuffer_auto_raise, read_buffer_completion_ignore_case): Remove. * marker.c (syms_of_marker): Update. (byte_debug_flag): Remove. * macros.c (syms_of_macros): Update. (Vexecuting_kbd_macro, executing_kbd_macro_index): Remove. * lread.c (syms_of_lread): Update. (Vafter_load_alist, Vbyte_boolean_vars) (Vbytecomp_version_regexp, Vcurrent_load_list) (Veval_buffer_list, Vload_file_name, Vload_file_rep_suffixes) (Vload_history, Vload_path, Vload_read_function) (Vload_source_file_function, Vload_suffixes, Vobarray) (Vold_style_backquotes, Vpreloaded_file_list, Vread_circle) (Vread_symbol_positions_list, Vread_with_symbol_positions) (Vsource_directory, Vstandard_input, Vuser_init_file, Vvalues) (force_load_messages, load_convert_to_unibyte) (load_dangerous_libraries, load_force_doc_strings) (load_in_progress): Remove. * keymap.c (syms_of_keymap): Update. (Vdefine_key_rebound_commands, Vemulation_mode_map_alists) (Vminibuffer_local_completion_map) (Vminibuffer_local_filename_completion_map) (Vminibuffer_local_filename_must_match_map) (Vminibuffer_local_map, Vminibuffer_local_must_match_map) (Vminibuffer_local_ns_map, Vminor_mode_map_alist) (Vminor_mode_overriding_map_alist, Vwhere_is_preferred_modifier): Remove. * keyboard.c (syms_of_keyboard): Update. (Vauto_save_timeout, Vcommand_error_function) (Vcommand_hook_internal, Vdeactivate_mark) (Vdeferred_action_function, Vdeferred_action_list) (Vdisable_point_adjustment, Vdouble_click_time) (Vecho_keystrokes, Venable_disabled_menus_and_buttons) (Vfunction_key_map, Vglobal_disable_point_adjustment) (Vhelp_char, Vhelp_event_list, Vhelp_form) (Vinput_method_function, Vinput_method_previous_message) (Vkey_translation_map, Vlast_event_frame) (Vlucid_menu_bar_dirty_flag, Vmenu_bar_final_items) (Vminibuffer_message_timeout, Voverriding_local_map) (Voverriding_local_map_menu_flag, Vpost_command_hook) (Vpre_command_hook, Vprefix_help_command) (Vsaved_region_selection, Vselect_active_regions) (Vshow_help_function, Vspecial_event_map, Vsuggest_key_bindings) (Vthis_command, Vthis_command_keys_shift_translated) (Vthis_original_command, Vthrow_on_input, Vtimer_idle_list) (Vtimer_list, Vtool_bar_separator_image_expression, Vtop_level) (Vtty_erase_char, Vunread_command_events) (Vunread_input_method_events, Vunread_post_input_method_events) (auto_save_interval, cannot_suspend, do_mouse_tracking) (double_click_fuzz, extra_keyboard_modifiers) (inhibit_local_menu_bar_menus, last_command_event) (last_input_event, last_nonmenu_event, menu_prompt_more_char) (menu_prompting, meta_prefix_char, num_input_keys) (num_nonmacro_input_events, polling_period, unread_command_char): Remove. * insdel.c (syms_of_insdel): Update. (Vcombine_after_change_calls, check_markers_debug_flag): Remove. * indent.c (syms_of_indent): Update. (indent_tabs_mode): Remove. * image.c (syms_of_image): Update. (Vimage_cache_eviction_delay, Vimage_types) (Vimagemagick_render_type, Vmax_image_size, Vx_bitmap_file_path) (cross_disabled_images): Remove. * fringe.c (syms_of_fringe): Update. (Vfringe_bitmaps, Voverflow_newline_into_fringe): Remove. * frame.c (syms_of_frame): Update. (Vdefault_frame_alist, Vdefault_frame_scroll_bars) (Vdelete_frame_functions, Vframe_alpha_lower_limit) (Vmake_pointer_invisible, Vmenu_bar_mode, Vmouse_highlight) (Vmouse_position_function, Vterminal_frame, Vtool_bar_mode) (Vx_resource_class, Vx_resource_name, focus_follows_mouse): Remove. * fontset.c (syms_of_fontset): Update. (Valternate_fontname_alist, Vfont_encoding_charset_alist) (Vfontset_alias_alist, Vignore_relative_composition) (Votf_script_alist, Vuse_default_ascent) (Vvertical_centering_font_regexp): Remove. * font.c (syms_of_font): Update. (Vfont_encoding_alist, Vfont_log, Vfont_slant_table) (Vfont_weight_table, Vfont_width_table): Remove. * fns.c (syms_of_fns): Update. (Vfeatures, use_dialog_box, use_file_dialog): Remove. * filelock.c (syms_of_filelock): Update. (Vtemporary_file_directory): Remove. * fileio.c (syms_of_fileio): Update. (Vafter_insert_file_functions, Vauto_save_include_big_deletions) (Vauto_save_list_file_name, Vauto_save_visited_file_name) (Vdefault_file_name_coding_system, Vfile_name_coding_system) (Vfile_name_handler_alist, Vinhibit_file_name_handlers) (Vinhibit_file_name_operation, Vset_auto_coding_function) (Vwrite_region_annotate_functions) (Vwrite_region_annotations_so_far) (Vwrite_region_post_annotation_function) (delete_by_moving_to_trash, write_region_inhibit_fsync): Remove. (Vw32_get_true_file_attributes): Remove declaration. * eval.c (syms_of_eval): Update. (Vdebug_ignored_errors, Vdebug_on_error, Vdebug_on_signal) (Vdebugger, Vinhibit_quit, Vmacro_declaration_function) (Vquit_flag, Vsignal_hook_function, Vstack_trace_on_error) (debug_on_next_call, debug_on_quit, debugger_may_continue) (max_lisp_eval_depth, max_specpdl_size): Remove. * emacs.c (syms_of_emacs): Update. (Vafter_init_time, Vbefore_init_time, Vcommand_line_args) (Vdynamic_library_alist, Vemacs_copyright, Vemacs_version) (Vinstallation_directory, Vinvocation_directory) (Vinvocation_name, Vkill_emacs_hook, Vpath_separator) (Vprevious_system_messages_locale, Vprevious_system_time_locale) (Vsystem_configuration, Vsystem_configuration_options) (Vsystem_messages_locale, Vsystem_time_locale, Vsystem_type) (inhibit_x_resources, noninteractive1): Remove. * editfns.c (syms_of_editfns): Update. (Vbuffer_access_fontified_property) (Vbuffer_access_fontify_functions, Vinhibit_field_text_motion) (Voperating_system_release, Vsystem_name, Vuser_full_name) (Vuser_login_name, Vuser_real_login_name): Remove. * dosfns.c (syms_of_dosfns): Update. (Vdos_display_scancodes, Vdos_version, Vdos_windows_version) (dos_codepage, dos_country_code, dos_decimal_point) (dos_hyper_key, dos_keyboard_layout, dos_keypad_mode) (dos_super_key, dos_timezone_offset): Remove. * doc.c (syms_of_doc): Update. (Vbuild_files, Vdoc_file_name): Remove. * dispnew.c (syms_of_display): Update. (Vglyph_table, Vinitial_window_system) (Vredisplay_preemption_period, Vstandard_display_table) (Vwindow_system_version, baud_rate, cursor_in_echo_area) (inverse_video, redisplay_dont_pause, visible_bell): Remove. * dired.c (syms_of_dired): Update. (Vcompletion_ignored_extensions): Remove. (Vw32_get_true_file_attributes): Remove declaration. * dbusbind.c (syms_of_dbusbind): Update. (Vdbus_debug, Vdbus_registered_buses) (Vdbus_registered_objects_table): Remove. * data.c (syms_of_data): Update. (Vmost_negative_fixnum, Vmost_positive_fixnum): Remove. * composite.c (syms_of_composite): Update. (Vauto_composition_function, Vauto_composition_mode) (Vcompose_chars_after_function, Vcomposition_function_table): Remove. * coding.c (syms_of_coding): Update. (Vcharset_revision_table, Vcoding_category_list) (Vcoding_system_alist, Vcoding_system_for_read) (Vcoding_system_for_write, Vcoding_system_list) (Vdefault_process_coding_system, Venable_character_translation) (Vfile_coding_system_alist, Vlast_code_conversion_error) (Vlast_coding_system_used, Vlatin_extra_code_table) (Vlocale_coding_system, Vnetwork_coding_system_alist) (Vprocess_coding_system_alist) (Vselect_safe_coding_system_function) (Vstandard_translation_table_for_decode) (Vstandard_translation_table_for_encode) (Vtranslation_table_for_input, coding_system_require_warning) (eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided) (eol_mnemonic_unix, inherit_process_coding_system) (inhibit_eol_conversion, inhibit_iso_escape_detection) (inhibit_null_byte_detection): Remove. * cmds.c (syms_of_cmds): Update. (Vpost_self_insert_hook): Remove. * charset.c (syms_of_charset): Update. (Vcharset_list, Vcharset_map_path, Vcurrent_iso639_language) (inhibit_load_charset_map): Remove. * character.c (syms_of_character): Update. (Vauto_fill_chars, Vchar_direction_table, Vchar_script_table) (Vchar_width_table, Vprintable_chars) (Vscript_representative_chars, Vtranslation_table_vector) (Vunicode_category_table): Remove. * ccl.c (syms_of_ccl): Update. (Vcode_conversion_map_vector, Vfont_ccl_encoder_alist) (Vtranslation_hash_table_vector): Remove. * category.c (syms_of_category): Update. (Vword_combining_categories, Vword_separating_categories): Remove. * callproc.c (syms_of_callproc): Update. (Vconfigure_info_directory, Vdata_directory, Vdoc_directory) (Vexec_directory, Vexec_path, Vexec_suffixes) (Vinitial_environment, Vprocess_environment) (Vshared_game_score_directory, Vshell_file_name): Remove. * callint.c (syms_of_callint): Update. (Vcommand_debug_status, Vcommand_history, Vcurrent_prefix_arg) (Vmark_even_if_inactive, Vmouse_leave_buffer_hook): Remove. * bytecode.c (syms_of_bytecode): Update. (Vbyte_code_meter, byte_metering_on): Remove. * buffer.c (syms_of_buffer): Update. (Vafter_change_functions, Vbefore_change_functions) (Vchange_major_mode_hook, Vfirst_change_hook) (Vinhibit_read_only, Vkill_buffer_query_functions) (Vtransient_mark_mode, inhibit_modification_hooks): Remove. * alloc.c (syms_of_alloc): Update. (Vgc_cons_percentage, Vgc_elapsed, Vmemory_full) (Vmemory_signal_data, Vpost_gc_hook, Vpurify_flag) (cons_cells_consed, floats_consed, garbage_collection_messages) (gc_cons_threshold, gcs_done, intervals_consed) (misc_objects_consed, pure_bytes_used, string_chars_consed) (strings_consed, symbols_consed, vector_cells_consed): Remove. * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL) (DEFVAR_INT): Assume global is in `globals'. * alloc.c (globals): Define.
author Tom Tromey <tromey@redhat.com>
date Tue, 18 Jan 2011 13:45:37 -0700
parents 28ca83ef1128
children 9de5a68b57e1
comparison
equal deleted inserted replaced
112363:6a0c66185ba1 112364:42e22c4f06b7
120 an actual coding system name, but just an indicator to tell 120 an actual coding system name, but just an indicator to tell
121 insert-file-contents to use `emacs-mule' with a special flag for 121 insert-file-contents to use `emacs-mule' with a special flag for
122 auto saving and recovering a file. */ 122 auto saving and recovering a file. */
123 Lisp_Object Qauto_save_coding; 123 Lisp_Object Qauto_save_coding;
124 124
125 /* Coding system for file names, or nil if none. */
126 Lisp_Object Vfile_name_coding_system;
127
128 /* Coding system for file names used only when
129 Vfile_name_coding_system is nil. */
130 Lisp_Object Vdefault_file_name_coding_system;
131
132 /* Alist of elements (REGEXP . HANDLER) for file names
133 whose I/O is done with a special handler. */
134 Lisp_Object Vfile_name_handler_alist;
135
136 /* Property name of a file name handler, 125 /* Property name of a file name handler,
137 which gives a list of operations it handles.. */ 126 which gives a list of operations it handles.. */
138 Lisp_Object Qoperations; 127 Lisp_Object Qoperations;
139 128
140 /* Lisp functions for translating file formats */ 129 /* Lisp functions for translating file formats */
141 Lisp_Object Qformat_decode, Qformat_annotate_function; 130 Lisp_Object Qformat_decode, Qformat_annotate_function;
142 131
143 /* Function to be called to decide a coding system of a reading file. */
144 Lisp_Object Vset_auto_coding_function;
145
146 /* Functions to be called to process text properties in inserted file. */
147 Lisp_Object Vafter_insert_file_functions;
148
149 /* Lisp function for setting buffer-file-coding-system and the 132 /* Lisp function for setting buffer-file-coding-system and the
150 multibyteness of the current buffer after inserting a file. */ 133 multibyteness of the current buffer after inserting a file. */
151 Lisp_Object Qafter_insert_file_set_coding; 134 Lisp_Object Qafter_insert_file_set_coding;
152 135
153 /* Functions to be called to create text property annotations for file. */
154 Lisp_Object Vwrite_region_annotate_functions;
155 Lisp_Object Qwrite_region_annotate_functions; 136 Lisp_Object Qwrite_region_annotate_functions;
156 Lisp_Object Vwrite_region_post_annotation_function;
157
158 /* During build_annotations, each time an annotation function is called,
159 this holds the annotations made by the previous functions. */
160 Lisp_Object Vwrite_region_annotations_so_far;
161
162 /* Each time an annotation function changes the buffer, the new buffer 137 /* Each time an annotation function changes the buffer, the new buffer
163 is added here. */ 138 is added here. */
164 Lisp_Object Vwrite_region_annotation_buffers; 139 Lisp_Object Vwrite_region_annotation_buffers;
165 140
166 /* File name in which we write a list of all our auto save files. */
167 Lisp_Object Vauto_save_list_file_name;
168
169 /* Whether or not files are auto-saved into themselves. */
170 Lisp_Object Vauto_save_visited_file_name;
171
172 /* Whether or not to continue auto-saving after a large deletion. */
173 Lisp_Object Vauto_save_include_big_deletions;
174
175 #ifdef HAVE_FSYNC 141 #ifdef HAVE_FSYNC
176 /* Nonzero means skip the call to fsync in Fwrite-region. */ 142 #endif
177 int write_region_inhibit_fsync;
178 #endif
179
180 /* Non-zero means call move-file-to-trash in Fdelete_file or
181 Fdelete_directory_internal. */
182 int delete_by_moving_to_trash;
183 143
184 Lisp_Object Qdelete_by_moving_to_trash; 144 Lisp_Object Qdelete_by_moving_to_trash;
185 145
186 /* Lisp function for moving files to trash. */ 146 /* Lisp function for moving files to trash. */
187 Lisp_Object Qmove_file_to_trash; 147 Lisp_Object Qmove_file_to_trash;
191 151
192 /* Lisp function for recursively deleting directories. */ 152 /* Lisp function for recursively deleting directories. */
193 Lisp_Object Qdelete_directory; 153 Lisp_Object Qdelete_directory;
194 154
195 #ifdef WINDOWSNT 155 #ifdef WINDOWSNT
196 extern Lisp_Object Vw32_get_true_file_attributes; 156 #endif
197 #endif
198
199 /* These variables describe handlers that have "already" had a chance
200 to handle the current operation.
201
202 Vinhibit_file_name_handlers is a list of file name handlers.
203 Vinhibit_file_name_operation is the operation being handled.
204 If we try to handle that operation, we ignore those handlers. */
205
206 static Lisp_Object Vinhibit_file_name_handlers;
207 static Lisp_Object Vinhibit_file_name_operation;
208 157
209 Lisp_Object Qfile_error, Qfile_already_exists, Qfile_date_error; 158 Lisp_Object Qfile_error, Qfile_already_exists, Qfile_date_error;
210 Lisp_Object Qexcl; 159 Lisp_Object Qexcl;
211 Lisp_Object Qfile_name_history; 160 Lisp_Object Qfile_name_history;
212 161
5636 #ifdef DOS_NT 5585 #ifdef DOS_NT
5637 Qfind_buffer_file_type = intern_c_string ("find-buffer-file-type"); 5586 Qfind_buffer_file_type = intern_c_string ("find-buffer-file-type");
5638 staticpro (&Qfind_buffer_file_type); 5587 staticpro (&Qfind_buffer_file_type);
5639 #endif /* DOS_NT */ 5588 #endif /* DOS_NT */
5640 5589
5641 DEFVAR_LISP ("file-name-coding-system", &Vfile_name_coding_system, 5590 DEFVAR_LISP ("file-name-coding-system", Vfile_name_coding_system,
5642 doc: /* *Coding system for encoding file names. 5591 doc: /* *Coding system for encoding file names.
5643 If it is nil, `default-file-name-coding-system' (which see) is used. */); 5592 If it is nil, `default-file-name-coding-system' (which see) is used. */);
5644 Vfile_name_coding_system = Qnil; 5593 Vfile_name_coding_system = Qnil;
5645 5594
5646 DEFVAR_LISP ("default-file-name-coding-system", 5595 DEFVAR_LISP ("default-file-name-coding-system",
5647 &Vdefault_file_name_coding_system, 5596 Vdefault_file_name_coding_system,
5648 doc: /* Default coding system for encoding file names. 5597 doc: /* Default coding system for encoding file names.
5649 This variable is used only when `file-name-coding-system' is nil. 5598 This variable is used only when `file-name-coding-system' is nil.
5650 5599
5651 This variable is set/changed by the command `set-language-environment'. 5600 This variable is set/changed by the command `set-language-environment'.
5652 User should not set this variable manually, 5601 User should not set this variable manually,
5677 Fput (Qfile_date_error, Qerror_conditions, 5626 Fput (Qfile_date_error, Qerror_conditions,
5678 Fpurecopy (list3 (Qfile_date_error, Qfile_error, Qerror))); 5627 Fpurecopy (list3 (Qfile_date_error, Qfile_error, Qerror)));
5679 Fput (Qfile_date_error, Qerror_message, 5628 Fput (Qfile_date_error, Qerror_message,
5680 make_pure_c_string ("Cannot set file date")); 5629 make_pure_c_string ("Cannot set file date"));
5681 5630
5682 DEFVAR_LISP ("file-name-handler-alist", &Vfile_name_handler_alist, 5631 DEFVAR_LISP ("file-name-handler-alist", Vfile_name_handler_alist,
5683 doc: /* *Alist of elements (REGEXP . HANDLER) for file names handled specially. 5632 doc: /* *Alist of elements (REGEXP . HANDLER) for file names handled specially.
5684 If a file name matches REGEXP, then all I/O on that file is done by calling 5633 If a file name matches REGEXP, then all I/O on that file is done by calling
5685 HANDLER. 5634 HANDLER.
5686 5635
5687 The first argument given to HANDLER is the name of the I/O primitive 5636 The first argument given to HANDLER is the name of the I/O primitive
5693 The function `find-file-name-handler' checks this list for a handler 5642 The function `find-file-name-handler' checks this list for a handler
5694 for its argument. */); 5643 for its argument. */);
5695 Vfile_name_handler_alist = Qnil; 5644 Vfile_name_handler_alist = Qnil;
5696 5645
5697 DEFVAR_LISP ("set-auto-coding-function", 5646 DEFVAR_LISP ("set-auto-coding-function",
5698 &Vset_auto_coding_function, 5647 Vset_auto_coding_function,
5699 doc: /* If non-nil, a function to call to decide a coding system of file. 5648 doc: /* If non-nil, a function to call to decide a coding system of file.
5700 Two arguments are passed to this function: the file name 5649 Two arguments are passed to this function: the file name
5701 and the length of a file contents following the point. 5650 and the length of a file contents following the point.
5702 This function should return a coding system to decode the file contents. 5651 This function should return a coding system to decode the file contents.
5703 It should check the file name against `auto-coding-alist'. 5652 It should check the file name against `auto-coding-alist'.
5705 specified in the heading lines with the format: 5654 specified in the heading lines with the format:
5706 -*- ... coding: CODING-SYSTEM; ... -*- 5655 -*- ... coding: CODING-SYSTEM; ... -*-
5707 or local variable spec of the tailing lines with `coding:' tag. */); 5656 or local variable spec of the tailing lines with `coding:' tag. */);
5708 Vset_auto_coding_function = Qnil; 5657 Vset_auto_coding_function = Qnil;
5709 5658
5710 DEFVAR_LISP ("after-insert-file-functions", &Vafter_insert_file_functions, 5659 DEFVAR_LISP ("after-insert-file-functions", Vafter_insert_file_functions,
5711 doc: /* A list of functions to be called at the end of `insert-file-contents'. 5660 doc: /* A list of functions to be called at the end of `insert-file-contents'.
5712 Each is passed one argument, the number of characters inserted, 5661 Each is passed one argument, the number of characters inserted,
5713 with point at the start of the inserted text. Each function 5662 with point at the start of the inserted text. Each function
5714 should leave point the same, and return the new character count. 5663 should leave point the same, and return the new character count.
5715 If `insert-file-contents' is intercepted by a handler from 5664 If `insert-file-contents' is intercepted by a handler from
5716 `file-name-handler-alist', that handler is responsible for calling the 5665 `file-name-handler-alist', that handler is responsible for calling the
5717 functions in `after-insert-file-functions' if appropriate. */); 5666 functions in `after-insert-file-functions' if appropriate. */);
5718 Vafter_insert_file_functions = Qnil; 5667 Vafter_insert_file_functions = Qnil;
5719 5668
5720 DEFVAR_LISP ("write-region-annotate-functions", &Vwrite_region_annotate_functions, 5669 DEFVAR_LISP ("write-region-annotate-functions", Vwrite_region_annotate_functions,
5721 doc: /* A list of functions to be called at the start of `write-region'. 5670 doc: /* A list of functions to be called at the start of `write-region'.
5722 Each is passed two arguments, START and END as for `write-region'. 5671 Each is passed two arguments, START and END as for `write-region'.
5723 These are usually two numbers but not always; see the documentation 5672 These are usually two numbers but not always; see the documentation
5724 for `write-region'. The function should return a list of pairs 5673 for `write-region'. The function should return a list of pairs
5725 of the form (POSITION . STRING), consisting of strings to be effectively 5674 of the form (POSITION . STRING), consisting of strings to be effectively
5744 staticpro (&Qwrite_region_annotate_functions); 5693 staticpro (&Qwrite_region_annotate_functions);
5745 Qwrite_region_annotate_functions 5694 Qwrite_region_annotate_functions
5746 = intern_c_string ("write-region-annotate-functions"); 5695 = intern_c_string ("write-region-annotate-functions");
5747 5696
5748 DEFVAR_LISP ("write-region-post-annotation-function", 5697 DEFVAR_LISP ("write-region-post-annotation-function",
5749 &Vwrite_region_post_annotation_function, 5698 Vwrite_region_post_annotation_function,
5750 doc: /* Function to call after `write-region' completes. 5699 doc: /* Function to call after `write-region' completes.
5751 The function is called with no arguments. If one or more of the 5700 The function is called with no arguments. If one or more of the
5752 annotation functions in `write-region-annotate-functions' changed the 5701 annotation functions in `write-region-annotate-functions' changed the
5753 current buffer, the function stored in this variable is called for 5702 current buffer, the function stored in this variable is called for
5754 each of those additional buffers as well, in addition to the original 5703 each of those additional buffers as well, in addition to the original
5755 buffer. The relevant buffer is current during each function call. */); 5704 buffer. The relevant buffer is current during each function call. */);
5756 Vwrite_region_post_annotation_function = Qnil; 5705 Vwrite_region_post_annotation_function = Qnil;
5757 staticpro (&Vwrite_region_annotation_buffers); 5706 staticpro (&Vwrite_region_annotation_buffers);
5758 5707
5759 DEFVAR_LISP ("write-region-annotations-so-far", 5708 DEFVAR_LISP ("write-region-annotations-so-far",
5760 &Vwrite_region_annotations_so_far, 5709 Vwrite_region_annotations_so_far,
5761 doc: /* When an annotation function is called, this holds the previous annotations. 5710 doc: /* When an annotation function is called, this holds the previous annotations.
5762 These are the annotations made by other annotation functions 5711 These are the annotations made by other annotation functions
5763 that were already called. See also `write-region-annotate-functions'. */); 5712 that were already called. See also `write-region-annotate-functions'. */);
5764 Vwrite_region_annotations_so_far = Qnil; 5713 Vwrite_region_annotations_so_far = Qnil;
5765 5714
5766 DEFVAR_LISP ("inhibit-file-name-handlers", &Vinhibit_file_name_handlers, 5715 DEFVAR_LISP ("inhibit-file-name-handlers", Vinhibit_file_name_handlers,
5767 doc: /* A list of file name handlers that temporarily should not be used. 5716 doc: /* A list of file name handlers that temporarily should not be used.
5768 This applies only to the operation `inhibit-file-name-operation'. */); 5717 This applies only to the operation `inhibit-file-name-operation'. */);
5769 Vinhibit_file_name_handlers = Qnil; 5718 Vinhibit_file_name_handlers = Qnil;
5770 5719
5771 DEFVAR_LISP ("inhibit-file-name-operation", &Vinhibit_file_name_operation, 5720 DEFVAR_LISP ("inhibit-file-name-operation", Vinhibit_file_name_operation,
5772 doc: /* The operation for which `inhibit-file-name-handlers' is applicable. */); 5721 doc: /* The operation for which `inhibit-file-name-handlers' is applicable. */);
5773 Vinhibit_file_name_operation = Qnil; 5722 Vinhibit_file_name_operation = Qnil;
5774 5723
5775 DEFVAR_LISP ("auto-save-list-file-name", &Vauto_save_list_file_name, 5724 DEFVAR_LISP ("auto-save-list-file-name", Vauto_save_list_file_name,
5776 doc: /* File name in which we write a list of all auto save file names. 5725 doc: /* File name in which we write a list of all auto save file names.
5777 This variable is initialized automatically from `auto-save-list-file-prefix' 5726 This variable is initialized automatically from `auto-save-list-file-prefix'
5778 shortly after Emacs reads your `.emacs' file, if you have not yet given it 5727 shortly after Emacs reads your `.emacs' file, if you have not yet given it
5779 a non-nil value. */); 5728 a non-nil value. */);
5780 Vauto_save_list_file_name = Qnil; 5729 Vauto_save_list_file_name = Qnil;
5781 5730
5782 DEFVAR_LISP ("auto-save-visited-file-name", &Vauto_save_visited_file_name, 5731 DEFVAR_LISP ("auto-save-visited-file-name", Vauto_save_visited_file_name,
5783 doc: /* Non-nil says auto-save a buffer in the file it is visiting, when practical. 5732 doc: /* Non-nil says auto-save a buffer in the file it is visiting, when practical.
5784 Normally auto-save files are written under other names. */); 5733 Normally auto-save files are written under other names. */);
5785 Vauto_save_visited_file_name = Qnil; 5734 Vauto_save_visited_file_name = Qnil;
5786 5735
5787 DEFVAR_LISP ("auto-save-include-big-deletions", &Vauto_save_include_big_deletions, 5736 DEFVAR_LISP ("auto-save-include-big-deletions", Vauto_save_include_big_deletions,
5788 doc: /* If non-nil, auto-save even if a large part of the text is deleted. 5737 doc: /* If non-nil, auto-save even if a large part of the text is deleted.
5789 If nil, deleting a substantial portion of the text disables auto-save 5738 If nil, deleting a substantial portion of the text disables auto-save
5790 in the buffer; this is the default behavior, because the auto-save 5739 in the buffer; this is the default behavior, because the auto-save
5791 file is usually more useful if it contains the deleted text. */); 5740 file is usually more useful if it contains the deleted text. */);
5792 Vauto_save_include_big_deletions = Qnil; 5741 Vauto_save_include_big_deletions = Qnil;
5793 5742
5794 #ifdef HAVE_FSYNC 5743 #ifdef HAVE_FSYNC
5795 DEFVAR_BOOL ("write-region-inhibit-fsync", &write_region_inhibit_fsync, 5744 DEFVAR_BOOL ("write-region-inhibit-fsync", write_region_inhibit_fsync,
5796 doc: /* *Non-nil means don't call fsync in `write-region'. 5745 doc: /* *Non-nil means don't call fsync in `write-region'.
5797 This variable affects calls to `write-region' as well as save commands. 5746 This variable affects calls to `write-region' as well as save commands.
5798 A non-nil value may result in data loss! */); 5747 A non-nil value may result in data loss! */);
5799 write_region_inhibit_fsync = 0; 5748 write_region_inhibit_fsync = 0;
5800 #endif 5749 #endif
5801 5750
5802 DEFVAR_BOOL ("delete-by-moving-to-trash", &delete_by_moving_to_trash, 5751 DEFVAR_BOOL ("delete-by-moving-to-trash", delete_by_moving_to_trash,
5803 doc: /* Specifies whether to use the system's trash can. 5752 doc: /* Specifies whether to use the system's trash can.
5804 When non-nil, certain file deletion commands use the function 5753 When non-nil, certain file deletion commands use the function
5805 `move-file-to-trash' instead of deleting files outright. 5754 `move-file-to-trash' instead of deleting files outright.
5806 This includes interactive calls to `delete-file' and 5755 This includes interactive calls to `delete-file' and
5807 `delete-directory' and the Dired deletion commands. */); 5756 `delete-directory' and the Dired deletion commands. */);