# HG changeset patch # User Juanma Barranquero # Date 1044877269 0 # Node ID 0ae2b48491f7a30622e8cdfb9777e38865d1991d # Parent 5c2d8e3b81b4d4b34594980a8e2ba4cb4ace2a60 (Info-follow-nearest-node): Implement new behavior. diff -r 5c2d8e3b81b4 -r 0ae2b48491f7 lisp/info.el --- a/lisp/info.el Mon Feb 10 11:31:36 2003 +0000 +++ b/lisp/info.el Mon Feb 10 11:41:09 2003 +0000 @@ -2113,12 +2113,22 @@ (Info-next-preorder))) (defun Info-follow-nearest-node () - "\\Follow a node reference near point. -Like \\[Info-menu], \\[Info-follow-reference], \\[Info-next], \\[Info-prev] or \\[Info-up] command, depending on where point is. -If no reference to follow, moves to the next node, or up if none." + "Follow a node reference near point. +If point is on a reference, follow that reference. Otherwise, +if point is in a menu item description, follow that menu item." (interactive) (or (Info-try-follow-nearest-node) - (Info-next-preorder))) + (when (save-excursion + (search-backward "\n* menu:" nil t)) + (save-excursion + (beginning-of-line) + (while (not (or (bobp) (looking-at "[^ \t]\\|[ \t]*$"))) + (beginning-of-line 0)) + (when (looking-at "\\* +\\([^\t\n]*\\):") + (Info-goto-node + (Info-extract-menu-item (match-string-no-properties 1))) + t))) + (error "Point neither on reference nor in menu item description"))) ;; Common subroutine. (defun Info-try-follow-nearest-node ()