Subject: bug#18611: 24.3; macre step edit and use of registers

From: [email-masked] (Charles A. Roelli)
Date: Thu, 21 Sep 2017 21:01:12 +0200

> Date: Thu, 2 Oct 2014 09:45:19 +0200
> From: Tim Nielens <[email-masked]>
> 
> Hello, I get an unwanted behavior when I use the step edit through macros
> on a macro involving insertions of register content.
> 
> Step to reproduce: Create a macro involving a string insert from a macro
> (C-x r i i). Start the step edit through it. When you arrive to that
> step press yes to perform the action and go to the next edit step,
> you'll see that the register key will disapear. If you finish the step
> edit and save it, the macro will no longer be valid since the register
> key disappeared. Other scenario to bump into a problem: when you arrive
> at the insertion, press "r" to replace that operation and try to repeat
> the insertion action (C-x r i i). It will fail with this error message:
> Error in post-command-hook (kmacro-step-edit-post-command):
> (void-variable kmacro-step-edit-active).

Something similar still affects emacs-26.  Thanks for the report.

To reproduce from emacs -q:
C-x b RET
C-x h
C-x r s i
M->
F3
C-x r i i
F4
C-x C-k SPC
y
Error in post-command-hook (kmacro-step-edit-post-command):
(void-variable kmacro-step-edit-active)
C-x C-k SPC
(observe that the last "i" in "C-x r i i" is gone)

Actually, the following is enough to trigger the error from emacs -q:
C-x b RET
C-x C-k SPC
(i.e., when the last kbd macro doesn't exist)