NAME
toc - insert a table of contents in an HTML file
SYNOPSIS
toc [ -x ] [ -l low ]
[ -h high ] [ file ] [ -t ]
DESCRIPTION
The toc command reads an HTML file, inserts ID attributes
in all H1 to H6 that don't have one already, and also inserts A
elements with NAME attributes, so old browsers will recognize the
H1 to H6 headers as target anchors as well. The output is written
to stdout.
If there is a comment of the form
<!--toc-->
or a pair of comments
<!--begin-toc-->
<!--end-toc-->
then the comment, or the pair with everything in between will be
replaced by a table of contents, consisting of a list (UL) of links
to all headers in the document.
If a header has a CLASS attribute with as value (or one of its
values) the keyword "no-toc", then that header will not appear in
the table of contents.
OPTIONS
The following options are supported:
- -x
- Use XML conventions: empty elements are written with a slash at
the end: <IMG />
- -l low
- Sets the lowest numbered header to appear in the table of
content. Default is 1 (i.e., H1).
- -h high
- Sets the highest numbered header to appear in the table of
content. Default is 6 (i.e., H6).
- -t
- Normally, toc adds both ID attributes and empty A
elements with a NAME attribute and CLASS="bctarget", so that older
browsers that do no understand ID will still find the target. With
this option, the A elements will not be generated.
OPERANDS
The following operand is supported:
- file
- The name of an HTML file. If absent, standard input is read
instead.
EXIT STATUS
The following exit values are returned:
- 0
- Successful completion.
- >0
- An error occurred in the parsing of the HTML file. toc
will try to correct the error and produce output
anyway.
SEE ALSO
num(1),
normalize(1),
xml2asc(1)
asc2xml(1)
BUGS
The error recovery for incorrect HTML is primitive.