在Markdown中使用Boostrap组件(例如labels和alerts)的最佳方法是什么? Pelican twitter_bootstrap_rst_directives似乎提供了正确的功能,但对于RST文件。
答案 0 :(得分:1)
开箱即用,Markdown不提供此类功能。事实上,没有"指令"在Markdown。正如原Syntax Rules中所述:
Markdown的语法仅用于一个目的:用作网络写作的格式。
Markdown不是HTML的替代品,甚至不接近它。它的语法非常小,仅对应于HTML标签的一小部分。我们的想法不是创建一种语法,以便更容易插入HTML标记。在我看来,HTML标签已经很容易插入。 Markdown的想法是让阅读,编写和编辑散文变得容易。 HTML是一种发布格式; Markdown是一种写作形式。因此,Markdown的格式化语法仅解决可以用纯文本传达的问题。
对于Markdown语法未涵盖的任何标记,您只需使用HTML本身。没有必要为它添加前缀或分隔它以表明您正在从Markdown切换到HTML;你只需使用标签。
在这种情况下,您只需将Bootstrap所需的HTML直接插入到您的文档中即可。
唯一的限制是块级HTML元素 - 例如
<div>
,<table>
,<pre>
,<p>
等 - 必须通过空行与周围内容分开,并且不应缩进块的开始和结束标记带有标签或空格。 Markdown非常聪明,不会在HTML块级标记周围添加额外的(不需要的)<p>
标记。
也就是说,您可以开发自己的Markdown扩展并创建自己的&#34;指令。&#34;事实上,如果你使用Pelican,它依赖Python-Markdown进行Markdown解析,而Python-Markdown有Extension API,它允许你开发自己的扩展(参见tutorial here)。当然,您可能需要查看third-party extension列表,看看其他人是否已创建此类扩展程序。
如果没有,并且您决定创建自己的,我可以建议使用HTML注释作为指令的语法。这样,如果/当您的文档使用不支持自定义语法的Markdown解析器进行解析时,指令将不会破坏解析器并且不会受到影响。鉴于Pelican已经为Rst提供了此类功能的支持,该社区内现有兴趣。如果你问这个社区,可能会有一些兴趣/帮助来为指令开发合理的语法。