ReST中的代码和代码块指令有什么区别?

时间:2016-01-18 01:19:09

标签: python-sphinx restructuredtext

在我尝试过的每个渲染器中,codecode-block似乎都有完全相同的结果:一段代码。两者都生成完全相同的html - 包括类和标签类型(使用我认为它是docutils?):

<pre class="code [language] literal-block">

那么,有什么区别?为什么我们两个都有?是否有任何渲染器以不同的方式呈现它们?是否存在语义差异?

1 个答案:

答案 0 :(得分:11)

code是一个reStructuredText指令。 code-block是Sphinx指令。

code-block有一组与code指令不同的选项。 例如。 :emphasize-lines:

在使用Sphinx时,我建议使用code-block指令。

使用code-block时,我总能得到正确的突出显示。使用code时,我有时会获得颜色,有时只会获得文字代码块。我还没弄清楚conf.py中可预测产生彩色输出的设置组合。

code指令确实具有以下优点:文档既可以在Sphinx文档树中使用,也可以在独立的reStructuredText文档中使用。