ReST 中的代码和代码块指令有什么区别?
What's the difference between the code and code-block directives in ReST?
在我尝试过的每个渲染器中,code
和 code-block
似乎有完全相同的结果:一段代码。两者都生成完全相同的 html——包括 类 和标签种类(使用我认为它是 docutils?):
<pre class="code [language] literal-block">
那么,有什么区别呢?为什么我们两者都有?是否有任何渲染器以不同方式渲染它们?有语义差异吗?
code
是一个 reStructuredText 指令。
code-block
是 Sphinx 指令。
code-block
与 code
指令有一组不同的选项。
例如。 :emphasize-lines:
当您使用 Sphinx 时,我建议您使用 code-block
指令。
使用 code-block
时,我总能得到正确的突出显示。使用 code
时,我有时会得到颜色,有时只是文字代码块。我还没有弄清楚 conf.py 中的哪些设置组合可以预测地生成彩色输出。
code
指令的优点是该文档既可以在 Sphinx 文档树中使用,又可以同时作为独立的 reStructuredText 文档使用。
在我尝试过的每个渲染器中,code
和 code-block
似乎有完全相同的结果:一段代码。两者都生成完全相同的 html——包括 类 和标签种类(使用我认为它是 docutils?):
<pre class="code [language] literal-block">
那么,有什么区别呢?为什么我们两者都有?是否有任何渲染器以不同方式渲染它们?有语义差异吗?
code
是一个 reStructuredText 指令。
code-block
是 Sphinx 指令。
code-block
与 code
指令有一组不同的选项。
例如。 :emphasize-lines:
当您使用 Sphinx 时,我建议您使用 code-block
指令。
使用 code-block
时,我总能得到正确的突出显示。使用 code
时,我有时会得到颜色,有时只是文字代码块。我还没有弄清楚 conf.py 中的哪些设置组合可以预测地生成彩色输出。
code
指令的优点是该文档既可以在 Sphinx 文档树中使用,又可以同时作为独立的 reStructuredText 文档使用。