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

pot*_*ato 9 restructuredtext python-sphinx

在每一个渲染我试过,code而且code-block似乎有相同的结果:一个代码块.两者都生成完全相同的html - 包括类和标签类(使用我认为它是docutils?):

<pre class="code [language] literal-block">
Run Code Online (Sandbox Code Playgroud)

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

P.G*_*.G. 11

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

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

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

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

code指令的优点是该文档既可以在Sphinx文档树中使用,也可以在独立的reStructuredText文档中使用.