使用嵌套在HTML中的Markdown创建目录

时间:2015-01-05 10:18:25

标签: html markdown pandoc

每当我在HTML标记内部进行markdown时,它都不会使用table of contents选项生成。例如,

#Test

##Test2

Hello there!

#Test3

##Test4

<div>

#hello

</div>

输出:

<nav id="TOC">
<ul>
<li><a href="#test">Test</a><ul>
<li><a href="#test2">Test2</a></li>
</ul></li>
<li><a href="#test3">Test3</a><ul>
<li><a href="#test4">Test4</a></li>
</ul></li>
</ul>
</nav>
<h1 id="test">Test</h1>
<h2 id="test2">Test2</h2>
<p>Hello there!</p>
<h1 id="test3">Test3</h1>
<h2 id="test4">Test4</h2>
<div>
<h1>hello</h1>
</div>

我使用的命令行是:

pandoc -f markdown -t html5 --toc -s test.md

是否可以将目录包含嵌套在HTML中的降价?

1 个答案:

答案 0 :(得分:1)

由于我必须解决同样的问题,我想我会分享它。

Pandoc作者在this issue中指明了这种行为背后的原因。

实际上,他还指定了解决方法。只需将<div>替换为<article>即可。在你的情况下,它将成为:

#Test

##Test2

Hello there!

#Test3

##Test4

<article>

#hello

</article>
用你的命令行

,它给了我

<nav id="TOC">
<ul>
<li><a href="#test">Test</a><ul>
<li><a href="#test2">Test2</a></li>
</ul></li>
<li><a href="#test3">Test3</a><ul>
<li><a href="#test4">Test4</a></li>
</ul></li>
<li><a href="#hello">hello</a></li>
</ul>
</nav>
<h1 id="test">Test</h1>
<h2 id="test2">Test2</h2>
<p>Hello there!</p>
<h1 id="test3">Test3</h1>
<h2 id="test4">Test4</h2>
<article>
<h1 id="hello">hello</h1>
</article>
相关问题