aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/lisp.h23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 2bbf7a54f26..c40f07259a0 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -499,12 +499,27 @@ struct PERDISPLAY
499 /* Unread events specific to this display. */ 499 /* Unread events specific to this display. */
500 Lisp_Object kbd_queue; 500 Lisp_Object kbd_queue;
501 501
502 /* Placeholder for future vars that will be moved here. */ 502 /* Non-nil while a kbd macro is being defined. */
503 Lisp_Object unused[23]; 503 Lisp_Object defining_kbd_macro;
504
505 /* The start of storage for the current keyboard macro. */
506 Lisp_Object *kbd_macro_buffer;
507
508 /* Where to store the next keystroke of the macro. */
509 Lisp_Object *kbd_macro_ptr;
504 510
505 Lisp_Object this_command_keys; 511 /* The finalized section of the macro starts at kbd_macro_buffer and
512 ends before this. This is not the same as kbd_macro_ptr, because
513 we advance this to kbd_macro_pointer when a key's command is complete.
514 This way, the keystrokes for "end-kbd-macro" are not included in the
515 macro. */
516 Lisp_Object *kbd_macro_end;
506 517
507 int this_command_key_count; 518 /* Allocated size of kbd_macro_buffer. */
519 int kbd_macro_bufsize;
520
521 /* Placeholder for future vars that will be moved here. */
522 Lisp_Object unused[20];
508 523
509 /* Nonzero means echo each character as typed. */ 524 /* Nonzero means echo each character as typed. */
510 int immediate_echo; 525 int immediate_echo;