comparison src/coding.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 81d8294d0c45
children 9de5a68b57e1
comparison
equal deleted inserted replaced
112363:6a0c66185ba1 112364:42e22c4f06b7
325 325
326 /* If a symbol has this property, evaluate the value to define the 326 /* If a symbol has this property, evaluate the value to define the
327 symbol as a coding system. */ 327 symbol as a coding system. */
328 static Lisp_Object Qcoding_system_define_form; 328 static Lisp_Object Qcoding_system_define_form;
329 329
330 int coding_system_require_warning;
331
332 Lisp_Object Vselect_safe_coding_system_function;
333
334 /* Mnemonic string for each format of end-of-line. */
335 Lisp_Object eol_mnemonic_unix, eol_mnemonic_dos, eol_mnemonic_mac;
336 /* Mnemonic string to indicate format of end-of-line is not yet
337 decided. */
338 Lisp_Object eol_mnemonic_undecided;
339
340 /* Format of end-of-line decided by system. This is Qunix on 330 /* Format of end-of-line decided by system. This is Qunix on
341 Unix and Mac, Qdos on DOS/Windows. 331 Unix and Mac, Qdos on DOS/Windows.
342 This has an effect only for external encoding (i.e. for output to 332 This has an effect only for external encoding (i.e. for output to
343 file and process), not for in-buffer or Lisp string encoding. */ 333 file and process), not for in-buffer or Lisp string encoding. */
344 static Lisp_Object system_eol_type; 334 static Lisp_Object system_eol_type;
345 335
346 #ifdef emacs 336 #ifdef emacs
347 337
348 Lisp_Object Vcoding_system_list, Vcoding_system_alist;
349
350 Lisp_Object Qcoding_system_p, Qcoding_system_error; 338 Lisp_Object Qcoding_system_p, Qcoding_system_error;
351 339
352 /* Coding system emacs-mule and raw-text are for converting only 340 /* Coding system emacs-mule and raw-text are for converting only
353 end-of-line format. */ 341 end-of-line format. */
354 Lisp_Object Qemacs_mule, Qraw_text; 342 Lisp_Object Qemacs_mule, Qraw_text;
355 Lisp_Object Qutf_8_emacs; 343 Lisp_Object Qutf_8_emacs;
356 344
357 /* Coding-systems are handed between Emacs Lisp programs and C internal 345 /* Coding-systems are handed between Emacs Lisp programs and C internal
358 routines by the following three variables. */ 346 routines by the following three variables. */
359 /* Coding-system for reading files and receiving data from process. */
360 Lisp_Object Vcoding_system_for_read;
361 /* Coding-system for writing files and sending data to process. */
362 Lisp_Object Vcoding_system_for_write;
363 /* Coding-system actually used in the latest I/O. */
364 Lisp_Object Vlast_coding_system_used;
365 /* Set to non-nil when an error is detected while code conversion. */
366 Lisp_Object Vlast_code_conversion_error;
367 /* A vector of length 256 which contains information about special
368 Latin codes (especially for dealing with Microsoft codes). */
369 Lisp_Object Vlatin_extra_code_table;
370
371 /* Flag to inhibit code conversion of end-of-line format. */
372 int inhibit_eol_conversion;
373
374 /* Flag to inhibit ISO2022 escape sequence detection. */
375 int inhibit_iso_escape_detection;
376
377 /* Flag to inhibit detection of binary files through null bytes. */
378 int inhibit_null_byte_detection;
379
380 /* Flag to make buffer-file-coding-system inherit from process-coding. */
381 int inherit_process_coding_system;
382
383 /* Coding system to be used to encode text for terminal display when 347 /* Coding system to be used to encode text for terminal display when
384 terminal coding system is nil. */ 348 terminal coding system is nil. */
385 struct coding_system safe_terminal_coding; 349 struct coding_system safe_terminal_coding;
386 350
387 Lisp_Object Vfile_coding_system_alist;
388 Lisp_Object Vprocess_coding_system_alist;
389 Lisp_Object Vnetwork_coding_system_alist;
390
391 Lisp_Object Vlocale_coding_system;
392
393 #endif /* emacs */ 351 #endif /* emacs */
394
395 /* Flag to tell if we look up translation table on character code
396 conversion. */
397 Lisp_Object Venable_character_translation;
398 /* Standard translation table to look up on decoding (reading). */
399 Lisp_Object Vstandard_translation_table_for_decode;
400 /* Standard translation table to look up on encoding (writing). */
401 Lisp_Object Vstandard_translation_table_for_encode;
402 352
403 Lisp_Object Qtranslation_table; 353 Lisp_Object Qtranslation_table;
404 Lisp_Object Qtranslation_table_id; 354 Lisp_Object Qtranslation_table_id;
405 Lisp_Object Qtranslation_table_for_decode; 355 Lisp_Object Qtranslation_table_for_decode;
406 Lisp_Object Qtranslation_table_for_encode; 356 Lisp_Object Qtranslation_table_for_encode;
407
408 /* Alist of charsets vs revision number. */
409 static Lisp_Object Vcharset_revision_table;
410
411 /* Default coding systems used for process I/O. */
412 Lisp_Object Vdefault_process_coding_system;
413
414 /* Char table for translating Quail and self-inserting input. */
415 Lisp_Object Vtranslation_table_for_input;
416 357
417 /* Two special coding systems. */ 358 /* Two special coding systems. */
418 Lisp_Object Vsjis_coding_system; 359 Lisp_Object Vsjis_coding_system;
419 Lisp_Object Vbig5_coding_system; 360 Lisp_Object Vbig5_coding_system;
420 361
678 619
679 #define CATEGORY_MASK_UTF_8 \ 620 #define CATEGORY_MASK_UTF_8 \
680 (CATEGORY_MASK_UTF_8_AUTO \ 621 (CATEGORY_MASK_UTF_8_AUTO \
681 | CATEGORY_MASK_UTF_8_NOSIG \ 622 | CATEGORY_MASK_UTF_8_NOSIG \
682 | CATEGORY_MASK_UTF_8_SIG) 623 | CATEGORY_MASK_UTF_8_SIG)
683
684 /* List of symbols `coding-category-xxx' ordered by priority. This
685 variable is exposed to Emacs Lisp. */
686 static Lisp_Object Vcoding_category_list;
687 624
688 /* Table of coding categories (Lisp symbols). This variable is for 625 /* Table of coding categories (Lisp symbols). This variable is for
689 internal use only. */ 626 internal use only. */
690 static Lisp_Object Vcoding_category_table; 627 static Lisp_Object Vcoding_category_table;
691 628
10523 defsubr (&Scoding_system_plist); 10460 defsubr (&Scoding_system_plist);
10524 defsubr (&Scoding_system_aliases); 10461 defsubr (&Scoding_system_aliases);
10525 defsubr (&Scoding_system_eol_type); 10462 defsubr (&Scoding_system_eol_type);
10526 defsubr (&Scoding_system_priority_list); 10463 defsubr (&Scoding_system_priority_list);
10527 10464
10528 DEFVAR_LISP ("coding-system-list", &Vcoding_system_list, 10465 DEFVAR_LISP ("coding-system-list", Vcoding_system_list,
10529 doc: /* List of coding systems. 10466 doc: /* List of coding systems.
10530 10467
10531 Do not alter the value of this variable manually. This variable should be 10468 Do not alter the value of this variable manually. This variable should be
10532 updated by the functions `define-coding-system' and 10469 updated by the functions `define-coding-system' and
10533 `define-coding-system-alias'. */); 10470 `define-coding-system-alias'. */);
10534 Vcoding_system_list = Qnil; 10471 Vcoding_system_list = Qnil;
10535 10472
10536 DEFVAR_LISP ("coding-system-alist", &Vcoding_system_alist, 10473 DEFVAR_LISP ("coding-system-alist", Vcoding_system_alist,
10537 doc: /* Alist of coding system names. 10474 doc: /* Alist of coding system names.
10538 Each element is one element list of coding system name. 10475 Each element is one element list of coding system name.
10539 This variable is given to `completing-read' as COLLECTION argument. 10476 This variable is given to `completing-read' as COLLECTION argument.
10540 10477
10541 Do not alter the value of this variable manually. This variable should be 10478 Do not alter the value of this variable manually. This variable should be
10542 updated by the functions `make-coding-system' and 10479 updated by the functions `make-coding-system' and
10543 `define-coding-system-alias'. */); 10480 `define-coding-system-alias'. */);
10544 Vcoding_system_alist = Qnil; 10481 Vcoding_system_alist = Qnil;
10545 10482
10546 DEFVAR_LISP ("coding-category-list", &Vcoding_category_list, 10483 DEFVAR_LISP ("coding-category-list", Vcoding_category_list,
10547 doc: /* List of coding-categories (symbols) ordered by priority. 10484 doc: /* List of coding-categories (symbols) ordered by priority.
10548 10485
10549 On detecting a coding system, Emacs tries code detection algorithms 10486 On detecting a coding system, Emacs tries code detection algorithms
10550 associated with each coding-category one by one in this order. When 10487 associated with each coding-category one by one in this order. When
10551 one algorithm agrees with a byte sequence of source text, the coding 10488 one algorithm agrees with a byte sequence of source text, the coding
10560 Vcoding_category_list 10497 Vcoding_category_list
10561 = Fcons (XVECTOR (Vcoding_category_table)->contents[i], 10498 = Fcons (XVECTOR (Vcoding_category_table)->contents[i],
10562 Vcoding_category_list); 10499 Vcoding_category_list);
10563 } 10500 }
10564 10501
10565 DEFVAR_LISP ("coding-system-for-read", &Vcoding_system_for_read, 10502 DEFVAR_LISP ("coding-system-for-read", Vcoding_system_for_read,
10566 doc: /* Specify the coding system for read operations. 10503 doc: /* Specify the coding system for read operations.
10567 It is useful to bind this variable with `let', but do not set it globally. 10504 It is useful to bind this variable with `let', but do not set it globally.
10568 If the value is a coding system, it is used for decoding on read operation. 10505 If the value is a coding system, it is used for decoding on read operation.
10569 If not, an appropriate element is used from one of the coding system alists. 10506 If not, an appropriate element is used from one of the coding system alists.
10570 There are three such tables: `file-coding-system-alist', 10507 There are three such tables: `file-coding-system-alist',
10571 `process-coding-system-alist', and `network-coding-system-alist'. */); 10508 `process-coding-system-alist', and `network-coding-system-alist'. */);
10572 Vcoding_system_for_read = Qnil; 10509 Vcoding_system_for_read = Qnil;
10573 10510
10574 DEFVAR_LISP ("coding-system-for-write", &Vcoding_system_for_write, 10511 DEFVAR_LISP ("coding-system-for-write", Vcoding_system_for_write,
10575 doc: /* Specify the coding system for write operations. 10512 doc: /* Specify the coding system for write operations.
10576 Programs bind this variable with `let', but you should not set it globally. 10513 Programs bind this variable with `let', but you should not set it globally.
10577 If the value is a coding system, it is used for encoding of output, 10514 If the value is a coding system, it is used for encoding of output,
10578 when writing it to a file and when sending it to a file or subprocess. 10515 when writing it to a file and when sending it to a file or subprocess.
10579 10516
10583 `process-coding-system-alist', and `network-coding-system-alist'. 10520 `process-coding-system-alist', and `network-coding-system-alist'.
10584 For output to files, if the above procedure does not specify a coding system, 10521 For output to files, if the above procedure does not specify a coding system,
10585 the value of `buffer-file-coding-system' is used. */); 10522 the value of `buffer-file-coding-system' is used. */);
10586 Vcoding_system_for_write = Qnil; 10523 Vcoding_system_for_write = Qnil;
10587 10524
10588 DEFVAR_LISP ("last-coding-system-used", &Vlast_coding_system_used, 10525 DEFVAR_LISP ("last-coding-system-used", Vlast_coding_system_used,
10589 doc: /* 10526 doc: /*
10590 Coding system used in the latest file or process I/O. */); 10527 Coding system used in the latest file or process I/O. */);
10591 Vlast_coding_system_used = Qnil; 10528 Vlast_coding_system_used = Qnil;
10592 10529
10593 DEFVAR_LISP ("last-code-conversion-error", &Vlast_code_conversion_error, 10530 DEFVAR_LISP ("last-code-conversion-error", Vlast_code_conversion_error,
10594 doc: /* 10531 doc: /*
10595 Error status of the last code conversion. 10532 Error status of the last code conversion.
10596 10533
10597 When an error was detected in the last code conversion, this variable 10534 When an error was detected in the last code conversion, this variable
10598 is set to one of the following symbols. 10535 is set to one of the following symbols.
10605 the error status of a code conversion by this variable, you must 10542 the error status of a code conversion by this variable, you must
10606 explicitly set this variable to nil before performing code 10543 explicitly set this variable to nil before performing code
10607 conversion. */); 10544 conversion. */);
10608 Vlast_code_conversion_error = Qnil; 10545 Vlast_code_conversion_error = Qnil;
10609 10546
10610 DEFVAR_BOOL ("inhibit-eol-conversion", &inhibit_eol_conversion, 10547 DEFVAR_BOOL ("inhibit-eol-conversion", inhibit_eol_conversion,
10611 doc: /* 10548 doc: /*
10612 *Non-nil means always inhibit code conversion of end-of-line format. 10549 *Non-nil means always inhibit code conversion of end-of-line format.
10613 See info node `Coding Systems' and info node `Text and Binary' concerning 10550 See info node `Coding Systems' and info node `Text and Binary' concerning
10614 such conversion. */); 10551 such conversion. */);
10615 inhibit_eol_conversion = 0; 10552 inhibit_eol_conversion = 0;
10616 10553
10617 DEFVAR_BOOL ("inherit-process-coding-system", &inherit_process_coding_system, 10554 DEFVAR_BOOL ("inherit-process-coding-system", inherit_process_coding_system,
10618 doc: /* 10555 doc: /*
10619 Non-nil means process buffer inherits coding system of process output. 10556 Non-nil means process buffer inherits coding system of process output.
10620 Bind it to t if the process output is to be treated as if it were a file 10557 Bind it to t if the process output is to be treated as if it were a file
10621 read from some filesystem. */); 10558 read from some filesystem. */);
10622 inherit_process_coding_system = 0; 10559 inherit_process_coding_system = 0;
10623 10560
10624 DEFVAR_LISP ("file-coding-system-alist", &Vfile_coding_system_alist, 10561 DEFVAR_LISP ("file-coding-system-alist", Vfile_coding_system_alist,
10625 doc: /* 10562 doc: /*
10626 Alist to decide a coding system to use for a file I/O operation. 10563 Alist to decide a coding system to use for a file I/O operation.
10627 The format is ((PATTERN . VAL) ...), 10564 The format is ((PATTERN . VAL) ...),
10628 where PATTERN is a regular expression matching a file name, 10565 where PATTERN is a regular expression matching a file name,
10629 VAL is a coding system, a cons of coding systems, or a function symbol. 10566 VAL is a coding system, a cons of coding systems, or a function symbol.
10640 10577
10641 See also the function `find-operation-coding-system' 10578 See also the function `find-operation-coding-system'
10642 and the variable `auto-coding-alist'. */); 10579 and the variable `auto-coding-alist'. */);
10643 Vfile_coding_system_alist = Qnil; 10580 Vfile_coding_system_alist = Qnil;
10644 10581
10645 DEFVAR_LISP ("process-coding-system-alist", &Vprocess_coding_system_alist, 10582 DEFVAR_LISP ("process-coding-system-alist", Vprocess_coding_system_alist,
10646 doc: /* 10583 doc: /*
10647 Alist to decide a coding system to use for a process I/O operation. 10584 Alist to decide a coding system to use for a process I/O operation.
10648 The format is ((PATTERN . VAL) ...), 10585 The format is ((PATTERN . VAL) ...),
10649 where PATTERN is a regular expression matching a program name, 10586 where PATTERN is a regular expression matching a program name,
10650 VAL is a coding system, a cons of coding systems, or a function symbol. 10587 VAL is a coding system, a cons of coding systems, or a function symbol.
10656 or a cons of coding systems which are used as above. 10593 or a cons of coding systems which are used as above.
10657 10594
10658 See also the function `find-operation-coding-system'. */); 10595 See also the function `find-operation-coding-system'. */);
10659 Vprocess_coding_system_alist = Qnil; 10596 Vprocess_coding_system_alist = Qnil;
10660 10597
10661 DEFVAR_LISP ("network-coding-system-alist", &Vnetwork_coding_system_alist, 10598 DEFVAR_LISP ("network-coding-system-alist", Vnetwork_coding_system_alist,
10662 doc: /* 10599 doc: /*
10663 Alist to decide a coding system to use for a network I/O operation. 10600 Alist to decide a coding system to use for a network I/O operation.
10664 The format is ((PATTERN . VAL) ...), 10601 The format is ((PATTERN . VAL) ...),
10665 where PATTERN is a regular expression matching a network service name 10602 where PATTERN is a regular expression matching a network service name
10666 or is a port number to connect to, 10603 or is a port number to connect to,
10673 or a cons of coding systems which are used as above. 10610 or a cons of coding systems which are used as above.
10674 10611
10675 See also the function `find-operation-coding-system'. */); 10612 See also the function `find-operation-coding-system'. */);
10676 Vnetwork_coding_system_alist = Qnil; 10613 Vnetwork_coding_system_alist = Qnil;
10677 10614
10678 DEFVAR_LISP ("locale-coding-system", &Vlocale_coding_system, 10615 DEFVAR_LISP ("locale-coding-system", Vlocale_coding_system,
10679 doc: /* Coding system to use with system messages. 10616 doc: /* Coding system to use with system messages.
10680 Also used for decoding keyboard input on X Window system. */); 10617 Also used for decoding keyboard input on X Window system. */);
10681 Vlocale_coding_system = Qnil; 10618 Vlocale_coding_system = Qnil;
10682 10619
10683 /* The eol mnemonics are reset in startup.el system-dependently. */ 10620 /* The eol mnemonics are reset in startup.el system-dependently. */
10684 DEFVAR_LISP ("eol-mnemonic-unix", &eol_mnemonic_unix, 10621 DEFVAR_LISP ("eol-mnemonic-unix", eol_mnemonic_unix,
10685 doc: /* 10622 doc: /*
10686 *String displayed in mode line for UNIX-like (LF) end-of-line format. */); 10623 *String displayed in mode line for UNIX-like (LF) end-of-line format. */);
10687 eol_mnemonic_unix = make_pure_c_string (":"); 10624 eol_mnemonic_unix = make_pure_c_string (":");
10688 10625
10689 DEFVAR_LISP ("eol-mnemonic-dos", &eol_mnemonic_dos, 10626 DEFVAR_LISP ("eol-mnemonic-dos", eol_mnemonic_dos,
10690 doc: /* 10627 doc: /*
10691 *String displayed in mode line for DOS-like (CRLF) end-of-line format. */); 10628 *String displayed in mode line for DOS-like (CRLF) end-of-line format. */);
10692 eol_mnemonic_dos = make_pure_c_string ("\\"); 10629 eol_mnemonic_dos = make_pure_c_string ("\\");
10693 10630
10694 DEFVAR_LISP ("eol-mnemonic-mac", &eol_mnemonic_mac, 10631 DEFVAR_LISP ("eol-mnemonic-mac", eol_mnemonic_mac,
10695 doc: /* 10632 doc: /*
10696 *String displayed in mode line for MAC-like (CR) end-of-line format. */); 10633 *String displayed in mode line for MAC-like (CR) end-of-line format. */);
10697 eol_mnemonic_mac = make_pure_c_string ("/"); 10634 eol_mnemonic_mac = make_pure_c_string ("/");
10698 10635
10699 DEFVAR_LISP ("eol-mnemonic-undecided", &eol_mnemonic_undecided, 10636 DEFVAR_LISP ("eol-mnemonic-undecided", eol_mnemonic_undecided,
10700 doc: /* 10637 doc: /*
10701 *String displayed in mode line when end-of-line format is not yet determined. */); 10638 *String displayed in mode line when end-of-line format is not yet determined. */);
10702 eol_mnemonic_undecided = make_pure_c_string (":"); 10639 eol_mnemonic_undecided = make_pure_c_string (":");
10703 10640
10704 DEFVAR_LISP ("enable-character-translation", &Venable_character_translation, 10641 DEFVAR_LISP ("enable-character-translation", Venable_character_translation,
10705 doc: /* 10642 doc: /*
10706 *Non-nil enables character translation while encoding and decoding. */); 10643 *Non-nil enables character translation while encoding and decoding. */);
10707 Venable_character_translation = Qt; 10644 Venable_character_translation = Qt;
10708 10645
10709 DEFVAR_LISP ("standard-translation-table-for-decode", 10646 DEFVAR_LISP ("standard-translation-table-for-decode",
10710 &Vstandard_translation_table_for_decode, 10647 Vstandard_translation_table_for_decode,
10711 doc: /* Table for translating characters while decoding. */); 10648 doc: /* Table for translating characters while decoding. */);
10712 Vstandard_translation_table_for_decode = Qnil; 10649 Vstandard_translation_table_for_decode = Qnil;
10713 10650
10714 DEFVAR_LISP ("standard-translation-table-for-encode", 10651 DEFVAR_LISP ("standard-translation-table-for-encode",
10715 &Vstandard_translation_table_for_encode, 10652 Vstandard_translation_table_for_encode,
10716 doc: /* Table for translating characters while encoding. */); 10653 doc: /* Table for translating characters while encoding. */);
10717 Vstandard_translation_table_for_encode = Qnil; 10654 Vstandard_translation_table_for_encode = Qnil;
10718 10655
10719 DEFVAR_LISP ("charset-revision-table", &Vcharset_revision_table, 10656 DEFVAR_LISP ("charset-revision-table", Vcharset_revision_table,
10720 doc: /* Alist of charsets vs revision numbers. 10657 doc: /* Alist of charsets vs revision numbers.
10721 While encoding, if a charset (car part of an element) is found, 10658 While encoding, if a charset (car part of an element) is found,
10722 designate it with the escape sequence identifying revision (cdr part 10659 designate it with the escape sequence identifying revision (cdr part
10723 of the element). */); 10660 of the element). */);
10724 Vcharset_revision_table = Qnil; 10661 Vcharset_revision_table = Qnil;
10725 10662
10726 DEFVAR_LISP ("default-process-coding-system", 10663 DEFVAR_LISP ("default-process-coding-system",
10727 &Vdefault_process_coding_system, 10664 Vdefault_process_coding_system,
10728 doc: /* Cons of coding systems used for process I/O by default. 10665 doc: /* Cons of coding systems used for process I/O by default.
10729 The car part is used for decoding a process output, 10666 The car part is used for decoding a process output,
10730 the cdr part is used for encoding a text to be sent to a process. */); 10667 the cdr part is used for encoding a text to be sent to a process. */);
10731 Vdefault_process_coding_system = Qnil; 10668 Vdefault_process_coding_system = Qnil;
10732 10669
10733 DEFVAR_LISP ("latin-extra-code-table", &Vlatin_extra_code_table, 10670 DEFVAR_LISP ("latin-extra-code-table", Vlatin_extra_code_table,
10734 doc: /* 10671 doc: /*
10735 Table of extra Latin codes in the range 128..159 (inclusive). 10672 Table of extra Latin codes in the range 128..159 (inclusive).
10736 This is a vector of length 256. 10673 This is a vector of length 256.
10737 If Nth element is non-nil, the existence of code N in a file 10674 If Nth element is non-nil, the existence of code N in a file
10738 \(or output of subprocess) doesn't prevent it to be detected as 10675 \(or output of subprocess) doesn't prevent it to be detected as
10741 or reading output of a subprocess. 10678 or reading output of a subprocess.
10742 Only 128th through 159th elements have a meaning. */); 10679 Only 128th through 159th elements have a meaning. */);
10743 Vlatin_extra_code_table = Fmake_vector (make_number (256), Qnil); 10680 Vlatin_extra_code_table = Fmake_vector (make_number (256), Qnil);
10744 10681
10745 DEFVAR_LISP ("select-safe-coding-system-function", 10682 DEFVAR_LISP ("select-safe-coding-system-function",
10746 &Vselect_safe_coding_system_function, 10683 Vselect_safe_coding_system_function,
10747 doc: /* 10684 doc: /*
10748 Function to call to select safe coding system for encoding a text. 10685 Function to call to select safe coding system for encoding a text.
10749 10686
10750 If set, this function is called to force a user to select a proper 10687 If set, this function is called to force a user to select a proper
10751 coding system which can encode the text in the case that a default 10688 coding system which can encode the text in the case that a default
10755 10692
10756 The default value is `select-safe-coding-system' (which see). */); 10693 The default value is `select-safe-coding-system' (which see). */);
10757 Vselect_safe_coding_system_function = Qnil; 10694 Vselect_safe_coding_system_function = Qnil;
10758 10695
10759 DEFVAR_BOOL ("coding-system-require-warning", 10696 DEFVAR_BOOL ("coding-system-require-warning",
10760 &coding_system_require_warning, 10697 coding_system_require_warning,
10761 doc: /* Internal use only. 10698 doc: /* Internal use only.
10762 If non-nil, on writing a file, `select-safe-coding-system-function' is 10699 If non-nil, on writing a file, `select-safe-coding-system-function' is
10763 called even if `coding-system-for-write' is non-nil. The command 10700 called even if `coding-system-for-write' is non-nil. The command
10764 `universal-coding-system-argument' binds this variable to t temporarily. */); 10701 `universal-coding-system-argument' binds this variable to t temporarily. */);
10765 coding_system_require_warning = 0; 10702 coding_system_require_warning = 0;
10766 10703
10767 10704
10768 DEFVAR_BOOL ("inhibit-iso-escape-detection", 10705 DEFVAR_BOOL ("inhibit-iso-escape-detection",
10769 &inhibit_iso_escape_detection, 10706 inhibit_iso_escape_detection,
10770 doc: /* 10707 doc: /*
10771 If non-nil, Emacs ignores ISO-2022 escape sequences during code detection. 10708 If non-nil, Emacs ignores ISO-2022 escape sequences during code detection.
10772 10709
10773 When Emacs reads text, it tries to detect how the text is encoded. 10710 When Emacs reads text, it tries to detect how the text is encoded.
10774 This code detection is sensitive to escape sequences. If Emacs sees 10711 This code detection is sensitive to escape sequences. If Emacs sees
10792 to explicitly specify some coding system that doesn't use ISO-2022 10729 to explicitly specify some coding system that doesn't use ISO-2022
10793 escape sequence (e.g `latin-1') on reading by \\[universal-coding-system-argument]. */); 10730 escape sequence (e.g `latin-1') on reading by \\[universal-coding-system-argument]. */);
10794 inhibit_iso_escape_detection = 0; 10731 inhibit_iso_escape_detection = 0;
10795 10732
10796 DEFVAR_BOOL ("inhibit-null-byte-detection", 10733 DEFVAR_BOOL ("inhibit-null-byte-detection",
10797 &inhibit_null_byte_detection, 10734 inhibit_null_byte_detection,
10798 doc: /* If non-nil, Emacs ignores null bytes on code detection. 10735 doc: /* If non-nil, Emacs ignores null bytes on code detection.
10799 By default, Emacs treats it as binary data, and does not attempt to 10736 By default, Emacs treats it as binary data, and does not attempt to
10800 decode it. The effect is as if you specified `no-conversion' for 10737 decode it. The effect is as if you specified `no-conversion' for
10801 reading that text. 10738 reading that text.
10802 10739
10804 Examples are Index nodes of Info files and null-byte delimited output 10741 Examples are Index nodes of Info files and null-byte delimited output
10805 from GNU Find and GNU Grep. Emacs will then ignore the null bytes and 10742 from GNU Find and GNU Grep. Emacs will then ignore the null bytes and
10806 decode text as usual. */); 10743 decode text as usual. */);
10807 inhibit_null_byte_detection = 0; 10744 inhibit_null_byte_detection = 0;
10808 10745
10809 DEFVAR_LISP ("translation-table-for-input", &Vtranslation_table_for_input, 10746 DEFVAR_LISP ("translation-table-for-input", Vtranslation_table_for_input,
10810 doc: /* Char table for translating self-inserting characters. 10747 doc: /* Char table for translating self-inserting characters.
10811 This is applied to the result of input methods, not their input. 10748 This is applied to the result of input methods, not their input.
10812 See also `keyboard-translate-table'. 10749 See also `keyboard-translate-table'.
10813 10750
10814 Use of this variable for character code unification was rendered 10751 Use of this variable for character code unification was rendered