GNU bug report logs -
#11506
24.1.50; "C-x z" ("repeat") no longer works correctly with M-x
Previous Next
Full log
Message #12 received at 11506-done <at> debbugs.gnu.org (full text, mbox):
> The problem is that the old execute-extended-command sets the
> real_this_command internal variable, which causes the Emacs command loop
> to record the command that was actually executed into real-last-command
> and last-repeatable-command.
Indeed.
> In other words, it's not just the fact that `C-x z' doesn't work
> properly. Moving execute-extended-command to Lisp produces a
> backward-incompatible change in the values of the real-last-command and
> last-repeatable-command variables for M-x. I suspect this may break
> things other than `C-x z'. I guess we could fix this by exposing
> real_this_command to Lisp too, but that kinda defeats the point of that
> variable...
I don't see why this would defeat anything. Clearly,
execute-extended-command demonstrates that there can be very good
reasons to change real-this-command.
I installed a change that does just that.
> Is there a strong rationale for moving execute-extended-command to Lisp,
> other than the general principle that we want as much functionality
> implemented Lisp as possible?
To me, an important part of moving code to Elisp is to make sure that it
*can* be implemented in Elisp (i.e. that some third-party package can
provide a new implementation of that functionality).
Stefan
This bug report was last modified 13 years and 41 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.