#table #content #add #marker #inline #toc #level

bin+lib mdbook-toc

mdbook preprocessor to add Table of Contents

28 releases

0.14.2 Dec 13, 2023
0.14.1 Aug 5, 2023
0.13.0 Jul 18, 2023
0.11.2 Feb 14, 2023
0.2.1 Jul 16, 2019

#184 in Text processing

Download history 517/week @ 2024-01-01 509/week @ 2024-01-08 612/week @ 2024-01-15 570/week @ 2024-01-22 867/week @ 2024-01-29 726/week @ 2024-02-05 693/week @ 2024-02-12 737/week @ 2024-02-19 725/week @ 2024-02-26 651/week @ 2024-03-04 742/week @ 2024-03-11 891/week @ 2024-03-18 509/week @ 2024-03-25 802/week @ 2024-04-01 724/week @ 2024-04-08 688/week @ 2024-04-15

2,791 downloads per month
Used in mdbook-dtmo

MPL-2.0 license

31KB
250 lines

mdbook-toc

A preprocessor for mdbook to add inline Table of Contents support.

It turns this marker:

<!-- toc -->

into a Table of Contents based on headings of the chapter following the marker.

Installation

If you want to use only this preprocessor, install the tool:

cargo install mdbook-toc

Add it as a preprocessor to your book.toml:

[preprocessor.toc]
command = "mdbook-toc"
renderer = ["html"]

Finally, build your book as normal:

mdbook path/to/book

Configuration

Custom TOC marker

The default marker is:

<!-- toc -->

If you wish to use a different marker, such as the GitLab marker [[_TOC_]], you must add the following settings to your book.toml.

[preprocessor.toc]
marker = "[[_TOC_]]"

You can also use multi-line markers such as the GitHub marker, which is:

* auto-gen TOC;
{:toc}

Configure the string with a newline:

[preprocessor.toc]
marker = "* auto-gen TOC;\n{:toc}"

or with multi-line strings:

[preprocessor.toc]
marker = """* auto-gen TOC;
{:toc}"""

Maximum header level

By default the ToC will include headings up to level 4 (####). This can be configured in your book.toml as follows:

[preprocessor.toc]
max-level = 4

License

MPL. See LICENSE.
Copyright (c) 2018-2020 Jan-Erik Rediger janerik@fnordig.de

Dependencies

~11–24MB
~326K SLoC