# DiscoTOC - automatic table of contents

**URL:** https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143
**Category:** Theme component
**Tags:** official, disco-toc
**Created:** [March 9, 2019, 5:36am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143 "2019-03-09T05:36:22Z")
**Posts on this page:** 20
**Page:** 3

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 19, 2022, 1:05am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/311 "2022-01-19T01:05:11Z")

</div>

Can you post a link to your site? I suspect the issue is due to styling in your theme.

---

<div class="post-metadata">

### Author: ![thaidb](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/thaidb/32/68488_2.png) [@thaidb](https://meta.discourse.org/u/thaidb)
#### Post date: [January 19, 2022, 7:49am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/312 "2022-01-19T07:49:42Z")

</div>

Here My link:

`https://whois.nhachinhchu.org/t/bang-gia-xem-data-nha-chinh-chu/63389`

---

<div class="post-metadata">

### Author: ![mentalstring](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mentalstring/32/168934_2.png) [@mentalstring](https://meta.discourse.org/u/mentalstring)
#### Post date: [January 19, 2022, 11:33am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/313 "2022-01-19T11:33:55Z")

</div>

Sorry to the interrupt the ongoing discussion. Found something that I’m not sure if it has been reported already.

If the post has a link on a header, the number of clicks is also shown on the TOC entry:

 ![image](https://global.discourse-cdn.com/meta/original/3X/f/1/f13ead60cb4023c1f63f61ce56b971eb43b7e439.png)

 ![image](https://global.discourse-cdn.com/meta/original/3X/8/4/84cf2112a8563c53c593a5c82a4b53fae5eccae9.png)

---

<div class="post-metadata">

### Author: ![simonk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simonk/32/247950_2.png) [@simonk](https://meta.discourse.org/u/simonk)
#### Post date: [January 19, 2022, 1:47pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/314 "2022-01-19T13:47:43Z")

</div>

Since this update, I’m seeing an error on [discourse-docs](https://meta.discourse.org/t/discourse-docs-documentation-management-plugin/130172) pages that have a table of contents. For example, on [this page on Meta](https://meta.discourse.org/docs?ascending=false&category=53&tags=themes&topic=91966), the ToC isn’t displayed, and I see an error in my browser dev tools:

 ![image](https://global.discourse-cdn.com/meta/original/3X/9/0/9001562f08f4fd23c842cf097cfc26ff51c65d66.png)

On my site, I also see a banner at the top of the page saying “Posts may not display correctly because one of the post content decorators on your site raised an error. Check the browser developer tools for more information.”

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 19, 2022, 1:49pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/315 "2022-01-19T13:49:48Z")

</div>

Thanks @simonk, I just (2 minutes ago!) merged a fix for that issue. Please update the component on your site, and let me know if the banner on your own site is persisting.

---

<div class="post-metadata">

### Author: ![simonk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simonk/32/247950_2.png) [@simonk](https://meta.discourse.org/u/simonk)
#### Post date: [January 19, 2022, 1:55pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/316 "2022-01-19T13:55:35Z")

</div>

Thanks for the reply! The error is gone, but the ToC is not displayed within the discourse-docs version of the page. Before yesterday’s update, the ToC was displayed on the discourse-docs version of the page as well as the “normal” version.

(This isn’t urgent for me - I deployed the update on a staging site, not production, so it doesn’t matter that it’s not working properly)

Edit: I’m running 2.8.0.beta11 (42c71789f9), if that makes any difference.

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 19, 2022, 2:00pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/317 "2022-01-19T14:00:34Z")

</div>

Yeah, I see what you mean. Unfortunately, my changes to TOC use an outlet in the topic view that is missing in docs. Will look into it.

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 20, 2022, 4:08am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/318 "2022-01-20T04:08:08Z")

</div>

Made a few more changes to the component today, they should address the issues raised by @mentalstring and @simonk. In your case, Simon, you need a full rebuild because you need to pull an update to the docs plugin as well.

@thaidb it’s very likely that your issue will be fixed once you update the component.

---

<div class="post-metadata">

### Author: ![thaidb](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/thaidb/32/68488_2.png) [@thaidb](https://meta.discourse.org/u/thaidb)
#### Post date: [January 20, 2022, 5:37am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/319 "2022-01-20T05:37:37Z")

</div>

Tks so much, I’m so happy, My issue is solve.  
Thank again..

---

<div class="post-metadata">

### Author: ![simonk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simonk/32/247950_2.png) [@simonk](https://meta.discourse.org/u/simonk)
#### Post date: [January 20, 2022, 10:20am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/320 "2022-01-20T10:20:28Z")

</div>

After a full rebuild, I can confirm that the ToC appears correctly on the discourse-docs page - thanks a lot 👍

I see you’ve also now restricted the ToC to 2 levels. Given the horizontal space, I think this is reasonable, but it means that third-level headings are displayed in the ToC at the same nesting level as their parents.

ie. at the moment, this text:

```plaintext
# First Heading
## First Subheading
### Child of First Subheading
### Child of First Subheading
## Second Subheading
### Child of Second Subheading
### Child of Second Subheading
# Second Heading

```

Produces this ToC:

 ![image](https://global.discourse-cdn.com/meta/original/3X/d/1/d1f3c5899d3136f3bb4df960347051ebfd2254c6.png)

I wonder if it would be better for third-level headings and below to be excluded from the ToC altogether?

Also, the DOM structure doesn’t look quite right - each second level item is a `<ul>` with a single `<li>` inside it:

 ![image](https://global.discourse-cdn.com/meta/original/3X/9/a/9a9bc1b631529dcb31593c78073cc03bb1e82d4e.png)

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 20, 2022, 3:08pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/321 "2022-01-20T15:08:54Z")

</div>

> [@simonk](#):
>
> I see you’ve also now restricted the ToC to 2 levels. Given the horizontal space, I think this is reasonable, but it means that third-level headings are displayed in the ToC at the same nesting level as their parents.

Good catch. I’m not sure how often we use 3+ levels, but it’s possible to reintroduce them, it shouldn’t be too complicated.

> [@simonk](#):
>
> Also, the DOM structure doesn’t look quite right - each second level item is a `<ul>` with a single `<li>` inside it:

Good catch, again. This one was a small mistake, it should be fixed once [this PR](https://github.com/discourse/DiscoTOC/pull/26) is merged.

---

<div class="post-metadata">

### Author: ![simonk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simonk/32/247950_2.png) [@simonk](https://meta.discourse.org/u/simonk)
#### Post date: [January 20, 2022, 3:11pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/322 "2022-01-20T15:11:37Z")

</div>

> [@pmusaraj](#):
>
> I’m not sure how often we use 3+ levels, but it’s possible to reintroduce them, it shouldn’t be too complicated.

If you’re in the mood for feature requests, perhaps the max depth could be controlled via a setting… 😉

---

<div class="post-metadata">

### Author: ![robbie.morrison](https://avatars.discourse-cdn.com/v4/letter/r/c5a1d2/32.png) [@robbie.morrison](https://meta.discourse.org/u/robbie.morrison)
#### Post date: [January 20, 2022, 8:49pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/323 "2022-01-20T20:49:57Z")

</div>

In my experience, the ToC feature only works on the first posting but not on subsequent postings. Is this correct? If so, could my remark be treated as a feature request therefore? BTW, the ToC, even on the first posting, is a really great addition.&nbsp;R

---

<div class="post-metadata">

### Author: ![Steven](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/steven/32/187890_2.png) [@Steven](https://meta.discourse.org/u/Steven)
#### Post date: [January 23, 2022, 1:28pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/324 "2022-01-23T13:28:20Z")

</div>

Hello everyone, I have an issue since the last upgrade on this great theme component, but on mobile only. When I click on the table of contents button, the slider with the full toc is not opening.

If I use a very small window in Desktop, this button and slider works great. So it might be an issue on Android only.

Here is the log on my up-to-date (Discourse and TOC) forum:

```plaintext
Message

Uncaught TypeError: Cannot read properties of null (reading 'classList')
Url: https://iunctis.fr/theme-javascripts/671f772e071bd55050592ff8541b659afe421259.js?__ws=iunctis.fr
Line: 36
Column: 49
Window Location: https://iunctis.fr/t/le-mensuel-01-decembre-2021/9591

Backtrace

TypeError: Cannot read properties of null (reading 'classList')
    at n.showTOCOverlay (https://iunctis.fr/theme-javascripts/671f772e071bd55050592ff8541b659afe421259.js?__ws=iunctis.fr:36:49)
    at e.n._join (https://iunctis.fr/assets/vendor-96a5eaa8d436066b954c21ae5afb7f504310945c679465a2f1ba46b429a95edf.js:36:412333)
    at e.n.join (https://iunctis.fr/assets/vendor-96a5eaa8d436066b954c21ae5afb7f504310945c679465a2f1ba46b429a95edf.js:36:409358)
    at h (https://iunctis.fr/assets/vendor-96a5eaa8d436066b954c21ae5afb7f504310945c679465a2f1ba46b429a95edf.js:36:273784)
    at https://iunctis.fr/assets/vendor-96a5eaa8d436066b954c21ae5afb7f504310945c679465a2f1ba46b429a95edf.js:36:65110
    at a (https://iunctis.fr/assets/vendor-96a5eaa8d436066b954c21ae5afb7f504310945c679465a2f1ba46b429a95edf.js:36:260923)
    at https://iunctis.fr/assets/vendor-96a5eaa8d436066b954c21ae5afb7f504310945c679465a2f1ba46b429a95edf.js:36:65054
    at n._triggerAction (https://iunctis.fr/assets/application-945e3f0cb654a8c23b30e86f5e955be5599a8330d68ce75e97b8228ad45ff6fd.js:1:1254524)
    at n.click (https://iunctis.fr/assets/application-945e3f0cb654a8c23b30e86f5e955be5599a8330d68ce75e97b8228ad45ff6fd.js:1:1254160)

Env

HTTP HOSTS: iunctis.fr

```

If I use an android user agent in my firefox desktop version, I have this error if I click on the button in this forum:

```plaintext
Uncaught TypeError: document.querySelector(...) is null
    showTOCOverlay 4916e6ed2a984e00537fe797b799637f1a801ffe.js:374
    _join _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4033
    join _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3999
    p _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2870
    An _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:1147
    o _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2785
    An _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:1147
    _triggerAction _application-2646ad3bbed41e42bb77806dc41fbea2.js:489
    click _application-2646ad3bbed41e42bb77806dc41fbea2.js:488
    trigger _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2560
    n _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2422
    _run _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4034
    _join _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4033
    join _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3999
    p _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2870
    handleEvent _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2574
    o _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2785
    handleEvent _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2574
    handleEvent _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2499
    setupHandler _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2524
    dispatch _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:347
    handle _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:342
    add _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:342
    Oe _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:339
    each _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:123
    each _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:116
    Oe _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:339
    on _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:358
    initialize _application-2646ad3bbed41e42bb77806dc41fbea2.js:3354
    initialize _application-2646ad3bbed41e42bb77806dc41fbea2.js:62
    runInstanceInitializers _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2730
    each _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4074
    walk _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4064
    each _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4056
    topsort _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4056
    _runInitializer _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2733
    runInstanceInitializers _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2730
    _bootSync _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2604
    didBecomeReady _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2623
    invoke _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3963
    flush _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3955
    flush _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3969
    _end _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4032
    end _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3988
    _run _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4034
    _join _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:4033
    join _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:3999
    p _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2870
    bind _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:2873
    u _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:272
    c _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:273
    setTimeout handler*a/< _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:274
    l _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:265
    fireWith _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:266
    fire _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:266
    l _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:265
    fireWith _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:266
    ready _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:283
    z _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:283
    EventListener.handleEvent* _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:283
    <anonymous> _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:109
    <anonymous> _vendor-64dba8b874ef11bbef3b2bce2fbcf6cc.js:109
4916e6ed2a984e00537fe797b799637f1a801ffe.js:374:18

```

On my phone, I have Chrome version 97.0.4692 if it helps

Am I the only one who experience this?

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 23, 2022, 5:32pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/325 "2022-01-23T17:32:41Z")

</div>

This is a recent regression due to a change in core, I’ve got a fix ready in [FIX: Restore outlet in mobile views by pmusaraj · Pull Request #15683 · discourse/discourse · GitHub](https://github.com/discourse/discourse/pull/15683), once that is merged, you can rebuild your site and the issue should be fixed. Sorry about that.

Last week, I also added back the third indentation level for headings in the component, as mentioned by Simon above.

> [@simonk](#):
>
> perhaps the max depth could be controlled via a setting

I am hesitating to add a setting here, the vast, vast majority of use-cases don’t need it. And, the component has classes for each level as well, so if you want to hide the 4th and 5th level, you can do so with this css:

```css
li.d-toc-h4, li.d-toc-h5 {
  display:none;
}

```

---

<div class="post-metadata">

### Author: ![Steven](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/steven/32/187890_2.png) [@Steven](https://meta.discourse.org/u/Steven)
#### Post date: [January 23, 2022, 7:56pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/326 "2022-01-23T19:56:20Z")

</div>

It’s merged and working fine, thanks!

---

<div class="post-metadata">

### Author: ![simonk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simonk/32/247950_2.png) [@simonk](https://meta.discourse.org/u/simonk)
#### Post date: [January 28, 2022, 10:40am UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/327 "2022-01-28T10:40:42Z")

</div>

I noticed that the `<div data-theme-toc="true"> </div>` at the top of a topic introduced extra margin. For example:

 ![image](https://global.discourse-cdn.com/meta/original/3X/1/1/116bb363510856a84e64cfc7ce0c6b7adf6f2f5d.png)

I’ve added this to my theme, which seems to fix it:

```plaintext
// ToC elements at the top of the post introduce unwanted
// space. Discourse sets the top margin of the first child in the post
// to zero, but this doesn't work when the ToC is the first
// child. Instead we'll set the top margin of the element following
// the ToC to zero.
div[data-theme-toc="true"] + * {
    margin-top: 0px;
}

```

Perhaps something like that needs to be added to the component?

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [January 30, 2022, 10:27pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/328 "2022-01-30T22:27:38Z")

</div>

Good catch, I’ve added that CSS rule in this PR: [UX: Keep core's top margin for first item in OP by pmusaraj · Pull Request #30 · discourse/DiscoTOC · GitHub](https://github.com/discourse/DiscoTOC/pull/30)

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [January 30, 2022, 10:33pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/329 "2022-01-30T22:33:26Z")

</div>

I have addressed this issue in the past by moving the embed code to the bottom of the post. Does feel a bit hacky but it works.

---

<div class="post-metadata">

### Author: ![craigconstantine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/craigconstantine/32/511195_2.png) [@craigconstantine](https://meta.discourse.org/u/craigconstantine)
#### Post date: [February 2, 2022, 2:33pm UTC](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/330 "2022-02-02T14:33:26Z")

</div>

I have posts that have extra DIVs in their bodies. For example, [On Storytelling - Workbench - Podtalk Community](https://forum.podcaster.community/t/on-storytelling/268)

The DIV which triggers the TOC generation is inside a DIV… and TOC notices that. But other headings, inside DIVs, don’t seem to get noticed by TOC.

 ![Screen Shot 2022-02-02 at 09.45.01](https://global.discourse-cdn.com/meta/original/3X/9/b/9bbeff81605bfa87e185c25bbf0125e392e47c85.jpeg)

…not the best screenshot. That’s an H2 in an arbitrary/just-for-styling DIV which does not appear in the TOC.

…not shown is the `<div ` that triggers the TOC, which is inside the DIV with the crazy attribute/value pair…

* * *

updated hours later to add: Maybe just “:scope h1,” etc rather than requiring the headings be immediate children of the scope?

 ![Screen Shot 2022-02-02 at 13.39.55](https://global.discourse-cdn.com/meta/original/3X/0/b/0b49493e84c6b4227fa760328cae54cddca57496.png)

…also, this was mentioned in March '21, [DiscoTOC - automatic table of contents - #255](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143/255)

[Previous page](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143.md?page=2)

[Next page](https://meta.discourse.org/t/discotoc-automatic-table-of-contents/111143.md?page=4)
