summaryrefslogtreecommitdiff
path: root/lisp/info.el
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2006-06-07 18:05:10 +0000
committerMiles Bader <miles@gnu.org>2006-06-07 18:05:10 +0000
commitb883cdb2fefa8ea9c3b0d82eba7a9ee792f871bb (patch)
treede3804210a8cd955e0d3b9abc15679480930bc82 /lisp/info.el
parent885b7d0991bd4b4b8f4bd1d3cd21c18a697bbce2 (diff)
parent26c9afc3239e18b03537faaea33e3e82e28099e6 (diff)
downloademacs-b883cdb2fefa8ea9c3b0d82eba7a9ee792f871bb.tar.gz
Merge from emacs--devo--0
Patches applied: * emacs--devo--0 (patch 285-296) - Update from CVS - Merge from gnus--rel--5.10 - Update from CVS: admin/FOR-RELEASE: Update refcard section. * gnus--rel--5.10 (patch 102-104) - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-64
Diffstat (limited to 'lisp/info.el')
-rw-r--r--lisp/info.el18
1 files changed, 15 insertions, 3 deletions
diff --git a/lisp/info.el b/lisp/info.el
index d12b7a01866..107dbb72d95 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -2866,8 +2866,11 @@ Give an empty topic name to go to the Index node itself."
(car (car Info-index-alternatives))
(nth 2 (car Info-index-alternatives))
(if (cdr Info-index-alternatives)
- (format "(%s total; use `,' for next)"
- (length Info-index-alternatives))
+ (format "(%s total; use `%s' for next)"
+ (length Info-index-alternatives)
+ (key-description (where-is-internal
+ 'Info-index-next overriding-local-map
+ t)))
"(Only match)")))
(defun Info-find-index-name (name)
@@ -2907,11 +2910,20 @@ Build a menu of the possible matches."
manuals matches node nodes)
(let ((Info-fontify-maximum-menu-size nil))
(Info-directory)
+ ;; current-node and current-file are nil when they invoke info-apropos
+ ;; as the first Info command, i.e. info-apropos loads info.el. In that
+ ;; case, we use (DIR)Top instead, to avoid signalling an error after
+ ;; the search is complete.
+ (when (null current-node)
+ (setq current-file Info-current-file)
+ (setq current-node Info-current-node))
(message "Searching indices...")
(goto-char (point-min))
(re-search-forward "\\* Menu: *\n" nil t)
(while (re-search-forward "\\*.*: *(\\([^)]+\\))" nil t)
- (setq manuals (cons (match-string 1) manuals)))
+ ;; add-to-list makes sure we don't have duplicates in `manuals',
+ ;; so that the following dolist loop runs faster.
+ (add-to-list 'manuals (match-string 1)))
(dolist (manual (nreverse manuals))
(message "Searching %s" manual)
(condition-case err