Mercurial > emacs
comparison lisp/info.el @ 12779:5b3d83e51b91
(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).
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 05 Aug 1995 20:56:23 +0000 |
parents | cd83cf47be08 |
children | d912ac1e1f00 |
comparison
equal
deleted
inserted
replaced
12778:657be7aaa043 | 12779:5b3d83e51b91 |
---|---|
603 (if trim (setq nodename (substring nodename 0 trim)))) | 603 (if trim (setq nodename (substring nodename 0 trim)))) |
604 (if transient-mark-mode (deactivate-mark)) | 604 (if transient-mark-mode (deactivate-mark)) |
605 (Info-find-node (if (equal filename "") nil filename) | 605 (Info-find-node (if (equal filename "") nil filename) |
606 (if (equal nodename "") "Top" nodename)))) | 606 (if (equal nodename "") "Top" nodename)))) |
607 | 607 |
608 ;; This function is used as the "completion table" while reading a node name. | |
609 ;; It does completion using the alist in completion-table | |
610 ;; unless STRING starts with an open-paren. | |
611 (defun Info-read-node-name-1 (string predicate code) | |
612 (let ((no-completion (and (> (length string) 0) (eq (aref string 0) ?\()))) | |
613 (cond ((eq code nil) | |
614 (if no-completion | |
615 string | |
616 (try-completion string completion-table predicate))) | |
617 ((eq code t) | |
618 (if no-completion | |
619 nil | |
620 (all-completions string completion-table predicate))) | |
621 ((eq code 'lambda) | |
622 (if no-completion | |
623 t | |
624 (assoc string completion-table)))))) | |
625 | |
608 (defun Info-read-node-name (prompt &optional default) | 626 (defun Info-read-node-name (prompt &optional default) |
609 (let* ((completion-ignore-case t) | 627 (let* ((completion-ignore-case t) |
610 (nodename (completing-read prompt (Info-build-node-completions)))) | 628 (completion-table (Info-build-node-completions)) |
629 (nodename (completing-read prompt 'Info-read-node-name-1))) | |
611 (if (equal nodename "") | 630 (if (equal nodename "") |
612 (or default | 631 (or default |
613 (Info-read-node-name prompt)) | 632 (Info-read-node-name prompt)) |
614 nodename))) | 633 nodename))) |
615 | 634 |