OnWorks favicon

hxtoc - Online in the Cloud

Run hxtoc in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command hxtoc that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



hxtoc - insert a table of contents in an HTML file


hxtoc [ -x ] [ -l low ] [ -h high ] [ file ] [ -t ] [ -d ] [ -c class ]


The hxtoc command reads an HTML file, inserts missing ID attributes in all H1 to H6
elements between the levels -l and -h (unless the option -d is in effect, see below) and
also inserts A elements with NAME attributes, so old browsers will recognize the H1 to H6
headers as target anchors as well (unless the option -t is in effect). The output is
written to stdout.

If there is a comment of the form


or a pair of comments


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.

The text of headers is copied to this table of contents, including any inline markup,
except that DFN tags and SPAN tags with a CLASS of "index" are omitted (but the elements
content is copied).

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.


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, hxtoc 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

-c class The generated UL elements in the table of contents will have a CLASS attribute
with the value class. The default is "toc".

-d Tries to use sectioning elements as targets in the table of contents instead of
H1 to H6. A sectioning elements is a DIV, SECTION, ARTICLE, ASIDE or NAV element
whose first child is a heading element (H1 to H6) or an HGROUP. The sectioning
element will be given an ID if it doesn't have one yet. With this option, the
level of any H1 to H6 that is the first child of a sectioning element (or of an
HGROUP that is itself the first child of a sectioning element) is not determined
by its name, but by the nesting depth of the sectioning elements. (Any H1 to H6
that are not the first child of a sectioning element still have their level
implied by their name.)


The following operand is supported:

file The name of an HTML file. If absent, standard input is read instead.


The following exit values are returned:

0 Successful completion.

> 0 An error occurred in the parsing of the HTML file. hxtoc will try to correct
the error and produce output anyway.

Use hxtoc online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Asuswrt-Merlin is a third party
    firmware for select Asus wireless
    routers. Based on the Asuswrt firmware
    developed by Asus, it brings tweaks, new
    features and ...
    Download Asuswrt-Merlin
  • 2
    Atom is a text editor that's
    modern, approachable and full-featured.
    It's also easily customizable- you
    can customize it to do anything and be
    able to ...
    Download Atom
  • 3
    Osu! is a simple rhythm game with a well
    thought out learning curve for players
    of all skill levels. One of the great
    aspects of Osu! is that it is
    Download Osu!
  • 4
    LIBPNG: PNG reference library
    LIBPNG: PNG reference library
    Reference library for supporting the
    Portable Network Graphics (PNG) format.
    Audience: Developers. Programming
    Language: C. This is an application that
    can also...
    Download LIBPNG: PNG reference library
  • 5
    Metal detector based on  RP2040
    Metal detector based on RP2040
    Based on Raspberry Pi Pico board, this
    metal detector is included in pulse
    induction metal detectors category, with
    well known advantages and disadvantages.
    Download Metal detector based on RP2040
  • 6
    PAC Manager
    PAC Manager
    PAC is a Perl/GTK replacement for
    SecureCRT/Putty/etc (linux
    ssh/telnet/... gui)... It provides a GUI
    to configure connections: users,
    passwords, EXPECT regula...
    Download PAC Manager
  • More »

Linux commands