summaryrefslogtreecommitdiff
path: root/lisp/help-fns.el
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2022-07-16 14:57:58 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2022-07-16 18:26:58 +0200
commit9b5eb661bf01d5b7e3453011b93f0eaf8621521e (patch)
tree776bde828f3ee0cedc5f11ede4216386bd1101e2 /lisp/help-fns.el
parent71b58ade86c7efc1019f88a9a3768877a2127c24 (diff)
downloademacs-9b5eb661bf01d5b7e3453011b93f0eaf8621521e.tar.gz
Fix xref links in `C-h o'
* lisp/help-fns.el (describe-symbol): Make xref links happen in all sections (bug#49587). * lisp/help-fns.el (describe-symbol): Add back/forward links. * lisp/help-mode.el (help-make-xrefs): Factor out links from here... (help-xref--navigation-buttons): To here.
Diffstat (limited to 'lisp/help-fns.el')
-rw-r--r--lisp/help-fns.el8
1 files changed, 6 insertions, 2 deletions
diff --git a/lisp/help-fns.el b/lisp/help-fns.el
index 85984c87e2d..aceac1f2756 100644
--- a/lisp/help-fns.el
+++ b/lisp/help-fns.el
@@ -1800,8 +1800,10 @@ current buffer and the selected frame, respectively."
(when (funcall testfn symbol)
;; Don't record the current entry in the stack.
(setq help-xref-stack-item nil)
- (cons name
- (funcall descfn symbol buffer frame))))
+ (let ((help-xref-stack nil)
+ (help-xref-forward-stack nil))
+ (funcall descfn symbol buffer frame))
+ (cons name (buffer-string))))
describe-symbol-backends))))
(single (null (cdr docs))))
(while (cdr docs)
@@ -1822,6 +1824,8 @@ current buffer and the selected frame, respectively."
;; Don't record the `describe-variable' item in the stack.
(setq help-xref-stack-item nil)
(help-setup-xref (list #'describe-symbol symbol) nil))
+ (goto-char (point-max))
+ (help-xref--navigation-buttons)
(goto-char (point-min))))))
;;;###autoload