aboutsummaryrefslogtreecommitdiffstats
path: root/src/keyboard.c
diff options
context:
space:
mode:
authorTom Tromey2011-02-16 09:35:16 -0700
committerTom Tromey2011-02-16 09:35:16 -0700
commit1344aad491d0951920efef6cae1c6934f92cd59b (patch)
treed251eb2e3842b09f1d269e0586668aa0e509f211 /src/keyboard.c
parenteb4916d71a6a4293b1dd51deb19cf267bb62b7ae (diff)
downloademacs-1344aad491d0951920efef6cae1c6934f92cd59b.tar.gz
emacs-1344aad491d0951920efef6cae1c6934f92cd59b.zip
Hide implementation of `struct kboard'
* callint.c (Fcall_interactively): Update. * doc.c (Fsubstitute_command_keys): Update. * cmds.c (Fself_insert_command): Update. * keymap.c (Fcurrent_active_maps, Fkey_binding) (Fdescribe_buffer_bindings): Update. * macros.c (Fstart_kbd_macro, end_kbd_macro, Fend_kbd_macro) (store_kbd_macro_char, Fcall_last_kbd_macro, Fexecute_kbd_macro): Update. * keyboard.c (echo_char, echo_dash, echo_now, cancel_echoing) (echo_length, echo_truncate, cmd_error, command_loop_1) (read_char, kbd_buffer_store_event_hold, make_lispy_event) (menu_bar_items, tool_bar_items, read_char_minibuf_menu_prompt) (read_key_sequence, Fcommand_execute, Fexecute_extended_command) (Fdiscard_input, init_kboard, init_keyboard, mark_kboards): Update. * xfns.c (Fx_create_frame): Update. * xterm.c (x_connection_closed, x_term_init): Update. * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN, init_tty): Update. * window.c (window_scroll_pixel_based, window_scroll_line_based): Update. * frame.c (make_frame_without_minibuffer, Fhandle_switch_frame) (delete_frame): Update. * lisp.h (DEFVAR_KBOARD): Update for change to field names. * keyboard.h (struct kboard): Rename all Lisp_Object fields. (KBOARD_INTERNAL_FIELD, KVAR): New macros.
Diffstat (limited to 'src/keyboard.c')
-rw-r--r--src/keyboard.c240
1 files changed, 120 insertions, 120 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index a1d851408e3..e9c6d508fa2 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -461,7 +461,7 @@ echo_char (Lisp_Object c)
461 char *ptr = buffer; 461 char *ptr = buffer;
462 Lisp_Object echo_string; 462 Lisp_Object echo_string;
463 463
464 echo_string = current_kboard->echo_string; 464 echo_string = KVAR (current_kboard, echo_string);
465 465
466 /* If someone has passed us a composite event, use its head symbol. */ 466 /* If someone has passed us a composite event, use its head symbol. */
467 c = EVENT_HEAD (c); 467 c = EVENT_HEAD (c);
@@ -528,7 +528,7 @@ echo_char (Lisp_Object c)
528 else if (STRINGP (echo_string)) 528 else if (STRINGP (echo_string))
529 echo_string = concat2 (echo_string, build_string (" ")); 529 echo_string = concat2 (echo_string, build_string (" "));
530 530
531 current_kboard->echo_string 531 KVAR (current_kboard, echo_string)
532 = concat2 (echo_string, make_string (buffer, ptr - buffer)); 532 = concat2 (echo_string, make_string (buffer, ptr - buffer));
533 533
534 echo_now (); 534 echo_now ();
@@ -542,31 +542,31 @@ void
542echo_dash (void) 542echo_dash (void)
543{ 543{
544 /* Do nothing if not echoing at all. */ 544 /* Do nothing if not echoing at all. */
545 if (NILP (current_kboard->echo_string)) 545 if (NILP (KVAR (current_kboard, echo_string)))
546 return; 546 return;
547 547
548 if (this_command_key_count == 0) 548 if (this_command_key_count == 0)
549 return; 549 return;
550 550
551 if (!current_kboard->immediate_echo 551 if (!current_kboard->immediate_echo
552 && SCHARS (current_kboard->echo_string) == 0) 552 && SCHARS (KVAR (current_kboard, echo_string)) == 0)
553 return; 553 return;
554 554
555 /* Do nothing if we just printed a prompt. */ 555 /* Do nothing if we just printed a prompt. */
556 if (current_kboard->echo_after_prompt 556 if (current_kboard->echo_after_prompt
557 == SCHARS (current_kboard->echo_string)) 557 == SCHARS (KVAR (current_kboard, echo_string)))
558 return; 558 return;
559 559
560 /* Do nothing if we have already put a dash at the end. */ 560 /* Do nothing if we have already put a dash at the end. */
561 if (SCHARS (current_kboard->echo_string) > 1) 561 if (SCHARS (KVAR (current_kboard, echo_string)) > 1)
562 { 562 {
563 Lisp_Object last_char, prev_char, idx; 563 Lisp_Object last_char, prev_char, idx;
564 564
565 idx = make_number (SCHARS (current_kboard->echo_string) - 2); 565 idx = make_number (SCHARS (KVAR (current_kboard, echo_string)) - 2);
566 prev_char = Faref (current_kboard->echo_string, idx); 566 prev_char = Faref (KVAR (current_kboard, echo_string), idx);
567 567
568 idx = make_number (SCHARS (current_kboard->echo_string) - 1); 568 idx = make_number (SCHARS (KVAR (current_kboard, echo_string)) - 1);
569 last_char = Faref (current_kboard->echo_string, idx); 569 last_char = Faref (KVAR (current_kboard, echo_string), idx);
570 570
571 if (XINT (last_char) == '-' && XINT (prev_char) != ' ') 571 if (XINT (last_char) == '-' && XINT (prev_char) != ' ')
572 return; 572 return;
@@ -574,7 +574,7 @@ echo_dash (void)
574 574
575 /* Put a dash at the end of the buffer temporarily, 575 /* Put a dash at the end of the buffer temporarily,
576 but make it go away when the next character is added. */ 576 but make it go away when the next character is added. */
577 current_kboard->echo_string = concat2 (current_kboard->echo_string, 577 KVAR (current_kboard, echo_string) = concat2 (KVAR (current_kboard, echo_string),
578 build_string ("-")); 578 build_string ("-"));
579 echo_now (); 579 echo_now ();
580} 580}
@@ -617,9 +617,9 @@ echo_now (void)
617 } 617 }
618 618
619 echoing = 1; 619 echoing = 1;
620 message3_nolog (current_kboard->echo_string, 620 message3_nolog (KVAR (current_kboard, echo_string),
621 SBYTES (current_kboard->echo_string), 621 SBYTES (KVAR (current_kboard, echo_string)),
622 STRING_MULTIBYTE (current_kboard->echo_string)); 622 STRING_MULTIBYTE (KVAR (current_kboard, echo_string)));
623 echoing = 0; 623 echoing = 0;
624 624
625 /* Record in what buffer we echoed, and from which kboard. */ 625 /* Record in what buffer we echoed, and from which kboard. */
@@ -637,7 +637,7 @@ cancel_echoing (void)
637{ 637{
638 current_kboard->immediate_echo = 0; 638 current_kboard->immediate_echo = 0;
639 current_kboard->echo_after_prompt = -1; 639 current_kboard->echo_after_prompt = -1;
640 current_kboard->echo_string = Qnil; 640 KVAR (current_kboard, echo_string) = Qnil;
641 ok_to_echo_at_next_pause = NULL; 641 ok_to_echo_at_next_pause = NULL;
642 echo_kboard = NULL; 642 echo_kboard = NULL;
643 echo_message_buffer = Qnil; 643 echo_message_buffer = Qnil;
@@ -648,8 +648,8 @@ cancel_echoing (void)
648static int 648static int
649echo_length (void) 649echo_length (void)
650{ 650{
651 return (STRINGP (current_kboard->echo_string) 651 return (STRINGP (KVAR (current_kboard, echo_string))
652 ? SCHARS (current_kboard->echo_string) 652 ? SCHARS (KVAR (current_kboard, echo_string))
653 : 0); 653 : 0);
654} 654}
655 655
@@ -660,9 +660,9 @@ echo_length (void)
660static void 660static void
661echo_truncate (EMACS_INT nchars) 661echo_truncate (EMACS_INT nchars)
662{ 662{
663 if (STRINGP (current_kboard->echo_string)) 663 if (STRINGP (KVAR (current_kboard, echo_string)))
664 current_kboard->echo_string 664 KVAR (current_kboard, echo_string)
665 = Fsubstring (current_kboard->echo_string, 665 = Fsubstring (KVAR (current_kboard, echo_string),
666 make_number (0), make_number (nchars)); 666 make_number (0), make_number (nchars));
667 truncate_echo_area (nchars); 667 truncate_echo_area (nchars);
668} 668}
@@ -993,8 +993,8 @@ cmd_error (Lisp_Object data)
993 Vstandard_input = Qt; 993 Vstandard_input = Qt;
994 Vexecuting_kbd_macro = Qnil; 994 Vexecuting_kbd_macro = Qnil;
995 executing_kbd_macro = Qnil; 995 executing_kbd_macro = Qnil;
996 current_kboard->Vprefix_arg = Qnil; 996 KVAR (current_kboard, Vprefix_arg) = Qnil;
997 current_kboard->Vlast_prefix_arg = Qnil; 997 KVAR (current_kboard, Vlast_prefix_arg) = Qnil;
998 cancel_echoing (); 998 cancel_echoing ();
999 999
1000 /* Avoid unquittable loop if data contains a circular list. */ 1000 /* Avoid unquittable loop if data contains a circular list. */
@@ -1302,8 +1302,8 @@ command_loop_1 (void)
1302#endif 1302#endif
1303 int already_adjusted = 0; 1303 int already_adjusted = 0;
1304 1304
1305 current_kboard->Vprefix_arg = Qnil; 1305 KVAR (current_kboard, Vprefix_arg) = Qnil;
1306 current_kboard->Vlast_prefix_arg = Qnil; 1306 KVAR (current_kboard, Vlast_prefix_arg) = Qnil;
1307 Vdeactivate_mark = Qnil; 1307 Vdeactivate_mark = Qnil;
1308 waiting_for_input = 0; 1308 waiting_for_input = 0;
1309 cancel_echoing (); 1309 cancel_echoing ();
@@ -1331,10 +1331,10 @@ command_loop_1 (void)
1331 } 1331 }
1332 1332
1333 /* Do this after running Vpost_command_hook, for consistency. */ 1333 /* Do this after running Vpost_command_hook, for consistency. */
1334 current_kboard->Vlast_command = Vthis_command; 1334 KVAR (current_kboard, Vlast_command) = Vthis_command;
1335 current_kboard->Vreal_last_command = real_this_command; 1335 KVAR (current_kboard, Vreal_last_command) = real_this_command;
1336 if (!CONSP (last_command_event)) 1336 if (!CONSP (last_command_event))
1337 current_kboard->Vlast_repeatable_command = real_this_command; 1337 KVAR (current_kboard, Vlast_repeatable_command) = real_this_command;
1338 1338
1339 while (1) 1339 while (1)
1340 { 1340 {
@@ -1504,9 +1504,9 @@ command_loop_1 (void)
1504 keys = Fkey_description (keys, Qnil); 1504 keys = Fkey_description (keys, Qnil);
1505 bitch_at_user (); 1505 bitch_at_user ();
1506 message_with_string ("%s is undefined", keys, 0); 1506 message_with_string ("%s is undefined", keys, 0);
1507 current_kboard->defining_kbd_macro = Qnil; 1507 KVAR (current_kboard, defining_kbd_macro) = Qnil;
1508 update_mode_lines = 1; 1508 update_mode_lines = 1;
1509 current_kboard->Vprefix_arg = Qnil; 1509 KVAR (current_kboard, Vprefix_arg) = Qnil;
1510 } 1510 }
1511 else 1511 else
1512 { 1512 {
@@ -1523,7 +1523,7 @@ command_loop_1 (void)
1523 } 1523 }
1524#endif 1524#endif
1525 1525
1526 if (NILP (current_kboard->Vprefix_arg)) /* FIXME: Why? --Stef */ 1526 if (NILP (KVAR (current_kboard, Vprefix_arg))) /* FIXME: Why? --Stef */
1527 Fundo_boundary (); 1527 Fundo_boundary ();
1528 Fcommand_execute (Vthis_command, Qnil, Qnil, Qnil); 1528 Fcommand_execute (Vthis_command, Qnil, Qnil, Qnil);
1529 1529
@@ -1537,7 +1537,7 @@ command_loop_1 (void)
1537 unbind_to (scount, Qnil); 1537 unbind_to (scount, Qnil);
1538#endif 1538#endif
1539 } 1539 }
1540 current_kboard->Vlast_prefix_arg = Vcurrent_prefix_arg; 1540 KVAR (current_kboard, Vlast_prefix_arg) = Vcurrent_prefix_arg;
1541 1541
1542 /* Note that the value cell will never directly contain nil 1542 /* Note that the value cell will never directly contain nil
1543 if the symbol is a local variable. */ 1543 if the symbol is a local variable. */
@@ -1565,12 +1565,12 @@ command_loop_1 (void)
1565 If the command didn't actually create a prefix arg, 1565 If the command didn't actually create a prefix arg,
1566 but is merely a frame event that is transparent to prefix args, 1566 but is merely a frame event that is transparent to prefix args,
1567 then the above doesn't apply. */ 1567 then the above doesn't apply. */
1568 if (NILP (current_kboard->Vprefix_arg) || CONSP (last_command_event)) 1568 if (NILP (KVAR (current_kboard, Vprefix_arg)) || CONSP (last_command_event))
1569 { 1569 {
1570 current_kboard->Vlast_command = Vthis_command; 1570 KVAR (current_kboard, Vlast_command) = Vthis_command;
1571 current_kboard->Vreal_last_command = real_this_command; 1571 KVAR (current_kboard, Vreal_last_command) = real_this_command;
1572 if (!CONSP (last_command_event)) 1572 if (!CONSP (last_command_event))
1573 current_kboard->Vlast_repeatable_command = real_this_command; 1573 KVAR (current_kboard, Vlast_repeatable_command) = real_this_command;
1574 cancel_echoing (); 1574 cancel_echoing ();
1575 this_command_key_count = 0; 1575 this_command_key_count = 0;
1576 this_command_key_count_reset = 0; 1576 this_command_key_count_reset = 0;
@@ -1649,8 +1649,8 @@ command_loop_1 (void)
1649 1649
1650 /* Install chars successfully executed in kbd macro. */ 1650 /* Install chars successfully executed in kbd macro. */
1651 1651
1652 if (!NILP (current_kboard->defining_kbd_macro) 1652 if (!NILP (KVAR (current_kboard, defining_kbd_macro))
1653 && NILP (current_kboard->Vprefix_arg)) 1653 && NILP (KVAR (current_kboard, Vprefix_arg)))
1654 finalize_kbd_macro_chars (); 1654 finalize_kbd_macro_chars ();
1655#if 0 /* This shouldn't be necessary anymore. --lorentey */ 1655#if 0 /* This shouldn't be necessary anymore. --lorentey */
1656 if (!was_locked) 1656 if (!was_locked)
@@ -2461,7 +2461,7 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2461 KBOARD *kb = FRAME_KBOARD (XFRAME (selected_frame)); 2461 KBOARD *kb = FRAME_KBOARD (XFRAME (selected_frame));
2462 if (kb != current_kboard) 2462 if (kb != current_kboard)
2463 { 2463 {
2464 Lisp_Object link = kb->kbd_queue; 2464 Lisp_Object link = KVAR (kb, kbd_queue);
2465 /* We shouldn't get here if we were in single-kboard mode! */ 2465 /* We shouldn't get here if we were in single-kboard mode! */
2466 if (single_kboard) 2466 if (single_kboard)
2467 abort (); 2467 abort ();
@@ -2473,7 +2473,7 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2473 abort (); 2473 abort ();
2474 } 2474 }
2475 if (!CONSP (link)) 2475 if (!CONSP (link))
2476 kb->kbd_queue = Fcons (c, Qnil); 2476 KVAR (kb, kbd_queue) = Fcons (c, Qnil);
2477 else 2477 else
2478 XSETCDR (link, Fcons (c, Qnil)); 2478 XSETCDR (link, Fcons (c, Qnil));
2479 kb->kbd_queue_has_data = 1; 2479 kb->kbd_queue_has_data = 1;
@@ -2645,12 +2645,12 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2645 { 2645 {
2646 if (current_kboard->kbd_queue_has_data) 2646 if (current_kboard->kbd_queue_has_data)
2647 { 2647 {
2648 if (!CONSP (current_kboard->kbd_queue)) 2648 if (!CONSP (KVAR (current_kboard, kbd_queue)))
2649 abort (); 2649 abort ();
2650 c = XCAR (current_kboard->kbd_queue); 2650 c = XCAR (KVAR (current_kboard, kbd_queue));
2651 current_kboard->kbd_queue 2651 KVAR (current_kboard, kbd_queue)
2652 = XCDR (current_kboard->kbd_queue); 2652 = XCDR (KVAR (current_kboard, kbd_queue));
2653 if (NILP (current_kboard->kbd_queue)) 2653 if (NILP (KVAR (current_kboard, kbd_queue)))
2654 current_kboard->kbd_queue_has_data = 0; 2654 current_kboard->kbd_queue_has_data = 0;
2655 input_pending = readable_events (0); 2655 input_pending = readable_events (0);
2656 if (EVENT_HAS_PARAMETERS (c) 2656 if (EVENT_HAS_PARAMETERS (c)
@@ -2712,7 +2712,7 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2712 2712
2713 if (! NILP (c) && (kb != current_kboard)) 2713 if (! NILP (c) && (kb != current_kboard))
2714 { 2714 {
2715 Lisp_Object link = kb->kbd_queue; 2715 Lisp_Object link = KVAR (kb, kbd_queue);
2716 if (CONSP (link)) 2716 if (CONSP (link))
2717 { 2717 {
2718 while (CONSP (XCDR (link))) 2718 while (CONSP (XCDR (link)))
@@ -2721,7 +2721,7 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2721 abort (); 2721 abort ();
2722 } 2722 }
2723 if (!CONSP (link)) 2723 if (!CONSP (link))
2724 kb->kbd_queue = Fcons (c, Qnil); 2724 KVAR (kb, kbd_queue) = Fcons (c, Qnil);
2725 else 2725 else
2726 XSETCDR (link, Fcons (c, Qnil)); 2726 XSETCDR (link, Fcons (c, Qnil));
2727 kb->kbd_queue_has_data = 1; 2727 kb->kbd_queue_has_data = 1;
@@ -2829,15 +2829,15 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2829 if (XINT (c) == -1) 2829 if (XINT (c) == -1)
2830 goto exit; 2830 goto exit;
2831 2831
2832 if ((STRINGP (current_kboard->Vkeyboard_translate_table) 2832 if ((STRINGP (KVAR (current_kboard, Vkeyboard_translate_table))
2833 && SCHARS (current_kboard->Vkeyboard_translate_table) > (unsigned) XFASTINT (c)) 2833 && SCHARS (KVAR (current_kboard, Vkeyboard_translate_table)) > (unsigned) XFASTINT (c))
2834 || (VECTORP (current_kboard->Vkeyboard_translate_table) 2834 || (VECTORP (KVAR (current_kboard, Vkeyboard_translate_table))
2835 && XVECTOR (current_kboard->Vkeyboard_translate_table)->size > (unsigned) XFASTINT (c)) 2835 && XVECTOR (KVAR (current_kboard, Vkeyboard_translate_table))->size > (unsigned) XFASTINT (c))
2836 || (CHAR_TABLE_P (current_kboard->Vkeyboard_translate_table) 2836 || (CHAR_TABLE_P (KVAR (current_kboard, Vkeyboard_translate_table))
2837 && CHARACTERP (c))) 2837 && CHARACTERP (c)))
2838 { 2838 {
2839 Lisp_Object d; 2839 Lisp_Object d;
2840 d = Faref (current_kboard->Vkeyboard_translate_table, c); 2840 d = Faref (KVAR (current_kboard, Vkeyboard_translate_table), c);
2841 /* nil in keyboard-translate-table means no translation. */ 2841 /* nil in keyboard-translate-table means no translation. */
2842 if (!NILP (d)) 2842 if (!NILP (d))
2843 c = d; 2843 c = d;
@@ -2918,7 +2918,7 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2918 /* Save the echo status. */ 2918 /* Save the echo status. */
2919 int saved_immediate_echo = current_kboard->immediate_echo; 2919 int saved_immediate_echo = current_kboard->immediate_echo;
2920 struct kboard *saved_ok_to_echo = ok_to_echo_at_next_pause; 2920 struct kboard *saved_ok_to_echo = ok_to_echo_at_next_pause;
2921 Lisp_Object saved_echo_string = current_kboard->echo_string; 2921 Lisp_Object saved_echo_string = KVAR (current_kboard, echo_string);
2922 int saved_echo_after_prompt = current_kboard->echo_after_prompt; 2922 int saved_echo_after_prompt = current_kboard->echo_after_prompt;
2923 2923
2924#if 0 2924#if 0
@@ -2973,7 +2973,7 @@ read_char (int commandflag, int nmaps, Lisp_Object *maps, Lisp_Object prev_event
2973 2973
2974 cancel_echoing (); 2974 cancel_echoing ();
2975 ok_to_echo_at_next_pause = saved_ok_to_echo; 2975 ok_to_echo_at_next_pause = saved_ok_to_echo;
2976 current_kboard->echo_string = saved_echo_string; 2976 KVAR (current_kboard, echo_string) = saved_echo_string;
2977 current_kboard->echo_after_prompt = saved_echo_after_prompt; 2977 current_kboard->echo_after_prompt = saved_echo_after_prompt;
2978 if (saved_immediate_echo) 2978 if (saved_immediate_echo)
2979 echo_now (); 2979 echo_now ();
@@ -3459,7 +3459,7 @@ kbd_buffer_store_event_hold (register struct input_event *event,
3459 3459
3460 if (single_kboard && kb != current_kboard) 3460 if (single_kboard && kb != current_kboard)
3461 { 3461 {
3462 kb->kbd_queue 3462 KVAR (kb, kbd_queue)
3463 = Fcons (make_lispy_switch_frame (event->frame_or_window), 3463 = Fcons (make_lispy_switch_frame (event->frame_or_window),
3464 Fcons (make_number (c), Qnil)); 3464 Fcons (make_number (c), Qnil));
3465 kb->kbd_queue_has_data = 1; 3465 kb->kbd_queue_has_data = 1;
@@ -5322,13 +5322,13 @@ make_lispy_event (struct input_event *event)
5322 { 5322 {
5323 /* We need to use an alist rather than a vector as the cache 5323 /* We need to use an alist rather than a vector as the cache
5324 since we can't make a vector long enuf. */ 5324 since we can't make a vector long enuf. */
5325 if (NILP (current_kboard->system_key_syms)) 5325 if (NILP (KVAR (current_kboard, system_key_syms)))
5326 current_kboard->system_key_syms = Fcons (Qnil, Qnil); 5326 KVAR (current_kboard, system_key_syms) = Fcons (Qnil, Qnil);
5327 return modify_event_symbol (event->code, 5327 return modify_event_symbol (event->code,
5328 event->modifiers, 5328 event->modifiers,
5329 Qfunction_key, 5329 Qfunction_key,
5330 current_kboard->Vsystem_key_alist, 5330 KVAR (current_kboard, Vsystem_key_alist),
5331 0, &current_kboard->system_key_syms, 5331 0, &KVAR (current_kboard, system_key_syms),
5332 (unsigned) -1); 5332 (unsigned) -1);
5333 } 5333 }
5334 5334
@@ -7360,8 +7360,8 @@ menu_bar_items (Lisp_Object old)
7360 /* Yes, use them (if non-nil) as well as the global map. */ 7360 /* Yes, use them (if non-nil) as well as the global map. */
7361 maps = (Lisp_Object *) alloca (3 * sizeof (maps[0])); 7361 maps = (Lisp_Object *) alloca (3 * sizeof (maps[0]));
7362 nmaps = 0; 7362 nmaps = 0;
7363 if (!NILP (current_kboard->Voverriding_terminal_local_map)) 7363 if (!NILP (KVAR (current_kboard, Voverriding_terminal_local_map)))
7364 maps[nmaps++] = current_kboard->Voverriding_terminal_local_map; 7364 maps[nmaps++] = KVAR (current_kboard, Voverriding_terminal_local_map);
7365 if (!NILP (Voverriding_local_map)) 7365 if (!NILP (Voverriding_local_map))
7366 maps[nmaps++] = Voverriding_local_map; 7366 maps[nmaps++] = Voverriding_local_map;
7367 } 7367 }
@@ -7897,8 +7897,8 @@ tool_bar_items (Lisp_Object reuse, int *nitems)
7897 /* Yes, use them (if non-nil) as well as the global map. */ 7897 /* Yes, use them (if non-nil) as well as the global map. */
7898 maps = (Lisp_Object *) alloca (3 * sizeof (maps[0])); 7898 maps = (Lisp_Object *) alloca (3 * sizeof (maps[0]));
7899 nmaps = 0; 7899 nmaps = 0;
7900 if (!NILP (current_kboard->Voverriding_terminal_local_map)) 7900 if (!NILP (KVAR (current_kboard, Voverriding_terminal_local_map)))
7901 maps[nmaps++] = current_kboard->Voverriding_terminal_local_map; 7901 maps[nmaps++] = KVAR (current_kboard, Voverriding_terminal_local_map);
7902 if (!NILP (Voverriding_local_map)) 7902 if (!NILP (Voverriding_local_map))
7903 maps[nmaps++] = Voverriding_local_map; 7903 maps[nmaps++] = Voverriding_local_map;
7904 } 7904 }
@@ -8614,12 +8614,12 @@ read_char_minibuf_menu_prompt (int commandflag, int nmaps, Lisp_Object *maps)
8614 is pressed. Help characters are not recorded because menu prompting 8614 is pressed. Help characters are not recorded because menu prompting
8615 is not used on replay. 8615 is not used on replay.
8616 */ 8616 */
8617 orig_defn_macro = current_kboard->defining_kbd_macro; 8617 orig_defn_macro = KVAR (current_kboard, defining_kbd_macro);
8618 current_kboard->defining_kbd_macro = Qnil; 8618 KVAR (current_kboard, defining_kbd_macro) = Qnil;
8619 do 8619 do
8620 obj = read_char (commandflag, 0, 0, Qt, 0, NULL); 8620 obj = read_char (commandflag, 0, 0, Qt, 0, NULL);
8621 while (BUFFERP (obj)); 8621 while (BUFFERP (obj));
8622 current_kboard->defining_kbd_macro = orig_defn_macro; 8622 KVAR (current_kboard, defining_kbd_macro) = orig_defn_macro;
8623 8623
8624 if (!INTEGERP (obj)) 8624 if (!INTEGERP (obj))
8625 return obj; 8625 return obj;
@@ -8632,7 +8632,7 @@ read_char_minibuf_menu_prompt (int commandflag, int nmaps, Lisp_Object *maps)
8632 && (!INTEGERP (menu_prompt_more_char) 8632 && (!INTEGERP (menu_prompt_more_char)
8633 || ! EQ (obj, make_number (Ctl (XINT (menu_prompt_more_char)))))) 8633 || ! EQ (obj, make_number (Ctl (XINT (menu_prompt_more_char))))))
8634 { 8634 {
8635 if (!NILP (current_kboard->defining_kbd_macro)) 8635 if (!NILP (KVAR (current_kboard, defining_kbd_macro)))
8636 store_kbd_macro_char (obj); 8636 store_kbd_macro_char (obj);
8637 return obj; 8637 return obj;
8638 } 8638 }
@@ -8974,7 +8974,7 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
8974 /* Install the string STR as the beginning of the string of 8974 /* Install the string STR as the beginning of the string of
8975 echoing, so that it serves as a prompt for the next 8975 echoing, so that it serves as a prompt for the next
8976 character. */ 8976 character. */
8977 current_kboard->echo_string = prompt; 8977 KVAR (current_kboard, echo_string) = prompt;
8978 current_kboard->echo_after_prompt = SCHARS (prompt); 8978 current_kboard->echo_after_prompt = SCHARS (prompt);
8979 echo_now (); 8979 echo_now ();
8980 } 8980 }
@@ -9012,8 +9012,8 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9012 happens if we switch keyboards between rescans. */ 9012 happens if we switch keyboards between rescans. */
9013 replay_entire_sequence: 9013 replay_entire_sequence:
9014 9014
9015 indec.map = indec.parent = current_kboard->Vinput_decode_map; 9015 indec.map = indec.parent = KVAR (current_kboard, Vinput_decode_map);
9016 fkey.map = fkey.parent = current_kboard->Vlocal_function_key_map; 9016 fkey.map = fkey.parent = KVAR (current_kboard, Vlocal_function_key_map);
9017 keytran.map = keytran.parent = Vkey_translation_map; 9017 keytran.map = keytran.parent = Vkey_translation_map;
9018 indec.start = indec.end = 0; 9018 indec.start = indec.end = 0;
9019 fkey.start = fkey.end = 0; 9019 fkey.start = fkey.end = 0;
@@ -9034,7 +9034,7 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9034 the initial keymaps from the current buffer. */ 9034 the initial keymaps from the current buffer. */
9035 nmaps = 0; 9035 nmaps = 0;
9036 9036
9037 if (!NILP (current_kboard->Voverriding_terminal_local_map)) 9037 if (!NILP (KVAR (current_kboard, Voverriding_terminal_local_map)))
9038 { 9038 {
9039 if (2 > nmaps_allocated) 9039 if (2 > nmaps_allocated)
9040 { 9040 {
@@ -9042,7 +9042,7 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9042 defs = (Lisp_Object *) alloca (2 * sizeof (defs[0])); 9042 defs = (Lisp_Object *) alloca (2 * sizeof (defs[0]));
9043 nmaps_allocated = 2; 9043 nmaps_allocated = 2;
9044 } 9044 }
9045 submaps[nmaps++] = current_kboard->Voverriding_terminal_local_map; 9045 submaps[nmaps++] = KVAR (current_kboard, Voverriding_terminal_local_map);
9046 } 9046 }
9047 else if (!NILP (Voverriding_local_map)) 9047 else if (!NILP (Voverriding_local_map))
9048 { 9048 {
@@ -9218,29 +9218,29 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9218 9218
9219 if (!NILP (delayed_switch_frame)) 9219 if (!NILP (delayed_switch_frame))
9220 { 9220 {
9221 interrupted_kboard->kbd_queue 9221 KVAR (interrupted_kboard, kbd_queue)
9222 = Fcons (delayed_switch_frame, 9222 = Fcons (delayed_switch_frame,
9223 interrupted_kboard->kbd_queue); 9223 KVAR (interrupted_kboard, kbd_queue));
9224 delayed_switch_frame = Qnil; 9224 delayed_switch_frame = Qnil;
9225 } 9225 }
9226 9226
9227 while (t > 0) 9227 while (t > 0)
9228 interrupted_kboard->kbd_queue 9228 KVAR (interrupted_kboard, kbd_queue)
9229 = Fcons (keybuf[--t], interrupted_kboard->kbd_queue); 9229 = Fcons (keybuf[--t], KVAR (interrupted_kboard, kbd_queue));
9230 9230
9231 /* If the side queue is non-empty, ensure it begins with a 9231 /* If the side queue is non-empty, ensure it begins with a
9232 switch-frame, so we'll replay it in the right context. */ 9232 switch-frame, so we'll replay it in the right context. */
9233 if (CONSP (interrupted_kboard->kbd_queue) 9233 if (CONSP (KVAR (interrupted_kboard, kbd_queue))
9234 && (key = XCAR (interrupted_kboard->kbd_queue), 9234 && (key = XCAR (KVAR (interrupted_kboard, kbd_queue)),
9235 !(EVENT_HAS_PARAMETERS (key) 9235 !(EVENT_HAS_PARAMETERS (key)
9236 && EQ (EVENT_HEAD_KIND (EVENT_HEAD (key)), 9236 && EQ (EVENT_HEAD_KIND (EVENT_HEAD (key)),
9237 Qswitch_frame)))) 9237 Qswitch_frame))))
9238 { 9238 {
9239 Lisp_Object frame; 9239 Lisp_Object frame;
9240 XSETFRAME (frame, interrupted_frame); 9240 XSETFRAME (frame, interrupted_frame);
9241 interrupted_kboard->kbd_queue 9241 KVAR (interrupted_kboard, kbd_queue)
9242 = Fcons (make_lispy_switch_frame (frame), 9242 = Fcons (make_lispy_switch_frame (frame),
9243 interrupted_kboard->kbd_queue); 9243 KVAR (interrupted_kboard, kbd_queue));
9244 } 9244 }
9245 mock_input = 0; 9245 mock_input = 0;
9246 orig_local_map = get_local_map (PT, current_buffer, Qlocal_map); 9246 orig_local_map = get_local_map (PT, current_buffer, Qlocal_map);
@@ -10115,9 +10115,9 @@ a special event, so ignore the prefix argument and don't clear it. */)
10115 10115
10116 if (NILP (special)) 10116 if (NILP (special))
10117 { 10117 {
10118 prefixarg = current_kboard->Vprefix_arg; 10118 prefixarg = KVAR (current_kboard, Vprefix_arg);
10119 Vcurrent_prefix_arg = prefixarg; 10119 Vcurrent_prefix_arg = prefixarg;
10120 current_kboard->Vprefix_arg = Qnil; 10120 KVAR (current_kboard, Vprefix_arg) = Qnil;
10121 } 10121 }
10122 else 10122 else
10123 prefixarg = Qnil; 10123 prefixarg = Qnil;
@@ -10251,7 +10251,7 @@ give to the command you invoke, if it asks for an argument. */)
10251 UNGCPRO; 10251 UNGCPRO;
10252 10252
10253 function = Fintern (function, Qnil); 10253 function = Fintern (function, Qnil);
10254 current_kboard->Vprefix_arg = prefixarg; 10254 KVAR (current_kboard, Vprefix_arg) = prefixarg;
10255 Vthis_command = function; 10255 Vthis_command = function;
10256 real_this_command = function; 10256 real_this_command = function;
10257 10257
@@ -10574,7 +10574,7 @@ DEFUN ("discard-input", Fdiscard_input, Sdiscard_input, 0, 0, 0,
10574Also end any kbd macro being defined. */) 10574Also end any kbd macro being defined. */)
10575 (void) 10575 (void)
10576{ 10576{
10577 if (!NILP (current_kboard->defining_kbd_macro)) 10577 if (!NILP (KVAR (current_kboard, defining_kbd_macro)))
10578 { 10578 {
10579 /* Discard the last command from the macro. */ 10579 /* Discard the last command from the macro. */
10580 Fcancel_kbd_macro_events (); 10580 Fcancel_kbd_macro_events ();
@@ -11224,30 +11224,30 @@ The `posn-' functions access elements of such lists. */)
11224void 11224void
11225init_kboard (KBOARD *kb) 11225init_kboard (KBOARD *kb)
11226{ 11226{
11227 kb->Voverriding_terminal_local_map = Qnil; 11227 KVAR (kb, Voverriding_terminal_local_map) = Qnil;
11228 kb->Vlast_command = Qnil; 11228 KVAR (kb, Vlast_command) = Qnil;
11229 kb->Vreal_last_command = Qnil; 11229 KVAR (kb, Vreal_last_command) = Qnil;
11230 kb->Vkeyboard_translate_table = Qnil; 11230 KVAR (kb, Vkeyboard_translate_table) = Qnil;
11231 kb->Vlast_repeatable_command = Qnil; 11231 KVAR (kb, Vlast_repeatable_command) = Qnil;
11232 kb->Vprefix_arg = Qnil; 11232 KVAR (kb, Vprefix_arg) = Qnil;
11233 kb->Vlast_prefix_arg = Qnil; 11233 KVAR (kb, Vlast_prefix_arg) = Qnil;
11234 kb->kbd_queue = Qnil; 11234 KVAR (kb, kbd_queue) = Qnil;
11235 kb->kbd_queue_has_data = 0; 11235 kb->kbd_queue_has_data = 0;
11236 kb->immediate_echo = 0; 11236 kb->immediate_echo = 0;
11237 kb->echo_string = Qnil; 11237 KVAR (kb, echo_string) = Qnil;
11238 kb->echo_after_prompt = -1; 11238 kb->echo_after_prompt = -1;
11239 kb->kbd_macro_buffer = 0; 11239 kb->kbd_macro_buffer = 0;
11240 kb->kbd_macro_bufsize = 0; 11240 kb->kbd_macro_bufsize = 0;
11241 kb->defining_kbd_macro = Qnil; 11241 KVAR (kb, defining_kbd_macro) = Qnil;
11242 kb->Vlast_kbd_macro = Qnil; 11242 KVAR (kb, Vlast_kbd_macro) = Qnil;
11243 kb->reference_count = 0; 11243 kb->reference_count = 0;
11244 kb->Vsystem_key_alist = Qnil; 11244 KVAR (kb, Vsystem_key_alist) = Qnil;
11245 kb->system_key_syms = Qnil; 11245 KVAR (kb, system_key_syms) = Qnil;
11246 kb->Vwindow_system = Qt; /* Unset. */ 11246 KVAR (kb, Vwindow_system) = Qt; /* Unset. */
11247 kb->Vinput_decode_map = Fmake_sparse_keymap (Qnil); 11247 KVAR (kb, Vinput_decode_map) = Fmake_sparse_keymap (Qnil);
11248 kb->Vlocal_function_key_map = Fmake_sparse_keymap (Qnil); 11248 KVAR (kb, Vlocal_function_key_map) = Fmake_sparse_keymap (Qnil);
11249 Fset_keymap_parent (kb->Vlocal_function_key_map, Vfunction_key_map); 11249 Fset_keymap_parent (KVAR (kb, Vlocal_function_key_map), Vfunction_key_map);
11250 kb->Vdefault_minibuffer_frame = Qnil; 11250 KVAR (kb, Vdefault_minibuffer_frame) = Qnil;
11251} 11251}
11252 11252
11253/* 11253/*
@@ -11323,7 +11323,7 @@ init_keyboard (void)
11323 init_kboard (current_kboard); 11323 init_kboard (current_kboard);
11324 /* A value of nil for Vwindow_system normally means a tty, but we also use 11324 /* A value of nil for Vwindow_system normally means a tty, but we also use
11325 it for the initial terminal since there is no window system there. */ 11325 it for the initial terminal since there is no window system there. */
11326 current_kboard->Vwindow_system = Qnil; 11326 KVAR (current_kboard, Vwindow_system) = Qnil;
11327 11327
11328 if (!noninteractive) 11328 if (!noninteractive)
11329 { 11329 {
@@ -12266,23 +12266,23 @@ mark_kboards (void)
12266 if (kb->kbd_macro_buffer) 12266 if (kb->kbd_macro_buffer)
12267 for (p = kb->kbd_macro_buffer; p < kb->kbd_macro_ptr; p++) 12267 for (p = kb->kbd_macro_buffer; p < kb->kbd_macro_ptr; p++)
12268 mark_object (*p); 12268 mark_object (*p);
12269 mark_object (kb->Voverriding_terminal_local_map); 12269 mark_object (KVAR (kb, Voverriding_terminal_local_map));
12270 mark_object (kb->Vlast_command); 12270 mark_object (KVAR (kb, Vlast_command));
12271 mark_object (kb->Vreal_last_command); 12271 mark_object (KVAR (kb, Vreal_last_command));
12272 mark_object (kb->Vkeyboard_translate_table); 12272 mark_object (KVAR (kb, Vkeyboard_translate_table));
12273 mark_object (kb->Vlast_repeatable_command); 12273 mark_object (KVAR (kb, Vlast_repeatable_command));
12274 mark_object (kb->Vprefix_arg); 12274 mark_object (KVAR (kb, Vprefix_arg));
12275 mark_object (kb->Vlast_prefix_arg); 12275 mark_object (KVAR (kb, Vlast_prefix_arg));
12276 mark_object (kb->kbd_queue); 12276 mark_object (KVAR (kb, kbd_queue));
12277 mark_object (kb->defining_kbd_macro); 12277 mark_object (KVAR (kb, defining_kbd_macro));
12278 mark_object (kb->Vlast_kbd_macro); 12278 mark_object (KVAR (kb, Vlast_kbd_macro));
12279 mark_object (kb->Vsystem_key_alist); 12279 mark_object (KVAR (kb, Vsystem_key_alist));
12280 mark_object (kb->system_key_syms); 12280 mark_object (KVAR (kb, system_key_syms));
12281 mark_object (kb->Vwindow_system); 12281 mark_object (KVAR (kb, Vwindow_system));
12282 mark_object (kb->Vinput_decode_map); 12282 mark_object (KVAR (kb, Vinput_decode_map));
12283 mark_object (kb->Vlocal_function_key_map); 12283 mark_object (KVAR (kb, Vlocal_function_key_map));
12284 mark_object (kb->Vdefault_minibuffer_frame); 12284 mark_object (KVAR (kb, Vdefault_minibuffer_frame));
12285 mark_object (kb->echo_string); 12285 mark_object (KVAR (kb, echo_string));
12286 } 12286 }
12287 { 12287 {
12288 struct input_event *event; 12288 struct input_event *event;