Shortdoc: read and evaluate strings after :eval

* lisp/emacs-lisp/shortdoc.el (shortdoc--display-function):
If the parameter of :eval is a string then read, evaluate and print
the result.  This was always the intention and is documented behaviour.
This commit is contained in:
Mattias Engdegård 2022-12-14 12:16:28 +01:00
parent be165f7533
commit 931d97bf56

View file

@ -1440,14 +1440,16 @@ function's documentation in the Info manual"))
do
(cl-case type
(:eval
(insert " ")
(if (stringp value)
(insert " " value "\n")
(insert " ")
(prin1 value (current-buffer))
(insert "\n")
(insert " " double-arrow " ")
(prin1 (eval value) (current-buffer))
(insert "\n")))
(insert value)
(prin1 value (current-buffer)))
(insert "\n " double-arrow " ")
(let ((expr (if (stringp value)
(car (read-from-string value))
value)))
(prin1 (eval expr) (current-buffer)))
(insert "\n"))
(:no-eval*
(if (stringp value)
(insert " " value "\n")