emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/macros.c


From: Kim F . Storm
Subject: [Emacs-diffs] Changes to emacs/src/macros.c
Date: Mon, 02 May 2005 06:32:41 -0400

Index: emacs/src/macros.c
diff -c emacs/src/macros.c:1.56 emacs/src/macros.c:1.57
*** emacs/src/macros.c:1.56     Sun May  1 18:48:26 2005
--- emacs/src/macros.c  Mon May  2 10:32:40 2005
***************
*** 35,55 ****
  
  /* Index of next character to fetch from that macro.  */
  
! EMACS_INT executing_macro_index;
  
  /* Number of successful iterations so far
     for innermost keyboard macro.
     This is not bound at each level,
     so after an error, it describes the innermost interrupted macro.  */
  
! int executing_macro_iterations;
  
  /* This is the macro that was executing.
     This is not bound at each level,
     so after an error, it describes the innermost interrupted macro.
     We use it only as a kind of flag, so no need to protect it.  */
  
! Lisp_Object executing_macro;
  
  extern Lisp_Object real_this_command;
  
--- 35,55 ----
  
  /* Index of next character to fetch from that macro.  */
  
! EMACS_INT executing_kbd_macro_index;
  
  /* Number of successful iterations so far
     for innermost keyboard macro.
     This is not bound at each level,
     so after an error, it describes the innermost interrupted macro.  */
  
! int executing_kbd_macro_iterations;
  
  /* This is the macro that was executing.
     This is not bound at each level,
     so after an error, it describes the innermost interrupted macro.
     We use it only as a kind of flag, so no need to protect it.  */
  
! Lisp_Object executing_kbd_macro;
  
  extern Lisp_Object real_this_command;
  
***************
*** 114,120 ****
        }
  
        /* Must convert meta modifier when copying string to vector.  */
!       cvt = STRINGP (current_kboard->Vlast_kbd_macro); 
        for (i = 0; i < len; i++)
        {
          Lisp_Object c;
--- 114,120 ----
        }
  
        /* Must convert meta modifier when copying string to vector.  */
!       cvt = STRINGP (current_kboard->Vlast_kbd_macro);
        for (i = 0; i < len; i++)
        {
          Lisp_Object c;
***************
*** 285,292 ****
    return Qnil;
  }
  
! /* Restore Vexecuting_kbd_macro and executing_macro_index - called when
!    the unwind-protect in Fexecute_kbd_macro gets invoked.  */
  
  static Lisp_Object
  pop_kbd_macro (info)
--- 285,292 ----
    return Qnil;
  }
  
! /* Restore Vexecuting_kbd_macro and executing_kbd_macro_index.
!    Called when the unwind-protect in Fexecute_kbd_macro gets invoked.  */
  
  static Lisp_Object
  pop_kbd_macro (info)
***************
*** 295,301 ****
    Lisp_Object tem;
    Vexecuting_kbd_macro = XCAR (info);
    tem = XCDR (info);
!   executing_macro_index = XINT (XCAR (tem));
    real_this_command = XCDR (tem);
    Frun_hooks (1, &Qkbd_macro_termination_hook);
    return Qnil;
--- 295,301 ----
    Lisp_Object tem;
    Vexecuting_kbd_macro = XCAR (info);
    tem = XCDR (info);
!   executing_kbd_macro_index = XINT (XCAR (tem));
    real_this_command = XCDR (tem);
    Frun_hooks (1, &Qkbd_macro_termination_hook);
    return Qnil;
***************
*** 318,324 ****
    struct gcpro gcpro1, gcpro2;
    int success_count = 0;
  
!   executing_macro_iterations = 0;
  
    if (!NILP (count))
      {
--- 318,324 ----
    struct gcpro gcpro1, gcpro2;
    int success_count = 0;
  
!   executing_kbd_macro_iterations = 0;
  
    if (!NILP (count))
      {
***************
*** 331,337 ****
      error ("Keyboard macros must be strings or vectors");
  
    tem = Fcons (Vexecuting_kbd_macro,
!              Fcons (make_number (executing_macro_index),
                      real_this_command));
    record_unwind_protect (pop_kbd_macro, tem);
  
--- 331,337 ----
      error ("Keyboard macros must be strings or vectors");
  
    tem = Fcons (Vexecuting_kbd_macro,
!              Fcons (make_number (executing_kbd_macro_index),
                      real_this_command));
    record_unwind_protect (pop_kbd_macro, tem);
  
***************
*** 339,346 ****
    do
      {
        Vexecuting_kbd_macro = final;
!       executing_macro = final;
!       executing_macro_index = 0;
  
        current_kboard->Vprefix_arg = Qnil;
  
--- 339,346 ----
    do
      {
        Vexecuting_kbd_macro = final;
!       executing_kbd_macro = final;
!       executing_kbd_macro_index = 0;
  
        current_kboard->Vprefix_arg = Qnil;
  
***************
*** 354,367 ****
  
        command_loop_1 ();
  
!       executing_macro_iterations = ++success_count;
  
        QUIT;
      }
    while (--repeat
         && (STRINGP (Vexecuting_kbd_macro) || VECTORP (Vexecuting_kbd_macro)));
  
!   executing_macro = Qnil;
  
    real_this_command = Vexecuting_kbd_macro;
  
--- 354,367 ----
  
        command_loop_1 ();
  
!       executing_kbd_macro_iterations = ++success_count;
  
        QUIT;
      }
    while (--repeat
         && (STRINGP (Vexecuting_kbd_macro) || VECTORP (Vexecuting_kbd_macro)));
  
!   executing_kbd_macro = Qnil;
  
    real_this_command = Vexecuting_kbd_macro;
  
***************
*** 373,379 ****
  init_macros ()
  {
    Vexecuting_kbd_macro = Qnil;
!   executing_macro = Qnil;
  }
  
  void
--- 373,379 ----
  init_macros ()
  {
    Vexecuting_kbd_macro = Qnil;
!   executing_kbd_macro = Qnil;
  }
  
  void
***************
*** 400,406 ****
               doc: /* Currently executing keyboard macro (string or vector).
  This is nil when not executing a keyboard macro.  */);
  
!   DEFVAR_INT ("executing-macro-index", &executing_macro_index,
              doc: /* Index in currently executing keyboard macro; undefined if 
none executing.  */);
  
    DEFVAR_KBOARD ("last-kbd-macro", Vlast_kbd_macro,
--- 400,406 ----
               doc: /* Currently executing keyboard macro (string or vector).
  This is nil when not executing a keyboard macro.  */);
  
!   DEFVAR_INT ("executing-kbd-macro-index", &executing_kbd_macro_index,
              doc: /* Index in currently executing keyboard macro; undefined if 
none executing.  */);
  
    DEFVAR_KBOARD ("last-kbd-macro", Vlast_kbd_macro,




reply via email to

[Prev in Thread] Current Thread [Next in Thread]