It seems there is no way to `format' that string.

This is a comment in the source code of `define-error'

#+begin_quote
;; FIXME: Make `error-message-string' more flexible, e.g. allow
;; the message to be specified by a `format' string or a function.
#+end_quote

I think your solution to pass the error a string without properties is correct
and you should go ahead with it.  You should probably check out the optional
arguments to `substitute-command-keys' first though.  The "NO-FACE" argument
seems interesting.

Reply via email to