2016-01-18 4 views
5

В каждом рендерере, который я пробовал, code и code-block, похоже, имеют тот же результат: блок кода. Оба формирующих тот же HTML - в том числе классов и тегами типа (с использованием я думаю, что это было Docutils?):В чем разница между директивами кода и кода в ReST?

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

Итак, в чем разница? Почему у нас есть оба? Есть ли средства визуализации, которые делают их по-другому? Есть ли семантическая разница?

ответ

6

code является директивой reStructuredText. code-block является директивой Sphinx.

code-block имеет другой набор опций для директивы code. . :emphasize-lines:

Как вы используете Sphinx Я бы рекомендовал использовать директиву code-block.

При использовании code-block Я всегда получаю правильную подсветку. При использовании code я иногда получаю цвета, а иногда просто буквенные кодовые блоки. Мне еще предстоит выяснить, какие комбинации настроек в conf.py, которые предсказуемо генерируют цветной выход.

Директива code имеет то преимущество, что документ может использоваться как в дереве документов Sphinx, так и в автономном документе reStructuredText.

Смежные вопросы