# HG changeset patch # User Stefan Monnier # Date 1255960030 0 # Node ID a5942def89eb604c6e3651dfcacd9ee03f83d067 # Parent 6220a5eef4ef475cc85f10129dded22a12ae1081 * info.el (Info-complete-menu-item): Handle `boundaries' explicitly. (Info-menu): Remove unused vars `last' and `completions'. (Info-index-nodes): Remove unused var `node'. diff -r 6220a5eef4ef -r a5942def89eb lisp/ChangeLog --- a/lisp/ChangeLog Mon Oct 19 13:29:34 2009 +0000 +++ b/lisp/ChangeLog Mon Oct 19 13:47:10 2009 +0000 @@ -1,5 +1,9 @@ 2009-10-19 Stefan Monnier + * info.el (Info-complete-menu-item): Handle `boundaries' explicitly. + (Info-menu): Remove unused vars `last' and `completions'. + (Info-index-nodes): Remove unused var `node'. + * info.el (Info-complete-menu-item): Use complete-with-action. 2009-10-19 Dan Nicolaescu diff -r 6220a5eef4ef -r a5942def89eb lisp/info.el --- a/lisp/info.el Mon Oct 19 13:29:34 2009 +0000 +++ b/lisp/info.el Mon Oct 19 13:47:10 2009 +0000 @@ -2440,12 +2440,16 @@ nextnode) (goto-char (point-min)) (search-forward "\n* Menu:") - (if (not (memq action '(nil t))) - (re-search-forward - (concat "\n\\* +" (regexp-quote string) ":") nil t) + (cond + ((eq (car-safe action) 'boundaries) nil) + ((eq action 'lambda) + (re-search-forward + (concat "\n\\* +" (regexp-quote string) ":") nil t)) + (t (let ((pattern (concat "\n\\* +\\(" (regexp-quote string) - Info-menu-entry-name-re "\\):" Info-node-spec-re)) + Info-menu-entry-name-re "\\):" + Info-node-spec-re)) completions (complete-nodes Info-complete-nodes)) ;; Check the cache. @@ -2480,7 +2484,7 @@ (list Info-current-file Info-current-node Info-complete-next-re string completions Info-complete-nodes))) - (complete-with-action action completions string predicate))))))) + (complete-with-action action completions string predicate)))))))) (defun Info-menu (menu-item &optional fork) @@ -2491,12 +2495,10 @@ a new Info buffer. If FORK is a string, it is the name to use for the new buffer." (interactive - (let ((completions '()) - ;; If point is within a menu item, use that item as the default + (let (;; If point is within a menu item, use that item as the default (default nil) (p (point)) beg - (last nil) (case-fold-search t)) (save-excursion (goto-char (point-min)) @@ -2890,7 +2892,7 @@ (setq file (Info-find-file file)))) default-directory)) Info-history Info-history-list Info-fontify-maximum-menu-size - (main-file file) subfiles nodes node) + (main-file file) subfiles nodes) (condition-case nil (with-temp-buffer (while (or main-file subfiles) @@ -2933,7 +2935,7 @@ (Info-goto-node (car nodes)) (while (and (setq node (Info-extract-pointer "next" t)) (string-match "\\" node)) - (setq nodes (cons node nodes)) + (push node nodes) (Info-goto-node node)))) (error nil)) (if nodes