summaryrefslogtreecommitdiff
path: root/lisp/info.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2008-06-14 16:01:38 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2008-06-14 16:01:38 +0000
commit508021c76d19608339c44aca2dbd48856dbde313 (patch)
tree1a963b4fdfdd2ce8672a47935e94b966acad5e3a /lisp/info.el
parentd176d8c6e8bd7d7f283d3b4b7bb53104b6ada534 (diff)
downloademacs-508021c76d19608339c44aca2dbd48856dbde313.tar.gz
(Info-insert-breadcrumbs): Don't break in apropos and toc.
Diffstat (limited to 'lisp/info.el')
-rw-r--r--lisp/info.el14
1 files changed, 10 insertions, 4 deletions
diff --git a/lisp/info.el b/lisp/info.el
index b274c8258a4..fcdee4b660f 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -3723,9 +3723,12 @@ the variable `Info-file-list-for-emacs'."
(unwind-protect
(while (and (not (equal "Top" Info-current-node)) (> depth 0))
(let ((up (Info-extract-pointer "up")))
- (push up crumbs)
- (setq depth (1- depth))
- (Info-find-node Info-current-file up 'no-going-back)))
+ (if (string-match "\\`(.*)" up)
+ ;; Crossing over to another manual. This is typically (dir).
+ (setq depth 0)
+ (push up crumbs)
+ (setq depth (1- depth))
+ (Info-find-node Info-current-file up 'no-going-back))))
(if crumbs ;Do bother going back if we haven't moved.
(Info-find-node Info-current-file onode 'no-going-back))
;; Add bottom node.
@@ -3743,7 +3746,10 @@ the variable `Info-file-list-for-emacs'."
(let ((text
(if (not (equal node "Top")) node
(format "(%s)Top"
- (file-name-nondirectory Info-current-file)))))
+ (if (stringp Info-current-file)
+ (file-name-nondirectory Info-current-file)
+ ;; Can be `toc', `apropos', or even `history'.
+ Info-current-file)))))
(insert (if (bolp) "> " " > ")
(cond
((null node) "...")