Markdown 解析的一个方面曾多次让我烦恼:代码块开头缺少换行符。从文档中:
要在 Markdown 中生成代码块,只需将块的每一行缩进 至少 4 个空格或 1 个制表符。例如,给定这个输入: 这是一个正常的段落: 这是一个代码块。 Markdown 将生成: <p>这是一个普通的段落:</p> <pre><code>这是一个代码块。 </code></pre>
我希望输出是这样的:
<pre><代码> 这是一个代码块。 </code></pre>
我不只是疯了:缺少换行符和 1) 导致代码块的填充在第一行不一致地应用(见下图)和 2) 在我的浏览器的 DOM 检查中不可见,仅通过做“查看源代码”。
它在浏览器中的外观:
它应该看起来如何:
我以各种方式解决了这个问题:
- 不要填充内部元素
- 后处理 HTML 并添加换行符
...但我很想获得更好的 HTML 输出。
是否有任何 Markdown 解析器默认添加换行符,或者(因为这似乎是非规范,尽管很简单)允许配置这样做?