我的Markdown(表格中的项目符号列表)中有一些嵌入式HTML。有没有一种方法可以缩进我的HTML,而无需Pandoc将其视为逐字代码块?
有点,但是您必须更改Pandoc的默认值。
降价规则明确禁止这样做:
唯一的限制是块级HTML元素-例如
<div>,<table>,<pre>,<p>等-必须从周围用空行内容分离,并且该块的开始和结束标签不应与制表符或空格缩进。
但是,如果您注意到了,上面引用的规则确实明确指出“仅不应缩进该块的开始和结束标记”。缩进“开始和结束标记”中的内容没有任何限制。实际上,““开始和结束标签”之间的内容甚至没有作为Markdown处理,因此可以随意缩进,换句话说,这是完全可以接受的:
<table>
<thead>
<tr>
<th>A header</th>
</tr>
</thead>
</table>
Run Code Online (Sandbox Code Playgroud)
除了默认情况下在Pandoc中不起作用。如Pandoc 文档中所述:
标准Markdown允许您包括HTML“块”:平衡标记之间的HTML块,这些标记与周围的文本用空白行隔开,并在左边界处开始和结束。在这些块中,所有内容都解释为HTML,而不是Markdown。因此(例如),
*并不表示强调。当使用该
markdown_strict格式时,Pandoc会以这种方式运行。但默认情况下,pandoc会将HTML块标签之间的内容解释为Markdown。
因此,您需要使用raw_html扩展名或markdown_strict输出格式。
对于“严格模式”,请使用:
pandoc --from markdown_strict
Run Code Online (Sandbox Code Playgroud)
或不使用严格模式但仍获得所需的HTML行为(禁用markdown_in_html_blocks扩展并启用raw_html扩展):
pandoc --from markdown-markdown_in_html_blocks+raw_html
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2803 次 |
| 最近记录: |