5.4.3 Sectioning commands

The Notation Reference uses section headings at four, occasionally five, levels.

• Level 1: @chapter
• Level 2: @section
• Level 3: @subsection
• Level 4: @unnumberedsubsubsec
• Level 5: @subsubsubheading

The first three levels are numbered in HTML, the last two are not. Numbered sections correspond to a single HTML page in the split HTML documents.

The first four levels always have accompanying nodes so they can be referenced and are also included in the ToC in HTML.

Most of the manual is written at level 4 under headings created with

```@node Foo
@unnumberedsubsubsec Foo
```

Level 3 subsections are created with

```@node Foo
@subsection Foo
```

Level 4 headings and menus must be preceded by level 3 headings and menus, and so on for level 3 and level 2. If this is not what is wanted, please use:

```@subsubsubheading Foo
```

Please leave two blank lines above a `@node`; this makes it easier to find sections in texinfo.

Do not use any `@` commands for a `@node`. They may be used for any `@sub...` sections or headings however.

```not:
@node @code{Foo} Bar
@subsection @code{Foo} Bar

@node Foo Bar
@subsection @code{Foo} Bar
```

No punctuation may be used in the node names. If the heading text uses punctuation (in particular, colons and commas) simply leave this out of the node name and menu.

```@menu
* Foo Bar::

@node Foo Bar
@subsection Foo: Bar
```

Backslashes must not be used in node names or section headings. If the heading text should include a backslash simply leave this out of the node name and menu and replace it with `@bs{}` in the heading text.

```@menu
* The set command

@node The set command
@subsection The @code{@bs{}set} command
```

References to such a node may use the third argument of the `@ref` command to display the texually correct heading.

```@ref{The set command,,The @code{@bs{}set command}
```

With the exception of `@` commands, `\` commands and punctuation, the section name should match the node name exactly.

Sectioning commands (`@node` and `@section`) must not appear inside an `@ignore`. Separate those commands with a space, ie `@n` `ode`.

Nodes must be included inside a

```@menu
* foo::
* bar::