pandoc处理受防护的代码块是否存在问题?

时间:2017-05-18 15:31:25

标签: markdown pandoc github-flavored-markdown

我不知道我做错了什么(我对markdown不是很有经验)但是我有一个.md文件:

Here is some code:
~~~bash
my_command arg1 arg2
~~~

我想用pandoc识别带有github语法的受防护代码块,所以我使用这个命令: pandoc -f markdown_github+fenced_code_blocks+fenced_code_attributes -t html -s 但是pandoc无法识别代码块。这是我得到的输出:

Here is some code:
~bash
my_command arg1 arg2
~

如果我在代码块之前添加换行符,它确实有效:

Here is some code:

~~~bash
my_command arg1 arg2
~~~

正确的输出:

Here is some code:

my_command arg1 arg2

如果我在GitHub中尝试我原来的.md文件,它就会被识别出来。在pandoc中是否有一些选项,我缺少使我的原始.md工作?

1 个答案:

答案 0 :(得分:1)

Pandoc的fenced_code_blocks扩展名需要空行。来自the manual

  

与常规代码块一样,隔离代码块必须通过空行与周围文本分开。

此外,pandoc中的github_markdown读者不是一个独立的读者(只有markdown and Common Mark readers):它只是reading regular markdown with some default extensions,不同于普通的pandoc风味的降价阅读器。< / p>

这意味着即使在写github降价时,您也必须遵守此规则。除了预处理文件以在编译之前添加换行符之外,我没有看到它的方法。