comparison src/console.c @ 442:abe6d1db359e r21-2-36

Import from CVS: tag r21-2-36
author cvs
date Mon, 13 Aug 2007 11:35:02 +0200
parents 8de8e3f6228a
children 576fb035e263
comparison
equal deleted inserted replaced
441:72a7cfa4a488 442:abe6d1db359e
1071 /************************************************************************/ 1071 /************************************************************************/
1072 1072
1073 void 1073 void
1074 syms_of_console (void) 1074 syms_of_console (void)
1075 { 1075 {
1076 INIT_LRECORD_IMPLEMENTATION (console);
1077
1076 DEFSUBR (Fvalid_console_type_p); 1078 DEFSUBR (Fvalid_console_type_p);
1077 DEFSUBR (Fconsole_type_list); 1079 DEFSUBR (Fconsole_type_list);
1078 DEFSUBR (Fcdfw_console); 1080 DEFSUBR (Fcdfw_console);
1079 DEFSUBR (Fselected_console); 1081 DEFSUBR (Fselected_console);
1080 DEFSUBR (Fselect_console); 1082 DEFSUBR (Fselect_console);
1193 Fprovide (intern ("window-system")); 1195 Fprovide (intern ("window-system"));
1194 #endif 1196 #endif
1195 } 1197 }
1196 1198
1197 /* The docstrings for DEFVAR_* are recorded externally by make-docfile. */ 1199 /* The docstrings for DEFVAR_* are recorded externally by make-docfile. */
1198
1199 /* Declaring this stuff as const produces 'Cannot reinitialize' messages
1200 from SunPro C's fix-and-continue feature (a way neato feature that
1201 makes debugging unbelievably more bearable) */
1202 #define DEFVAR_CONSOLE_LOCAL_1(lname, field_name, forward_type, magicfun) do { \ 1200 #define DEFVAR_CONSOLE_LOCAL_1(lname, field_name, forward_type, magicfun) do { \
1203 static CONST_IF_NOT_DEBUG struct symbol_value_forward I_hate_C \ 1201 static const struct symbol_value_forward I_hate_C = \
1204 = { { { symbol_value_forward_lheader_initializer, \ 1202 { /* struct symbol_value_forward */ \
1205 (struct lcrecord_header *) &(console_local_flags.field_name), 69 }, \ 1203 { /* struct symbol_value_magic */ \
1206 forward_type }, magicfun }; \ 1204 { /* struct lcrecord_header */ \
1205 { /* struct lrecord_header */ \
1206 lrecord_type_symbol_value_forward, /* lrecord_type_index */ \
1207 1, /* mark bit */ \
1208 1, /* c_readonly bit */ \
1209 1 /* lisp_readonly bit */ \
1210 }, \
1211 0, /* next */ \
1212 0, /* uid */ \
1213 0 /* free */ \
1214 }, \
1215 &(console_local_flags.field_name), \
1216 forward_type \
1217 }, \
1218 magicfun \
1219 }; \
1220 \
1207 { \ 1221 { \
1208 int offset = ((char *)symbol_value_forward_forward (&I_hate_C) \ 1222 int offset = ((char *)symbol_value_forward_forward (&I_hate_C) \
1209 - (char *)&console_local_flags); \ 1223 - (char *)&console_local_flags); \
1210 \ 1224 \
1211 defvar_magic (lname, &I_hate_C); \ 1225 defvar_magic (lname, &I_hate_C); \
1391 When this value cannot be determined or would be meaningless (on non-TTY 1405 When this value cannot be determined or would be meaningless (on non-TTY
1392 consoles, for example), it is set to nil. 1406 consoles, for example), it is set to nil.
1393 */ ); 1407 */ );
1394 #endif 1408 #endif
1395 1409
1396 /* While this should be CONST it can't be because some things 1410 /* While this should be const it can't be because some things
1397 (i.e. edebug) do manipulate it. */ 1411 (i.e. edebug) do manipulate it. */
1398 DEFVAR_CONSOLE_LOCAL ("defining-kbd-macro", defining_kbd_macro /* 1412 DEFVAR_CONSOLE_LOCAL ("defining-kbd-macro", defining_kbd_macro /*
1399 Non-nil while a console macro is being defined. Don't set this! 1413 Non-nil while a keyboard macro is being defined. Don't set this!
1400 */ ); 1414 */ );
1401 1415
1402 DEFVAR_CONSOLE_LOCAL ("last-kbd-macro", last_kbd_macro /* 1416 DEFVAR_CONSOLE_LOCAL ("last-kbd-macro", last_kbd_macro /*
1403 Last kbd macro defined, as a vector of events; nil if none defined. 1417 Last keyboard macro defined, as a vector of events; nil if none defined.
1404 */ ); 1418 */ );
1405 1419
1406 DEFVAR_CONSOLE_LOCAL ("prefix-arg", prefix_arg /* 1420 DEFVAR_CONSOLE_LOCAL ("prefix-arg", prefix_arg /*
1407 The value of the prefix argument for the next editing command. 1421 The value of the prefix argument for the next editing command.
1408 It may be a number, or the symbol `-' for just a minus sign as arg, 1422 It may be a number, or the symbol `-' for just a minus sign as arg,