comparison src/lisp.h @ 5139:a48ef26d87ee

Clean up prototypes for Lisp variables/symbols. Put decls for them with the other stuff related to the file they're in. In the process, fix a few places with incorrect initialization of symbols and variables. -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-03-12 Ben Wing <ben@xemacs.org> * lisp.h: * lisp.h (redo-symbols): Removed. Put the Lisp variables and symbols where they belong, with other stuff related to the file they're in. * event-Xt.c (THIS_IS_X): * event-Xt.c (syms_of_event_Xt): * event-Xt.c (reinit_vars_of_event_Xt): * event-gtk.c: * event-gtk.c (syms_of_event_gtk): * event-gtk.c (reinit_vars_of_event_gtk): * event-stream.c: * event-stream.c (syms_of_event_stream): * event-stream.c (reinit_vars_of_event_stream): * events.c (reinit_vars_of_events): * events.c (vars_of_events): `sans-modifiers' was defsymbol'ed more than once. Move it to events-stream.c. `self-insert-command' was defsymbol'ed more than once. Vevent_resource should be staticpro_nodump()ed as it's declared in a reinit_*() method. * lread.c (vars_of_lread): Vfile_domain wasn't staticpro'ed. * minibuf.c: * minibuf.c (reinit_complex_vars_of_minibuf): Vminibuffer_zero and Vecho_area_buffer weren't staticpro'ed.
author Ben Wing <ben@xemacs.org>
date Fri, 12 Mar 2010 20:23:50 -0600
parents 4a6b680a9577
children e5380fdaf8f1
comparison
equal deleted inserted replaced
5138:6d13ad8ed3b2 5139:a48ef26d87ee
4735 and we want to minimize the number of "dependencies" of one file on 4735 and we want to minimize the number of "dependencies" of one file on
4736 the specifics of such objects. Putting prototypes here minimizes the 4736 the specifics of such objects. Putting prototypes here minimizes the
4737 number of header files that need to be included -- good for a number 4737 number of header files that need to be included -- good for a number
4738 of reasons. --ben */ 4738 of reasons. --ben */
4739 4739
4740 /*--------------- prototypes for various public c functions ------------*/
4741
4742 /* Prototypes for all init/syms_of/vars_of initialization functions. */ 4740 /* Prototypes for all init/syms_of/vars_of initialization functions. */
4743 #include "symsinit.h" 4741 #include "symsinit.h"
4744 4742
4745 BEGIN_C_DECLS 4743 BEGIN_C_DECLS
4746 4744
4896 4894
4897 extern Lisp_Object QSscratch, Qafter_change_function, Qafter_change_functions; 4895 extern Lisp_Object QSscratch, Qafter_change_function, Qafter_change_functions;
4898 extern Lisp_Object Qbefore_change_function, Qbefore_change_functions; 4896 extern Lisp_Object Qbefore_change_function, Qbefore_change_functions;
4899 extern Lisp_Object Qbuffer_or_string_p, Qdefault_directory, Qfirst_change_hook; 4897 extern Lisp_Object Qbuffer_or_string_p, Qdefault_directory, Qfirst_change_hook;
4900 extern Lisp_Object Qpermanent_local, Vafter_change_function; 4898 extern Lisp_Object Qpermanent_local, Vafter_change_function;
4899 extern Lisp_Object Qbuffer_live_p;
4901 extern Lisp_Object Vafter_change_functions, Vbefore_change_function; 4900 extern Lisp_Object Vafter_change_functions, Vbefore_change_function;
4902 extern Lisp_Object Vbefore_change_functions, Vbuffer_alist, Vbuffer_defaults; 4901 extern Lisp_Object Vbefore_change_functions, Vbuffer_alist, Vbuffer_defaults;
4903 extern Lisp_Object Vinhibit_read_only, Vtransient_mark_mode; 4902 extern Lisp_Object Vinhibit_read_only, Vtransient_mark_mode;
4904 4903
4905 /* Defined in bytecode.c */ 4904 /* Defined in bytecode.c */
4911 extern Lisp_Object Qbyte_code, Qinvalid_byte_code; 4910 extern Lisp_Object Qbyte_code, Qinvalid_byte_code;
4912 4911
4913 /* Defined in callint.c */ 4912 /* Defined in callint.c */
4914 EXFUN (Fcall_interactively, 3); 4913 EXFUN (Fcall_interactively, 3);
4915 EXFUN (Fprefix_numeric_value, 1); 4914 EXFUN (Fprefix_numeric_value, 1);
4915 extern Lisp_Object Qcall_interactively;
4916 extern Lisp_Object Qmouse_leave_buffer_hook;
4917 extern Lisp_Object Qread_from_minibuffer;
4918 extern Lisp_Object Vcommand_history;
4919 extern Lisp_Object Vcurrent_prefix_arg;
4920 extern Lisp_Object Vmark_even_if_inactive;
4916 4921
4917 /* Defined in casefiddle.c */ 4922 /* Defined in casefiddle.c */
4918 EXFUN (Fdowncase, 2); 4923 EXFUN (Fdowncase, 2);
4919 EXFUN (Fcanoncase, 2); 4924 EXFUN (Fcanoncase, 2);
4920 EXFUN (Fupcase, 2); 4925 EXFUN (Fupcase, 2);
4925 /* Defined in casetab.c */ 4930 /* Defined in casetab.c */
4926 EXFUN (Fset_standard_case_table, 1); 4931 EXFUN (Fset_standard_case_table, 1);
4927 4932
4928 /* Defined in chartab.c */ 4933 /* Defined in chartab.c */
4929 EXFUN (Freset_char_table, 1); 4934 EXFUN (Freset_char_table, 1);
4935 extern Lisp_Object Qcategory_designator_p;
4936 extern Lisp_Object Qcategory_table_value_p;
4937
4938 /* Defined in cmdloop.c */
4939 extern Lisp_Object Qdisabled_command_hook;
4940 extern Lisp_Object Qreally_early_error_handler;
4941 extern Lisp_Object Qtop_level;
4942 extern Lisp_Object Vdisabled_command_hook;
4930 4943
4931 /* Defined in cmds.c */ 4944 /* Defined in cmds.c */
4932 EXFUN (Fbeginning_of_line, 2); 4945 EXFUN (Fbeginning_of_line, 2);
4933 EXFUN (Fend_of_line, 2); 4946 EXFUN (Fend_of_line, 2);
4934 EXFUN (Fforward_char, 2); 4947 EXFUN (Fforward_char, 2);
4935 EXFUN (Fforward_line, 2); 4948 EXFUN (Fforward_line, 2);
4949 extern Lisp_Object Qself_insert_command;
4950
4951 /* Defined in console.c */
4952 extern Lisp_Object Qconsole_live_p;
4953 extern Lisp_Object Vconsole_list;
4954
4955 /* Defined in console-stream.c */
4956 extern Lisp_Object Vstdio_str;
4936 4957
4937 /* Defined in data.c */ 4958 /* Defined in data.c */
4938 EXFUN (Fadd1, 1); 4959 EXFUN (Fadd1, 1);
4939 EXFUN (Faref, 2); 4960 EXFUN (Faref, 2);
4940 EXFUN (Faset, 3); 4961 EXFUN (Faset, 3);
5007 Qoverflow_error, Qprinting_unreadable_object, Qquit, Qrange_error, 5028 Qoverflow_error, Qprinting_unreadable_object, Qquit, Qrange_error,
5008 Qsetting_constant, Qsingularity_error, Qstack_overflow, 5029 Qsetting_constant, Qsingularity_error, Qstack_overflow,
5009 Qstructure_formation_error, Qtext_conversion_error, Qunderflow_error, 5030 Qstructure_formation_error, Qtext_conversion_error, Qunderflow_error,
5010 Qvoid_function, Qvoid_variable, Qwrong_number_of_arguments, 5031 Qvoid_function, Qvoid_variable, Qwrong_number_of_arguments,
5011 Qwrong_type_argument; 5032 Qwrong_type_argument;
5033 extern Lisp_Object Qcdr;
5034 extern Lisp_Object Qerror_lacks_explanatory_string;
5035 extern Lisp_Object Qfile_error;
5036 extern Lisp_Object Qsequencep;
5012 extern MODULE_API Lisp_Object Qinvalid_argument, Qsyntax_error; 5037 extern MODULE_API Lisp_Object Qinvalid_argument, Qsyntax_error;
5038
5039 /* Defined in device.c */
5040 extern Lisp_Object Qdevice_live_p;
5041
5042 /* Defined in device-x.c */
5043 extern Lisp_Object Vx_initial_argv_list;
5013 5044
5014 /* Defined in dired.c */ 5045 /* Defined in dired.c */
5015 Lisp_Object make_directory_hash_table (const Ibyte *); 5046 Lisp_Object make_directory_hash_table (const Ibyte *);
5016 Lisp_Object wasteful_word_to_lisp (unsigned int); 5047 Lisp_Object wasteful_word_to_lisp (unsigned int);
5017 5048
5021 Lisp_Object unparesseuxify_doc_string (int fd, EMACS_INT position, 5052 Lisp_Object unparesseuxify_doc_string (int fd, EMACS_INT position,
5022 Ibyte *name_nonreloc, 5053 Ibyte *name_nonreloc,
5023 Lisp_Object name_reloc, 5054 Lisp_Object name_reloc,
5024 int standard_doc_file); 5055 int standard_doc_file);
5025 Lisp_Object read_doc_string (Lisp_Object); 5056 Lisp_Object read_doc_string (Lisp_Object);
5057 extern Lisp_Object Vinternal_doc_file_name;
5026 5058
5027 /* Defined in doprnt.c */ 5059 /* Defined in doprnt.c */
5028 Bytecount emacs_doprnt_va (Lisp_Object stream, const Ibyte *format_nonreloc, 5060 Bytecount emacs_doprnt_va (Lisp_Object stream, const Ibyte *format_nonreloc,
5029 Bytecount format_length, Lisp_Object format_reloc, 5061 Bytecount format_length, Lisp_Object format_reloc,
5030 va_list vargs); 5062 va_list vargs);
5093 Lisp_Object save_restriction_save (struct buffer *buf); 5125 Lisp_Object save_restriction_save (struct buffer *buf);
5094 Lisp_Object save_excursion_restore (Lisp_Object); 5126 Lisp_Object save_excursion_restore (Lisp_Object);
5095 Lisp_Object save_restriction_restore (Lisp_Object); 5127 Lisp_Object save_restriction_restore (Lisp_Object);
5096 void widen_buffer (struct buffer *b, int no_clip); 5128 void widen_buffer (struct buffer *b, int no_clip);
5097 int beginning_of_line_p (struct buffer *b, Charbpos pt); 5129 int beginning_of_line_p (struct buffer *b, Charbpos pt);
5098
5099 /* Defined in emacsfns.c */
5100 Lisp_Object save_current_buffer_restore (Lisp_Object); 5130 Lisp_Object save_current_buffer_restore (Lisp_Object);
5131
5132 extern Lisp_Object Qformat;
5133 extern Lisp_Object Qmark;
5134 extern Lisp_Object Qpoint;
5135 extern Lisp_Object Qregion_beginning;
5136 extern Lisp_Object Qregion_end;
5137 extern Lisp_Object Quser_files_and_directories;
5138 extern Lisp_Object Vsystem_name;
5101 5139
5102 /* Defined in emacs.c */ 5140 /* Defined in emacs.c */
5103 EXFUN_NORETURN (Fkill_emacs, 1); 5141 EXFUN_NORETURN (Fkill_emacs, 1);
5104 EXFUN (Frunning_temacs_p, 0); 5142 EXFUN (Frunning_temacs_p, 0);
5105 EXFUN (Fforce_debugging_signal, 1); 5143 EXFUN (Fforce_debugging_signal, 1);
5120 void debug_break (void); 5158 void debug_break (void);
5121 int debug_can_access_memory (const void *ptr, Bytecount len); 5159 int debug_can_access_memory (const void *ptr, Bytecount len);
5122 DECLARE_DOESNT_RETURN (really_abort (void)); 5160 DECLARE_DOESNT_RETURN (really_abort (void));
5123 void zero_out_command_line_status_vars (void); 5161 void zero_out_command_line_status_vars (void);
5124 5162
5163 extern Lisp_Object Qsave_buffers_kill_emacs;
5164 extern Lisp_Object Vcommand_line_args;
5165 extern Lisp_Object Vconfigure_info_directory;
5166 extern Lisp_Object Vconfigure_site_directory;
5167 extern Lisp_Object Vconfigure_site_module_directory;
5168 extern Lisp_Object Vdata_directory;
5169 extern Lisp_Object Vdoc_directory;
5170 extern Lisp_Object Vemacs_major_version;
5171 extern Lisp_Object Vemacs_minor_version;
5172 extern Lisp_Object Vexec_directory;
5173 extern Lisp_Object Vexec_path;
5174 extern Lisp_Object Vinvocation_directory;
5175 extern Lisp_Object Vinvocation_name;
5176 extern Lisp_Object Vmodule_directory;
5177 extern Lisp_Object Vsite_directory;
5178 extern Lisp_Object Vsite_module_directory;
5179
5125 /* Defined in emodules.c */ 5180 /* Defined in emodules.c */
5126 #ifdef HAVE_SHLIB 5181 #ifdef HAVE_SHLIB
5127 EXFUN (Flist_modules, 0); 5182 EXFUN (Flist_modules, 0);
5128 EXFUN (Fload_module, 3); 5183 EXFUN (Fload_module, 3);
5129 extern int unloading_module; 5184 extern int unloading_module;
5130 #endif 5185 #endif
5186 extern Lisp_Object Qdll_error;
5187 extern Lisp_Object Qmodule;
5131 5188
5132 /* Defined in eval.c */ 5189 /* Defined in eval.c */
5133 MODULE_API EXFUN (Fapply, MANY); 5190 MODULE_API EXFUN (Fapply, MANY);
5134 EXFUN (Fbacktrace, 2); 5191 EXFUN (Fbacktrace, 2);
5135 EXFUN (Fcommand_execute, 3); 5192 EXFUN (Fcommand_execute, 3);
5438 void warn_when_safe_lispobj (Lisp_Object, Lisp_Object, Lisp_Object); 5495 void warn_when_safe_lispobj (Lisp_Object, Lisp_Object, Lisp_Object);
5439 MODULE_API void warn_when_safe (Lisp_Object, Lisp_Object, const Ascbyte *, 5496 MODULE_API void warn_when_safe (Lisp_Object, Lisp_Object, const Ascbyte *,
5440 ...) PRINTF_ARGS (3, 4); 5497 ...) PRINTF_ARGS (3, 4);
5441 extern int backtrace_with_internal_sections; 5498 extern int backtrace_with_internal_sections;
5442 5499
5500 extern Lisp_Object Qand_optional;
5501 extern Lisp_Object Qand_rest;
5502 extern Lisp_Object Qautoload;
5503 extern Lisp_Object Qcommandp;
5504 extern Lisp_Object Qdefun;
5505 extern Lisp_Object Qexit;
5506 extern Lisp_Object Qinhibit_quit;
5507 extern Lisp_Object Qinteractive;
5508 extern Lisp_Object Qmacro;
5509 extern Lisp_Object Qprogn;
5510 extern Lisp_Object Qrun_hooks;
5511 extern Lisp_Object Qvalues;
5443 extern Lisp_Object Vdebug_on_error; 5512 extern Lisp_Object Vdebug_on_error;
5444 extern Lisp_Object Vstack_trace_on_error; 5513 extern Lisp_Object Vstack_trace_on_error;
5514 extern Lisp_Object Vautoload_queue;
5515
5516 extern MODULE_API Lisp_Object Vinhibit_quit, Vquit_flag;
5445 5517
5446 /* Defined in event-stream.c */ 5518 /* Defined in event-stream.c */
5447 EXFUN (Faccept_process_output, 3); 5519 EXFUN (Faccept_process_output, 3);
5448 EXFUN (Fadd_timeout, 4); 5520 EXFUN (Fadd_timeout, 4);
5449 EXFUN (Fdisable_timeout, 1); 5521 EXFUN (Fdisable_timeout, 1);
5461 Lisp_Object enqueue_misc_user_event (Lisp_Object, Lisp_Object, Lisp_Object); 5533 Lisp_Object enqueue_misc_user_event (Lisp_Object, Lisp_Object, Lisp_Object);
5462 Lisp_Object enqueue_misc_user_event_pos (Lisp_Object, Lisp_Object, 5534 Lisp_Object enqueue_misc_user_event_pos (Lisp_Object, Lisp_Object,
5463 Lisp_Object, int, int, int, int); 5535 Lisp_Object, int, int, int, int);
5464 extern int modifier_keys_are_sticky; 5536 extern int modifier_keys_are_sticky;
5465 5537
5538 extern Lisp_Object Qdisabled;
5539 extern Lisp_Object Qsans_modifiers;
5540 extern Lisp_Object Qself_insert_defer_undo;
5541 extern Lisp_Object Vcontrolling_terminal;
5542 extern Lisp_Object Vcurrent_mouse_event;
5543 extern Lisp_Object Vlast_command;
5544 extern Lisp_Object Vlast_command_char;
5545 extern Lisp_Object Vlast_command_event;
5546 extern Lisp_Object Vlast_input_event;
5547 extern Lisp_Object Vrecent_keys_ring;
5548 extern Lisp_Object Vthis_command_keys;
5549 extern Lisp_Object Vunread_command_event;
5550
5466 /* Defined in event-Xt.c */ 5551 /* Defined in event-Xt.c */
5467 void signal_special_Xt_user_event (Lisp_Object, Lisp_Object, Lisp_Object); 5552 void signal_special_Xt_user_event (Lisp_Object, Lisp_Object, Lisp_Object);
5468 5553
5469 5554
5470 /* Defined in events.c */ 5555 /* Defined in events.c */
5475 Lisp_Object allocate_event (void); 5560 Lisp_Object allocate_event (void);
5476 5561
5477 EXFUN (Fevent_x_pixel, 1); 5562 EXFUN (Fevent_x_pixel, 1);
5478 EXFUN (Fevent_y_pixel, 1); 5563 EXFUN (Fevent_y_pixel, 1);
5479 5564
5565 extern Lisp_Object Qevent_live_p;
5566
5567
5568 /* Defined in extents.c */
5569 extern Lisp_Object Qend_open;
5570 extern Lisp_Object Qextent_live_p;
5571 extern Lisp_Object Qstart_open;
5572
5573 /* Defined in faces.c */
5574 extern Lisp_Object Qbackground;
5575 extern Lisp_Object Qbackground_pixmap;
5576 extern Lisp_Object Qblinking;
5577 extern Lisp_Object Qdim;
5578 extern Lisp_Object Qdisplay_table;
5579 extern Lisp_Object Qforeground;
5580 extern Lisp_Object Qunderline;
5480 5581
5481 /* Defined in file-coding.c */ 5582 /* Defined in file-coding.c */
5482 EXFUN (Fcoding_category_list, 0); 5583 EXFUN (Fcoding_category_list, 0);
5483 EXFUN (Fcoding_category_system, 1); 5584 EXFUN (Fcoding_category_system, 1);
5484 EXFUN (Fcoding_priority_list, 0); 5585 EXFUN (Fcoding_priority_list, 0);
5561 Lisp_Object lisp_strerror (int); 5662 Lisp_Object lisp_strerror (int);
5562 Lisp_Object expand_and_dir_to_file (Lisp_Object, Lisp_Object); 5663 Lisp_Object expand_and_dir_to_file (Lisp_Object, Lisp_Object);
5563 int internal_delete_file (Lisp_Object); 5664 int internal_delete_file (Lisp_Object);
5564 Ibyte *find_end_of_directory_component (const Ibyte *path, 5665 Ibyte *find_end_of_directory_component (const Ibyte *path,
5565 Bytecount len); 5666 Bytecount len);
5667
5668 extern Lisp_Object Qfile_name_sans_extension;
5669 extern Lisp_Object Vdirectory_sep_char;
5566 5670
5567 /* Defined in filelock.c */ 5671 /* Defined in filelock.c */
5568 EXFUN (Funlock_buffer, 0); 5672 EXFUN (Funlock_buffer, 0);
5569 5673
5570 void lock_file (Lisp_Object); 5674 void lock_file (Lisp_Object);
5673 Lisp_Object add_suffix_to_symbol (Lisp_Object symbol, 5777 Lisp_Object add_suffix_to_symbol (Lisp_Object symbol,
5674 const Ascbyte *ascii_string); 5778 const Ascbyte *ascii_string);
5675 Lisp_Object add_prefix_to_symbol (const Ascbyte *ascii_string, 5779 Lisp_Object add_prefix_to_symbol (const Ascbyte *ascii_string,
5676 Lisp_Object symbol); 5780 Lisp_Object symbol);
5677 5781
5782 extern Lisp_Object Qidentity;
5783 extern Lisp_Object Qstring_lessp;
5784 extern Lisp_Object Qyes_or_no_p;
5785 extern Lisp_Object Vfeatures;
5786
5787 /* Defined in frame.c */
5788 extern Lisp_Object Qframe_live_p;
5789
5678 /* Defined in free-hook.c */ 5790 /* Defined in free-hook.c */
5679 EXFUN (Freally_free, 1); 5791 EXFUN (Freally_free, 1);
5680 5792
5793 /* Defined in general.c */
5794 #define SYMBOL(fou) extern Lisp_Object fou
5795 #define SYMBOL_MODULE_API(fou) extern MODULE_API Lisp_Object fou
5796 #define SYMBOL_KEYWORD(la_cle_est_fou) extern Lisp_Object la_cle_est_fou
5797 #define SYMBOL_GENERAL(tout_le_monde, est_fou) \
5798 extern Lisp_Object tout_le_monde
5799
5800 #include "general-slots.h"
5801
5802 #undef SYMBOL
5803 #undef SYMBOL_MODULE_API
5804 #undef SYMBOL_KEYWORD
5805 #undef SYMBOL_GENERAL
5806
5681 /* Defined in glyphs.c */ 5807 /* Defined in glyphs.c */
5682 EXFUN (Fmake_glyph_internal, 1); 5808 EXFUN (Fmake_glyph_internal, 1);
5683 5809
5684 Error_Behavior decode_error_behavior_flag (Lisp_Object); 5810 Error_Behavior decode_error_behavior_flag (Lisp_Object);
5685 Lisp_Object encode_error_behavior_flag (Error_Behavior); 5811 Lisp_Object encode_error_behavior_flag (Error_Behavior);
5812
5813 extern Lisp_Object Qbuffer_glyph_p;
5814 extern Lisp_Object Qcolor_pixmap_image_instance_p;
5815 extern Lisp_Object Qicon_glyph_p;
5816 extern Lisp_Object Qmono_pixmap_image_instance_p;
5817 extern Lisp_Object Qnothing_image_instance_p;
5818 extern Lisp_Object Qpointer_glyph_p;
5819 extern Lisp_Object Qpointer_image_instance_p;
5820 extern Lisp_Object Qsubwindow;
5821 extern Lisp_Object Qsubwindow_image_instance_p;
5822 extern Lisp_Object Qtext_image_instance_p;
5686 5823
5687 /* Defined in glyphs-shared.c */ 5824 /* Defined in glyphs-shared.c */
5688 void shared_resource_validate (Lisp_Object instantiator); 5825 void shared_resource_validate (Lisp_Object instantiator);
5689 Lisp_Object shared_resource_normalize (Lisp_Object inst, 5826 Lisp_Object shared_resource_normalize (Lisp_Object inst,
5690 Lisp_Object console_type, 5827 Lisp_Object console_type,
5691 Lisp_Object dest_mask, 5828 Lisp_Object dest_mask,
5692 Lisp_Object tag); 5829 Lisp_Object tag);
5693 extern Lisp_Object Q_resource_type, Q_resource_id; 5830 extern Lisp_Object Q_resource_type, Q_resource_id;
5694 5831
5832 /* Defined in glyphs-widget.c */
5833 extern Lisp_Object Qlayout;
5834 extern Lisp_Object Qnative_layout;
5835
5695 /* Defined in gui.c */ 5836 /* Defined in gui.c */
5696 DECLARE_DOESNT_RETURN (gui_error (const Ascbyte *reason, 5837 DECLARE_DOESNT_RETURN (gui_error (const Ascbyte *reason,
5697 Lisp_Object frob)); 5838 Lisp_Object frob));
5698 DECLARE_DOESNT_RETURN (gui_error_2 (const Ascbyte *reason, 5839 DECLARE_DOESNT_RETURN (gui_error_2 (const Ascbyte *reason,
5699 Lisp_Object frob0, Lisp_Object frob1)); 5840 Lisp_Object frob0, Lisp_Object frob1));
5841 extern Lisp_Object Qgui_error;
5842
5700 /* Defined in indent.c */ 5843 /* Defined in indent.c */
5701 EXFUN (Findent_to, 3); 5844 EXFUN (Findent_to, 3);
5702 EXFUN (Fvertical_motion, 3); 5845 EXFUN (Fvertical_motion, 3);
5703 5846
5704 int byte_spaces_at_point (struct buffer *, Bytebpos); 5847 int byte_spaces_at_point (struct buffer *, Bytebpos);
5749 while (0) 5892 while (0)
5750 #else /*! LOADHIST */ 5893 #else /*! LOADHIST */
5751 # define LOADHIST_ATTACH(x) 5894 # define LOADHIST_ATTACH(x)
5752 #endif /*! LOADHIST */ 5895 #endif /*! LOADHIST */
5753 5896
5897 extern Lisp_Object Qfeaturep;
5898 extern Lisp_Object Qload;
5899 extern Lisp_Object Qread_char;
5900 extern Lisp_Object Qstandard_input;
5901 extern Lisp_Object Vcurrent_load_list;
5902 extern Lisp_Object Vfile_domain;
5903 extern Lisp_Object Vload_file_name_internal;
5904 extern Lisp_Object Vload_history;
5905 extern Lisp_Object Vload_path;
5906 extern Lisp_Object Vstandard_input;
5907
5754 /* Defined in macros.c */ 5908 /* Defined in macros.c */
5755 EXFUN (Fexecute_kbd_macro, 2); 5909 EXFUN (Fexecute_kbd_macro, 2);
5910
5911 extern Lisp_Object Vexecuting_macro;
5756 5912
5757 /* Defined in marker.c */ 5913 /* Defined in marker.c */
5758 EXFUN (Fcopy_marker, 2); 5914 EXFUN (Fcopy_marker, 2);
5759 EXFUN (Fmake_marker, 0); 5915 EXFUN (Fmake_marker, 0);
5760 EXFUN (Fmarker_buffer, 1); 5916 EXFUN (Fmarker_buffer, 1);
5772 #ifdef MEMORY_USAGE_STATS 5928 #ifdef MEMORY_USAGE_STATS
5773 int compute_buffer_marker_usage (struct buffer *, struct overhead_stats *); 5929 int compute_buffer_marker_usage (struct buffer *, struct overhead_stats *);
5774 #endif 5930 #endif
5775 void init_buffer_markers (struct buffer *b); 5931 void init_buffer_markers (struct buffer *b);
5776 void uninit_buffer_markers (struct buffer *b); 5932 void uninit_buffer_markers (struct buffer *b);
5933
5934 /* Defined in menubar.c */
5935 extern Lisp_Object Qactivate_menubar_hook;
5936 extern Lisp_Object Qcurrent_menubar;
5937 extern Lisp_Object Vactivate_menubar_hook;
5938 extern Lisp_Object Vblank_menubar;
5939 extern Lisp_Object Vmenubar_configuration;
5777 5940
5778 /* Defined in minibuf.c */ 5941 /* Defined in minibuf.c */
5779 extern int minibuf_level; 5942 extern int minibuf_level;
5780 Charcount scmp_1 (const Ibyte *, const Ibyte *, Charcount, int); 5943 Charcount scmp_1 (const Ibyte *, const Ibyte *, Charcount, int);
5781 #define scmp(s1, s2, len) scmp_1 (s1, s2, len, completion_ignore_case) 5944 #define scmp(s1, s2, len) scmp_1 (s1, s2, len, completion_ignore_case)
5797 MODULE_API void message (const char *, ...) PRINTF_ARGS (1, 2); 5960 MODULE_API void message (const char *, ...) PRINTF_ARGS (1, 2);
5798 void message_append (const char *, ...) PRINTF_ARGS (1, 2); 5961 void message_append (const char *, ...) PRINTF_ARGS (1, 2);
5799 void message_no_translate (const char *, ...) PRINTF_ARGS (1, 2); 5962 void message_no_translate (const char *, ...) PRINTF_ARGS (1, 2);
5800 void clear_message (void); 5963 void clear_message (void);
5801 5964
5965 extern Lisp_Object Qcompletion_ignore_case;
5966 extern Lisp_Object Vecho_area_buffer;
5967 extern Lisp_Object Vminibuf_preprompt;
5968 extern Lisp_Object Vminibuf_prompt;
5969 extern Lisp_Object Vminibuffer_zero;
5970
5802 /* Defined in mule-charset.c */ 5971 /* Defined in mule-charset.c */
5803 EXFUN (Fmake_charset, 3); 5972 EXFUN (Fmake_charset, 3);
5804 5973
5805 extern Lisp_Object Ql2r, Qr2l; 5974 extern Lisp_Object Ql2r, Qr2l;
5975 extern Lisp_Object Qdirection;
5976 extern Lisp_Object Qfinal;
5977 extern Lisp_Object Qgraphic;
5978 extern Lisp_Object Qlong_name;
5979 extern Lisp_Object Qregistries;
5980 extern Lisp_Object Qreverse_direction_charset;
5981 extern Lisp_Object Qshort_name;
5982
5983 /* Defined in nt.c */
5984 extern Lisp_Object Vmswindows_get_true_file_attributes;
5806 5985
5807 /* Defined in print.c */ 5986 /* Defined in print.c */
5808 EXFUN (Fdisplay_error, 2); 5987 EXFUN (Fdisplay_error, 2);
5809 EXFUN (Ferror_message_string, 1); 5988 EXFUN (Ferror_message_string, 1);
5810 EXFUN (Fprin1, 2); 5989 EXFUN (Fprin1, 2);
5877 MODULE_API DECLARE_DOESNT_RETURN (printing_unreadable_object (const CIbyte *, 6056 MODULE_API DECLARE_DOESNT_RETURN (printing_unreadable_object (const CIbyte *,
5878 ...)) 6057 ...))
5879 PRINTF_ARGS (1, 2); 6058 PRINTF_ARGS (1, 2);
5880 DECLARE_DOESNT_RETURN (printing_unreadable_lcrecord (Lisp_Object obj, 6059 DECLARE_DOESNT_RETURN (printing_unreadable_lcrecord (Lisp_Object obj,
5881 const Ibyte *name)); 6060 const Ibyte *name));
6061
6062 extern Lisp_Object Qexternal_debugging_output;
6063 extern Lisp_Object Qprint_length;
6064 extern Lisp_Object Qprint_string_length;
6065 extern Lisp_Object Qstandard_output;
6066 extern Lisp_Object Vprint_length;
6067 extern Lisp_Object Vprint_level;
6068 extern Lisp_Object Vstandard_output;
6069
6070 /* Defined in process.c */
6071 extern Lisp_Object Qnetwork_error;
6072 extern MODULE_API Lisp_Object Qprocess_error;
6073 extern Lisp_Object Vprocess_environment;
6074 extern Lisp_Object Vshell_file_name;
5882 6075
5883 /* Defined in rangetab.c */ 6076 /* Defined in rangetab.c */
5884 EXFUN (Fclear_range_table, 1); 6077 EXFUN (Fclear_range_table, 1);
5885 EXFUN (Fget_range_table, 3); 6078 EXFUN (Fget_range_table, 3);
5886 EXFUN (Fmake_range_table, 1); 6079 EXFUN (Fmake_range_table, 1);
5939 EXFUN (Fding, 3); 6132 EXFUN (Fding, 3);
5940 6133
5941 void init_device_sound (struct device *); 6134 void init_device_sound (struct device *);
5942 DECLARE_DOESNT_RETURN (report_sound_error (const Ascbyte *, Lisp_Object)); 6135 DECLARE_DOESNT_RETURN (report_sound_error (const Ascbyte *, Lisp_Object));
5943 6136
6137 extern Lisp_Object Qsound_error;
6138 extern Lisp_Object Vsynchronous_sounds;
6139
5944 /* Defined in specifier.c */ 6140 /* Defined in specifier.c */
5945 EXFUN (Fadd_spec_to_specifier, 5); 6141 EXFUN (Fadd_spec_to_specifier, 5);
5946 EXFUN (Fspecifier_spec_list, 4); 6142 EXFUN (Fspecifier_spec_list, 4);
5947 6143
5948 Lisp_Object specifier_instance (Lisp_Object, Lisp_Object, Lisp_Object, 6144 Lisp_Object specifier_instance (Lisp_Object, Lisp_Object, Lisp_Object,
5981 Lisp_Object find_symbol_value_quickly (Lisp_Object, int); 6177 Lisp_Object find_symbol_value_quickly (Lisp_Object, int);
5982 Lisp_Object top_level_value (Lisp_Object); 6178 Lisp_Object top_level_value (Lisp_Object);
5983 void reject_constant_symbols (Lisp_Object sym, Lisp_Object newval, 6179 void reject_constant_symbols (Lisp_Object sym, Lisp_Object newval,
5984 int function_p, 6180 int function_p,
5985 Lisp_Object follow_past_lisp_magic); 6181 Lisp_Object follow_past_lisp_magic);
6182
6183 extern Lisp_Object Qconst_specifier;
6184 extern Lisp_Object Qmakunbound;
6185 extern Lisp_Object Qset;
6186 extern Lisp_Object Qvariable_documentation;
6187 extern Lisp_Object Qvariable_domain;
6188 extern MODULE_API Lisp_Object Qt, Qunbound;
6189 extern Lisp_Object Vobarray;
5986 6190
5987 /* Defined in syntax.c */ 6191 /* Defined in syntax.c */
5988 Charbpos scan_words (struct buffer *, Charbpos, int); 6192 Charbpos scan_words (struct buffer *, Charbpos, int);
5989 EXFUN (Fchar_syntax, 2); 6193 EXFUN (Fchar_syntax, 2);
5990 EXFUN (Fforward_word, 2); 6194 EXFUN (Fforward_word, 2);
6379 extern alloca_convert_vals_dynarr *active_alloca_convert; 6583 extern alloca_convert_vals_dynarr *active_alloca_convert;
6380 6584
6381 MODULE_API int find_pos_of_existing_active_alloca_convert (const char * 6585 MODULE_API int find_pos_of_existing_active_alloca_convert (const char *
6382 srctext); 6586 srctext);
6383 6587
6588 /* Defined in undo.c */
6589 extern Lisp_Object Qinhibit_read_only;
6590
6384 /* Defined in unicode.c */ 6591 /* Defined in unicode.c */
6385 extern const struct sized_memory_description to_unicode_description; 6592 extern const struct sized_memory_description to_unicode_description;
6386 extern const struct sized_memory_description from_unicode_description; 6593 extern const struct sized_memory_description from_unicode_description;
6387 void init_charset_unicode_tables (Lisp_Object charset); 6594 void init_charset_unicode_tables (Lisp_Object charset);
6388 void free_charset_unicode_tables (Lisp_Object charset); 6595 void free_charset_unicode_tables (Lisp_Object charset);
6416 #endif 6623 #endif
6417 6624
6418 /* Defined in vm-limit.c */ 6625 /* Defined in vm-limit.c */
6419 void memory_warnings (void *, void (*) (const char *)); 6626 void memory_warnings (void *, void (*) (const char *));
6420 6627
6421 /*--------------- prototypes for constant symbols ------------*/ 6628 /* Defined in win32.c */
6422 6629 extern Lisp_Object Vmswindows_downcase_file_names;
6423 /* #### We should get rid of this and put the prototypes back up there in 6630
6424 #### the per-file stuff, where they belong. */ 6631 /* Defined in window.c */
6425 6632 extern Lisp_Object Qwindow_live_p;
6426 /* Use the following when you have to add a bunch of symbols. */
6427
6428 /*
6429
6430 (defun redo-symbols (beg end)
6431 "Snarf any symbols out of the region and print them into a temporary buffer,
6432 which is displayed when the function finishes. The symbols are laid out with
6433 `extern Lisp_Object ' before each one, with as many as can fit on one line
6434 \(the maximum line width is controlled by the constant `max-line-length' in the
6435 code)."
6436 (interactive "r")
6437 (save-excursion
6438 (goto-char beg)
6439 (let (syms)
6440 (while (re-search-forward "\\s-\\(Q[A-Za-z_0-9]+\\)" end t)
6441 (push (match-string 1) syms))
6442 (setq syms (sort syms #'string-lessp))
6443 (with-output-to-temp-buffer "*Symbols*"
6444 (let* ((col 0)
6445 (start "extern Lisp_Object ")
6446 (startlen (length start))
6447 ;; with a default-width frame of 80 chars, you can only fit
6448 ;; 79 before wrapping. you can see this to a lower value if
6449 ;; you don't want it right up against the right margin.
6450 (max-line-length 79))
6451 (dolist (sym syms)
6452 (cond (;; if something already on line (this will always be the
6453 ;; case except the very first iteration), see what
6454 ;; space we've got. (need to take into account 2
6455 ;; for the comma+space, 1 for the semicolon at the
6456 ;; end.) if enough space, do it.
6457 (and (> col 0) (< (+ col (length sym) 2)
6458 (1- max-line-length)))
6459 (princ ", ")
6460 (princ sym)
6461 (incf col 2)
6462 (incf col (length sym)))
6463 (t
6464 ;; either we're first iteration or we ran out of space.
6465 ;; if the latter, terminate the previous line. this
6466 ;; loop is written on purpose so that it always prints
6467 ;; at least one item, even if that would go over.
6468 (when (> col 0)
6469 (princ ";\n")
6470 (setq col 0))
6471 (princ start)
6472 (incf col startlen)
6473 (princ sym)
6474 (incf col (length sym)))))
6475 ;; finally terminate the last line.
6476 (princ ";\n"))))))
6477
6478 */
6479
6480 extern Lisp_Object Qactivate_menubar_hook, Qand_optional, Qand_rest, Qautoload,
6481 Qbackground, Qbackground_pixmap, Qblinking, Qbuffer_glyph_p, Qbuffer_live_p,
6482 Qcall_interactively, Qcategory_designator_p,
6483 Qcategory_table_value_p, Qcdr, Qcolor_pixmap_image_instance_p, Qcommandp,
6484 Qcompletion_ignore_case, Qconsole_live_p, Qconst_specifier, Qcurrent_menubar,
6485 Qdefun, Qdevice_live_p, Qdim, Qdirection, Qdisabled, Qdisabled_command_hook,
6486 Qdisplay_table, Qdll_error, Qend_open, Qerror_lacks_explanatory_string,
6487 Qevent_live_p, Qexit, Qextent_live_p, Qexternal_debugging_output, Qfeaturep,
6488 Qfile_error, Qfile_name_sans_extension, Qfinal, Qforeground, Qformat,
6489 Qframe_live_p, Qgraphic, Qgui_error, Qicon_glyph_p, Qidentity, Qinhibit_quit,
6490 Qinhibit_read_only, Qinteractive, Qlayout, Qload, Qlong_name, Qmacro,
6491 Qmakunbound, Qmark, Qmodule, Qmono_pixmap_image_instance_p,
6492 Qmouse_leave_buffer_hook, Qnative_layout, Qnetwork_error,
6493 Qnothing_image_instance_p, Qpoint, Qpointer_glyph_p,
6494 Qpointer_image_instance_p, Qprint_length, Qprint_string_length, Qprogn,
6495 Qread_char, Qread_from_minibuffer, Qreally_early_error_handler,
6496 Qregion_beginning, Qregion_end, Qregistries, Qreverse_direction_charset,
6497 Qrun_hooks, Qsans_modifiers, Qsave_buffers_kill_emacs, Qself_insert_command,
6498 Qself_insert_defer_undo, Qsequencep, Qset, Qshort_name, Qsound_error,
6499 Qstandard_input, Qstandard_output, Qstart_open, Qstring_lessp, Qsubwindow,
6500 Qsubwindow_image_instance_p, Qtext_image_instance_p, Qtop_level, Qunderline,
6501 Quser_files_and_directories, Qvalues, Qvariable_documentation,
6502 Qvariable_domain, Qwindow_live_p, Qyes_or_no_p;
6503
6504 extern MODULE_API Lisp_Object Qprocess_error, Qt, Qunbound;
6505
6506 #define SYMBOL(fou) extern Lisp_Object fou
6507 #define SYMBOL_MODULE_API(fou) extern MODULE_API Lisp_Object fou
6508 #define SYMBOL_KEYWORD(la_cle_est_fou) extern Lisp_Object la_cle_est_fou
6509 #define SYMBOL_GENERAL(tout_le_monde, est_fou) \
6510 extern Lisp_Object tout_le_monde
6511
6512 #include "general-slots.h"
6513
6514 #undef SYMBOL
6515 #undef SYMBOL_MODULE_API
6516 #undef SYMBOL_KEYWORD
6517 #undef SYMBOL_GENERAL
6518
6519 /*--------------- prototypes for variables of type Lisp_Object ------------*/
6520
6521 /* #### We should get rid of this and put the prototypes back up there in
6522 #### the per-file stuff, where they belong. */
6523
6524 extern Lisp_Object Vactivate_menubar_hook;
6525 extern Lisp_Object Vautoload_queue, Vblank_menubar;
6526 extern Lisp_Object Vcommand_history;
6527 extern Lisp_Object Vcommand_line_args, Vconfigure_info_directory;
6528 extern Lisp_Object Vconfigure_site_directory, Vconfigure_site_module_directory;
6529 extern Lisp_Object Vconsole_list, Vcontrolling_terminal;
6530 extern Lisp_Object Vcurrent_load_list;
6531 extern Lisp_Object Vcurrent_mouse_event, Vcurrent_prefix_arg, Vdata_directory;
6532 extern Lisp_Object Vdirectory_sep_char, Vdisabled_command_hook;
6533 extern Lisp_Object Vdoc_directory, Vinternal_doc_file_name;
6534 extern Lisp_Object Vecho_area_buffer, Vemacs_major_version;
6535 extern Lisp_Object Vemacs_minor_version, Vexec_directory, Vexec_path;
6536 extern Lisp_Object Vexecuting_macro, Vfeatures, Vfile_domain;
6537 extern Lisp_Object Vinvocation_directory, Vinvocation_name;
6538 extern Lisp_Object Vlast_command, Vlast_command_char;
6539 extern Lisp_Object Vlast_command_event, Vlast_input_event;
6540 extern Lisp_Object Vload_file_name_internal, Vload_history;
6541 extern Lisp_Object Vload_path, Vmark_even_if_inactive, Vmenubar_configuration;
6542 extern Lisp_Object Vminibuf_preprompt, Vminibuf_prompt, Vminibuffer_zero;
6543 extern Lisp_Object Vmodule_directory, Vmswindows_downcase_file_names;
6544 extern Lisp_Object Vmswindows_get_true_file_attributes, Vobarray;
6545 extern Lisp_Object Vprint_length, Vprint_level, Vprocess_environment;
6546 extern Lisp_Object Vrecent_keys_ring, Vshell_file_name, Vsite_directory;
6547 extern Lisp_Object Vsite_module_directory;
6548 extern Lisp_Object Vstandard_input, Vstandard_output, Vstdio_str;
6549 extern Lisp_Object Vsynchronous_sounds, Vsystem_name;
6550 extern Lisp_Object Vthis_command_keys, Vunread_command_event;
6551 extern Lisp_Object Vx_initial_argv_list;
6552
6553 extern MODULE_API Lisp_Object Vinhibit_quit, Vquit_flag;
6554 6633
6555 END_C_DECLS 6634 END_C_DECLS
6556 6635
6557 #endif /* INCLUDED_lisp_h_ */ 6636 #endif /* INCLUDED_lisp_h_ */