Commit 03524be6 authored by Richard M. Stallman's avatar Richard M. Stallman
Browse files

(Info-read-node-name-1): New function.

(Info-read-node-name): Use Info-read-node-name-1
to avoid getting confused by spaces when text starts with (FILENAME).
parent a2964053
......@@ -605,9 +605,28 @@ In standalone mode, \\<Info-mode-map>\\[Info-exit] exits Emacs itself."
(Info-find-node (if (equal filename "") nil filename)
(if (equal nodename "") "Top" nodename))))
;; This function is used as the "completion table" while reading a node name.
;; It does completion using the alist in completion-table
;; unless STRING starts with an open-paren.
(defun Info-read-node-name-1 (string predicate code)
(let ((no-completion (and (> (length string) 0) (eq (aref string 0) ?\())))
(cond ((eq code nil)
(if no-completion
(try-completion string completion-table predicate)))
((eq code t)
(if no-completion
(all-completions string completion-table predicate)))
((eq code 'lambda)
(if no-completion
(assoc string completion-table))))))
(defun Info-read-node-name (prompt &optional default)
(let* ((completion-ignore-case t)
(nodename (completing-read prompt (Info-build-node-completions))))
(completion-table (Info-build-node-completions))
(nodename (completing-read prompt 'Info-read-node-name-1)))
(if (equal nodename "")
(or default
(Info-read-node-name prompt))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment