Insert and maintain a table of contents in Markdown files.
tocenize generates a TOC (table of content) from Markdown files and inserts or updates it in the given file.
- Cross-platform command line utility
- Windows, Linux, Mac and *bsd (anything the Go compiler will handle)
- Anchor links are compatible to GFM (Github flavoured Markdown)
- Automatic "intelligent" insertion of new TOC
- Update existing TOCs without moving it
- Configurable max. and min. header depth
- Line endings are kept intact (LF or CRLF is detected and then used for new lines)
Compiled binaries are available on the releases page.
Make sure to place it somewhere in your $PATH
.
If you have a working Go environment, simply run:
go install github.com/nochso/tocenize/cmd/tocenize
If you've added $GOPATH/bin
to your $PATH
, you can now run tocenize
from
anywhere.
The output of tocenize -h
should be self explanatory:
tocenize [options] FILE...
-d print full diff to stdout
-e update only existing TOC (no insert)
-indent string
string used for nesting (default "\t")
-max int
maximum depth (default 99)
-min int
minimum depth (default 1)
-p print full result to stdout
-v print version
- github.com/axelbellec/gotoc inserts on top, doesn't update existing TOC, doesn't support setext-style headers
All notable changes to this project will be documented in the changelog.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
This project is released under the MIT license.