Emacs-lisp eldoc: fix error if symbol unbound

`+emacs-lisp-append-value-to-eldoc-a' `error's if the symbol isn't
bound, because `symbol-value' errors in that case. Fix that bug by only
modifying the result of `elisp-get-var-docstring' if the symbol is
bound.
This commit is contained in:
Nikita Bloshchanevich 2021-01-02 12:24:31 +01:00
parent 0c9256411d
commit b12df73cc1

View file

@ -99,6 +99,7 @@ employed so that flycheck still does *some* helpful linting.")
"Display variable value next to documentation in eldoc."
:around #'elisp-get-var-docstring
(when-let (ret (funcall orig-fn sym))
(if (fboundp sym)
(concat ret " "
(let* ((truncated " [...]")
(print-escape-newlines t)
@ -107,7 +108,8 @@ employed so that flycheck still does *some* helpful linting.")
(limit (- (frame-width) (length ret) (length truncated) 1)))
(format (format "%%0.%ds%%s" (max limit 0))
(propertize str 'face 'warning)
(if (< (length str) limit) "" truncated))))))
(if (< (length str) limit) "" truncated))))
ret)))
(map! :localleader
:map emacs-lisp-mode-map