# HG changeset patch # User Richard M. Stallman # Date 824158659 0 # Node ID b0df80fef82c838bc29cabe20892206cd5e36720 # Parent de955910bcef2ca59205954d4ad6fb97a4a61501 (Info-find-index-name): New subroutine, from Info-index-next. Match any type of definition, not just Function and Command. (Info-index-next): Use Info-find-index-name. (Info-find-node, Info-index, Info-index-next): Use `...' in err msgs. diff -r de955910bcef -r b0df80fef82c lisp/info.el --- a/lisp/info.el Mon Feb 12 20:56:46 1996 +0000 +++ b/lisp/info.el Mon Feb 12 20:57:39 1996 +0000 @@ -374,7 +374,7 @@ (if (not (eq (current-buffer) (get-buffer "*info*"))) (setq guesspos (Info-read-subfile guesspos)))) - (error "No such node: \"%s\"" nodename)))) + (error "No such node: `%s'" nodename)))) (goto-char (max (point-min) (- guesspos 1000))) ;; Now search from our advised position (or from beg of buffer) ;; to find the actual node. @@ -1328,7 +1328,7 @@ (or matches (progn (Info-last) - (error "No \"%s\" in index" topic))) + (error "No `%s' in index" topic))) ;; Here it is a feature that assoc is case-sensitive. (while (setq found (assoc topic matches)) (setq exact (cons found exact) @@ -1353,24 +1353,28 @@ (forward-line (nth 3 (car Info-index-alternatives))) (forward-line 3) ; don't search in headers (let ((name (car (car Info-index-alternatives)))) - (if (or (re-search-forward (format - "\\(Function\\|Command\\): %s\\( \\|$\\)" - (regexp-quote name)) nil t) - (search-forward (format "`%s'" name) nil t) - (and (string-match "\\`.*\\( (.*)\\)\\'" name) - (search-forward - (format "`%s'" (substring name 0 (match-beginning 1))) - nil t)) - (search-forward name nil t)) - (beginning-of-line) - (goto-char (point-min))))) - (message "Found \"%s\" in %s. %s" + (Info-find-index-name name))) + (message "Found `%s' in %s. %s" (car (car Info-index-alternatives)) (nth 2 (car Info-index-alternatives)) (if (cdr Info-index-alternatives) "(Press `,' for more)" "(Only match)"))) +(defun Info-find-index-name (name) + "Move point to the place within the current node where NAME is defined." + (if (or (re-search-forward (format + "[a-zA-Z]+: %s\\( \\|$\\)" + (regexp-quote name)) nil t) + (search-forward (format "`%s'" name) nil t) + (and (string-match "\\`.*\\( (.*)\\)\\'" name) + (search-forward + (format "`%s'" (substring name 0 (match-beginning 1))) + nil t)) + (search-forward name nil t)) + (beginning-of-line) + (goto-char (point-min)))) + (defun Info-undefined () "Make command be undefined in Info." (interactive)