diff options
author | Luc Teirlinck <teirllm@auburn.edu> | 2005-11-14 23:19:42 +0000 |
---|---|---|
committer | Luc Teirlinck <teirllm@auburn.edu> | 2005-11-14 23:19:42 +0000 |
commit | e715d9b46f8821f6e7e1469a3e1faa1df2c2d1a9 (patch) | |
tree | 8ac5008e4851e5f811ad367d4e750844917ea992 /lisp/help-mode.el | |
parent | 7cb1a551058b06a700df497dddbe6831da856d61 (diff) | |
download | emacs-e715d9b46f8821f6e7e1469a3e1faa1df2c2d1a9.tar.gz |
(help-make-xrefs, help-xref-on-pp, help-xref-interned, help-follow):
Make hyperlinks for variables that are unbound, but have a non-nil
variable-documentation property.
Diffstat (limited to 'lisp/help-mode.el')
-rw-r--r-- | lisp/help-mode.el | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/lisp/help-mode.el b/lisp/help-mode.el index a2e7fb88663..b7cea179aea 100644 --- a/lisp/help-mode.el +++ b/lisp/help-mode.el @@ -384,8 +384,9 @@ that." (if sym (cond ((match-string 3) ; `variable' &c - (and (boundp sym) ; `variable' doesn't ensure + (and (or (boundp sym) ; `variable' doesn't ensure ; it's actually bound + (get sym 'variable-documentation)) (help-xref-button 8 'help-variable sym))) ((match-string 4) ; `function' &c (and (fboundp sym) ; similarly @@ -406,12 +407,15 @@ that." (facep sym) (save-match-data (looking-at "[ \t\n]+face\\W"))) (help-xref-button 8 'help-face sym)) - ((and (boundp sym) (fboundp sym)) + ((and (or (boundp sym) + (get sym 'variable-documentation)) + (fboundp sym)) ;; We can't intuit whether to use the ;; variable or function doc -- supply both. (help-xref-button 8 'help-symbol sym)) ((and - (boundp sym) + (or (boundp sym) + (get sym 'variable-documentation)) (or (documentation-property sym 'variable-documentation) @@ -518,7 +522,10 @@ See `help-make-xrefs'." ((or (memq sym '(t nil)) (keywordp sym)) nil) - ((and sym (boundp sym)) + ((and sym + (or (boundp sym) + (get sym + 'variable-documentation))) 'help-variable)))) (when type (help-xref-button 1 type sym))) (goto-char (match-end 1))) @@ -542,7 +549,8 @@ help buffer." ;; Don't record the current entry in the stack. (setq help-xref-stack-item nil) (describe-function symbol))) - (sdoc (when (boundp symbol) + (sdoc (when (or (boundp symbol) + (get symbol 'variable-documentation)) ;; Don't record the current entry in the stack. (setq help-xref-stack-item nil) (describe-variable symbol)))) @@ -639,7 +647,9 @@ For the cross-reference format, see `help-make-xrefs'." (buffer-substring (point) (progn (skip-syntax-forward "w_") (point))))))) - (when (or (boundp sym) (fboundp sym) (facep sym)) + (when (or (boundp sym) + (get sym 'variable-documentation) + (fboundp sym) (facep sym)) (help-do-xref pos #'help-xref-interned (list sym)))))) |