📅  最后修改于: 2023-12-03 14:49:54.181000             🧑  作者: Mango
当我们创建一个很长的文档时,使用目录可以很方便的进行导航。但是当我们的文档中包含多个章节时,如何设置多个目录呢?这就需要使用多个ToC(Table of Contents)了。
先来简单的了解一下单个ToC的使用。
在markdown中使用ToC,需要在文档的开头插入[Toc]标记,使用如下语法:
[Toc]
这个标记会自动将文档中所有的标题头(h1~h6)生成目录。
当我们的文档需要分成多个章节时,我们需要使用更灵活的方式来管理我们的目录。
在markdown语法中,设置多个ToC,需要使用多个[Toc]语法标记。例如,我们有3个章节,每个章节都需要有各自的目录,那么我们就可以像下面这样定义:
# 第一章
[Toc]
## 1.1 章节一
### 1.1.1 小节一
### 1.1.2 小节二
## 1.2 章节二
### 1.2.1 小节一
### 1.2.2 小节二
# 第二章
[Toc]
## 2.1 章节一
### 2.1.1 小节一
### 2.1.2 小节二
## 2.2 章节二
### 2.2.1 小节一
### 2.2.2 小节二
# 第三章
[Toc]
## 3.1 章节一
### 3.1.1 小节一
### 3.1.2 小节二
## 3.2 章节二
### 3.2.1 小节一
### 3.2.2 小节二
上述代码中,我们在每个章节的开头都设置了[Toc]标记,这样就会为每个章节生成一个独立的目录。
除了设置对应的语法标记,我们还可以使用一些高级用法,来实现更多关于 ToC 的效果。
默认情况下,[Toc]会自动加上一个标题标识,如果我们不希望出现这个标题,可以使用如下语法:
[Toc]
{:.no_toc}
如果我们想只显示章节的标题,可以使用以下语法:
[Toc]
{:.no_toc}
{:.toc-level-2}
使用.toc-level-2
就只显示第二层级的标题。
我们可以给每个目录设置不同的id,以便实现更多自定义的效果。例如,我们可以这样定义:
# 第一章
[Toc]
{:#first-toc}
## 1.1 章节一
### 1.1.1 小节一
### 1.1.2 小节二
## 1.2 章节二
### 1.2.1 小节一
### 1.2.2 小节二
这样就可以为第一章生成一个名为"first-toc"的id。
我们可以使用如下语法,来设置ToC的标题:
# ToC
[Toc]
上面的代码会生成一个标题为"ToC"的目录。
以上就是关于 ToC 的一些使用讲解,如果要实现更多高级效果,可以参考各种markdown解析器的文档或源代码。