Are numbered headings in Markdown / Rdiscount possible?

纵饮孤独 提交于 2019-12-02 17:15:14

Yes, try Pandoc. This works for me:

pandoc --number-sections < test.md > out.html

(Source)

Markdown to produce the numbered outline you mention in the original post looks like this:

# My top-level topic

## My first subtopic

## Another subtopic

### A sub-subtopic

## Another top-level topic

If you want deeper indenting for sub-sections, you might be able to achieve this with inline CSS. For example, placing this at the top of the above Markdown source indents the headers:

<style type="text/css">
  h2 { margin-left: 10px; }
  h3 { margin-left: 20px; }
</style>

But say you had paragraphs of text under your headings... I don't know how to indent that to the same level as the above header.

Update 2015-10-18: Markdeep has numbered headings (any many other fancy features). Check that out too!

If your markdown tool supports customized theme by CSS, add below snippet into CSS to enable heading number:

body {
    counter-reset: h1
}

h1 {
    counter-reset: h2
}

h2 {
    counter-reset: h3
}

h3 {
    counter-reset: h4
}

h1:before {
    counter-increment: h1;
    content: counter(h1) ". "
}

h2:before {
    counter-increment: h2;
    content: counter(h1) "." counter(h2) ". "
}

h3:before {
    counter-increment: h3;
    content: counter(h1) "." counter(h2) "." counter(h3) ". "
}

h4:before {
    counter-increment: h4;
    content: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) ". "
}

I uses Typora, which supports auto numbering for headings in this approach.

If you want to edit the markdown file itself, and not only the resulting HTML file, try enumerate-markdown with python 3

pip install enumerate-markdown
markdown-enum filename.md filename.md

Example - input

# header 1
text
## header 2
text
# header 3
text

Output

# 1.  header 1
text
## 1.1  header 2
text
# 2.  header 3
text

if you later edit the file and run the script again, then it updates old enumeration.

As @adam-monsen points out 'pandoc --number-sections' does the trick. You can also simply add numbersections: true to th YAML-Header to activate numbered headings for your file.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!