Regular nodes look like this:
<node> = <separator> File: <fn>, Node: <id1>, (Next: <id2>, )? (Prev: <id3>, )? Up: <id4> <general text, until the next ^_ or end-of-file>
At least one space or tab must be present after each colon and comma, but any number of spaces are ignored. The <id> node identifiers have following format:
<id> = (<lparen><infofile><rparen>)?(<del>?<nodename><del>?)? | <id> = (<lparen><infofile><rparen>)?(<nodename>)?
This <node> defines <id1> in file <fn>, which is typically either ‘manualname’ or ‘manualname.info’. No parenthesized <infofile> component may appear within <id1>.
Each of the identifiers after
refer to nodes or anchors within a file. These pointers normally
refer within the same file, but ‘(dir)’ is often used to point to
the top-level dir file. If an <infofile> component is used then
the node name may be omitted, in which case the node identifier refers
to the ‘Top’ node within the referenced file.
Prev pointers are optional. The
pointer is technically also optional, although most likely this
indicates a mistake in the node structuring. Conventionally, the
nodes are arranged to form a tree, but this is not a requirement of
Node names containing periods, commas, colons or parentheses
(including @-commands which produce any of these) can confuse
If it is necessary to refer to a node whose name contains any of
these, the <nodename> should be surrounded by a pair of <del>
characters. There is support in
makeinfo for adding these
characters (see INFO_SPECIAL_CHARS_QUOTE); however, we don’t
recommend you make use of this support until such time as Info-reading
programs that recognize this syntax are common. See Node Line Requirements.
The use of non-ASCII characters in the names of nodes is permitted, but can cause problems in cross-references between nodes in Info files with different character encodings, and also when node names from many different files are listed (for example, with the --apropos option to the standalone Info browser), so we recommend avoiding them whenever feasible. For example, prefer the use of the ASCII apostrophe character (') to Unicode directional quotes.
The <general text> of the node can include the special constructs described next.