How can I create a table of content in GitLab wiki?
Asked Answered
A

5

27

I am a big fan of the __TOC__ that creates a table of content on a Wikimedia page.

Whenever you write things like this on a Wikimedia page:

This is a page for my project

## Credits ##

bla bla

## License ##

bla bla

__TOC_ automagically creates a table of content that allows you to navigate through inner links of the page.

I noticed that this is somehow possible in GitHub wiki pages: How do I create some kind of table of content in GitHub wiki? by using different tricks.

However, I miss this feature in GitLab wiki pages. Does it provide such functionality?

Anchorage answered 7/11, 2017 at 9:49 Comment(0)
A
45

So this exists! I finally found a Merge Request in in the GitLab Community Edition: Replace Gollum [[_TOC_]] tag with result of TableOfContentsFilter

As its name describes, to have a table of contents you need to write the following:

[[_TOC_]]

All together, you can write something like:

This is a page for my project

[[_TOC_]]

## Credits

bla bla

## License

bla bla

and will show like this:

enter image description here

This is available from the GitLab 8.6 release as described in its milestone.

Anchorage answered 7/11, 2017 at 9:49 Comment(4)
This no longer appears to work. has it been replaced?Saideman
@Saideman what version of GitLab are you using? It works well in my 11.3. You can also try what is described in the Markdown Guide by GitLBAnchorage
The error was mine. I presumed this would render online for a top level project README.md, when it is only intended to work when using the wiki features of gitlab.Saideman
@Saideman ah right, it makes sense. There are some requests to have this in place: gitlab.com/gitlab-org/gitlab/issues/21901Anchorage
L
2

This should be easier with GitLab 15.3 (August 2022):

Visualize table of contents in the WYSIWYG wiki editor

When you’re editing a wiki page in the rich text WYSIWYG editor, you expect to see an accurate representation of the content as it will appear after it’s published.
Some elements are too complex for plain text formatting, and require short codes or macros that generate content when the page is built.

A wiki’s table of contents is one example: it generates a list from your page’s subheadings, simplifying navigation of very long pages.
However, WYSIWYG page editing displayed a table of contents as a static placeholder block.

GitLab 15.3 shows a visual representation of the Table of Contents in the WYSIWYG wiki editor.

To add a table of contents while editing a page, select the plus (+) icon in the toolbar, then select Table of Contents.
The table of contents updates in real time as you create and edit subheadings on the page, helping you monitor the outline of your longer wiki pages.

See Documentation and Issue.

Long answered 29/8, 2022 at 21:36 Comment(0)
T
0

Should be something like this

 ##### Table of Contents  
[1.-First Topic](#first-topic)
[2.-Second Topic](#second-topic) 
[3.-Third Topic](#third_topic)

And then you will reference each on the same page by using

 <a name="first-topic"/>
 <a name="second-topic"/>
 <a name="third-topic"/>
Tangle answered 26/9, 2019 at 16:24 Comment(1)
Note, though, that [[_TOC_]] creates this content automatically, which is what I was asking for in the question. We always have time to make it manually, but automagically is better :)Anchorage
S
0

Try using {{< toc >}} on top of the document. It should automatically generate the TOC for you.

Spinelli answered 15/12, 2020 at 6:49 Comment(1)
where did you try it? In my GitLab 11.3.3-ee it does not work, while [[_TOC_]] doesAnchorage
L
0

You can use either [TOC] or aforementioned [[_TOC_]] as described on the link.

Longsighted answered 29/8, 2022 at 8:0 Comment(0)

© 2022 - 2025 — McMap. All rights reserved.