In Emacs 25, substitute-command-keys removes text properties of strings containing quotes: > In Emacs 25: (substitute-command-keys (propertize "`a'" 'prop 'val)) "‘a’" > In Emacs 24.5: (substitute-command-keys (propertize "`a'" 'prop 'val)) #("`a'" 0 3 (prop val)) As Eli pointed out on the mailing list, > Anything that is substituted has its test properties removed: > > (substitute-command-keys (propertize "\\[forward-char]" 'prop 'val)) > => "C-f" > > The above is from Emacs 24.5. > > I think patches are welcome to reinstate the properties. This is an issue in particular for docstrings: (defcustom my/pretty/set/option nil "Demo text properties in customize." :group 'emacs :type `(set (const :tag ,(concat (propertize "Title of option 1 (bold on both 24.5 and 25)" 'face '(:weight bold)) "\n " (propertize "Docs of option 1, in a smaller font on both 24.5 and 25." 'face '(:height 0.9)))) (const :tag ,(concat (propertize "Title of option 2 (`bold' on 24.5 but not 25)" 'face '(:weight bold)) "\n " (propertize "Docs of option 2, in a smaller font on 24.5, but not 25." 'face '(:height 0.9)))))) This example uses text properties on `:tag's to make the customize buffer more readable. This works fine in GNU Emacs 24.5, but it stopped working on master (and emacs-25), because of substitute-command-keys replacing quotes and as a side effect dropping text properties. Clément.