---
name: "htmltoc"
section: "1"
platform: "linux"
package: "noweb"
version: "2.13-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/htmltoc"
---

# htmltoc(1)

add table of contents to HTML document

## NAME

htmltoc - add table of contents to HTML document

## SYNOPSIS

**htmltoc** \[**-2345**\] \[file\]

## DESCRIPTION

*htmltoc* adds a table of contents to the HTML document named on the command line or provided as standard input. The table of contents is inserted between **\<tableofcontents\>** and **\</tableofcontents\>,** which must appear on lines by themselves. Any text between those two markers is  *discarded.* These markers are inserted automatically by the [*sl2h*(1)](/sl2h/1.md) filter.

The table of contents includes only headers at levels 2, 3, 4, and 5. This can be changed by using a command-line option, e.g., **-123456789P to include all possible headers.**

## BUGS

*htmltoc* **can't cope with a header that is split across multiple lines,** **even though this is legal HTML.**

## SEE ALSO

[*nowebfilters*(7)](/nowebfilters/7.md), [*sl2h*(1)](/sl2h/1.md)

## VERSION

**This man page is from**  *noweb* **version 2.12.**

## AUTHOR

**Norman Ramsey, Tufts University.** **Internet address Norman.Ramsey@tufts.edu.**\
 **Noweb home page at http://www.cs.tufts.edu/~nr/noweb.**

**Stephen Parker provided a preliminary version.**
