summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2020-03-12 11:18:07 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2020-03-12 11:18:07 -0400
commit2d221c8d87185fd02a6eb7558ddc4c9524153d72 (patch)
tree958a2cff753ee02e2004c1415fb58d5e009daba3 /lisp/emacs-lisp
parentf253ff7b780c68bd4d1d12a978a1215af1971320 (diff)
downloademacs-2d221c8d87185fd02a6eb7558ddc4c9524153d72.tar.gz
emacs-2d221c8d87185fd02a6eb7558ddc4c9524153d72.tar.bz2
emacs-2d221c8d87185fd02a6eb7558ddc4c9524153d72.zip
* lisp/emacs-lisp/eldoc.el (eldoc--supported-p): Understand the "old" API
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/eldoc.el11
1 files changed, 10 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el
index 6e35018b100..660fce4be0b 100644
--- a/lisp/emacs-lisp/eldoc.el
+++ b/lisp/emacs-lisp/eldoc.el
@@ -404,7 +404,16 @@ effect."
(defun eldoc--supported-p ()
"Non-nil if an ElDoc function is set for this buffer."
(and (not (memq eldoc-documentation-function '(nil ignore)))
- eldoc-documentation-functions))
+ (or eldoc-documentation-functions
+ ;; The old API had major modes set `eldoc-documentation-function'
+ ;; to provide eldoc support. It's impossible now to determine
+ ;; reliably whether the `eldoc-documentation-function' provides
+ ;; eldoc support (as in the old API) or whether it just provides
+ ;; a way to combine the results of the
+ ;; `eldoc-documentation-functions' (as in the new API).
+ ;; But at least if it's set buffer-locally it's a good hint that
+ ;; there's some eldoc support in the current buffer.
+ (local-variable-p 'eldoc-documentation-function))))
(defun eldoc-print-current-symbol-info ()
"Print the text produced by `eldoc-documentation-function'."