Function: texinfo-find-lower-level-node

texinfo-find-lower-level-node is a byte-compiled function defined in texnfo-upd.el.gz.

Signature

(texinfo-find-lower-level-node LEVEL REGION-END)

Documentation

Search forward from point for node at any level lower than LEVEL.

Search is limited to the end of the marked region, REGION-END, and to the end of the menu region for the level.

Return t if the node is found, else nil. Leave point at the beginning of the node if one is found; else do not move point.

Source Code

;; Defined in /usr/src/emacs/lisp/textmodes/texnfo-upd.el.gz
(defun texinfo-find-lower-level-node (level region-end)
  "Search forward from point for node at any level lower than LEVEL.
Search is limited to the end of the marked region, REGION-END,
and to the end of the menu region for the level.

Return t if the node is found, else nil.  Leave point at the beginning
of the node if one is found; else do not move point."
  (let ((case-fold-search t))
    (when (and (< (point) region-end)
	       (re-search-forward
		(concat
		 "\\(^@node\\).*\n"	    ; match node line
		 "\\(\\(\\(^@c\\).*\n\\)"   ; match comment line, if any
		 "\\|"			    ; or
		 "\\(^@ifinfo[ ]*\n\\)"	    ; ifinfo line, if any
		 "\\|"			    ; or
		 "\\(^@ifnottex[ ]*\n\\)"   ; ifnottex line, if any
		 "\\)?"			    ; end of expression
		 (eval (cdr (assoc level texinfo-update-menu-lower-regexps)) t))
		;; the next higher level node marks the end of this
		;; section, and no lower level node will be found beyond
		;; this position even if region-end is farther off
		(texinfo-update-menu-region-end level)
		t))
      (goto-char (match-beginning 1))
      t)))