Eli Zaretskii <eliz@gnu.org> schrieb am Fr., 10. Feb. 2017 um 10:00 Uhr:
> Date: Fri, 03 Feb 2017 23:16:27 +0200
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: 25612@debbugs.gnu.org
>
> > From: Philipp Stephani <p.stephani2@gmail.com>
> > Date: Fri, 03 Feb 2017 15:54:06 +0000
> > Cc: 25612@debbugs.gnu.org
> >
> >  Yes, this-command-keys returns just "^M" instead of the expected
> >  "\370erase-buffer^M" it returned in Emacs 24.2 and older.
> >
> > git bisect says
> >
> > b593d6a999b21dfee6939b24866a5ec6fbe7d11b is the first bad commit
> > commit b593d6a999b21dfee6939b24866a5ec6fbe7d11b
> > Author: Aaron S. Hawley <aaron.s.hawley@gmail.com>
> > Date: Tue May 1 12:10:02 2012 -0400
> >
> > Reimplement execute-extended-command in Elisp.
> > * src/keyboard.c (Fexecute_extended_command, Vsuggest_key_bindings):
> > Move to simple.el.
> > * lisp/simple.el (suggest-key-bindings, execute-extended-command):
> > Move from keyboard.c.
>
> Yes, when execute-extended-command was reimplemented in Lisp, the
> special code which produced "\370erase-buffer^M" was lost.
>
> Does the change below produce good results?  If so, can anyone suggest
> a more elegant way of squirreling M-x into this-command-keys?

No further comments, so I pushed my kludgey solution, and I'm marking
this bug done.


Sorry for not responding earlier, the fix works fine. My only nitpick would be to add a comment for the magic number 248 in the code. I can guess it's 0x80 | 'x', but that might not be obvious to casual readers.