Subject: bug#17052: substitute-command-keys strips text properties

From: Stefan Kangas <[email-masked]>
Date: Sun, 18 Aug 2019 19:08:18 +0200

[In reply to Bug#17052 and cross-posting to Bug#8951.]

Lars Ingebrigtsen <[email-masked]> writes:

> I had a look at that function now and, er, no.  :-)  Perhaps it should
> be rewritten in Emacs Lisp?  Then it'd be pretty trivial to fix this
> stuff.

The Fsubstitute_command_keys function is indeed a bit hairy, and I
agree that a conversion to Lisp is the most reasonable next step.

I've actually been working a patch to convert it to Lisp for Bug#8951,
but it's not finished yet.  The difficulty is that it has a couple of
helper functions that also needs to be lifted, which makes the job
bigger than just the function Fsubstitute_command_keys.

My goal is to get the Lisp version to produce the same output as the C
version, which currently seems to be a feasible goal.  Once it's in
Lisp it should be easier to make further improvements, fix bugs, etc.

Thanks,
Stefan Kangas