156

reStructuredText には次のディレクティブがあることを知っています。

.. code:: bash

    gedit pohl.m

コードブロックをレンダリングします。次のようなインライン スニペットの構文を強調表示する方法はありますか。

Do edit the file, type ``gedit pohl.m`` into a terminal.

バックティックはコードとしてマークしますが、ブロックのようなピグメントで強調したいと思います。これは可能ですか?

4

2 に答える 2

250

これをさらに調べたところ、ドキュメントreStructuredText Interpreted Text Rolesに出くわしました。このドキュメントから:

解釈されたテキストは、テキストをバッククォート (`) で囲みます。明示的なロール マーカーは、コロンで区切られたテキストの前後にオプションで表示できます。例えば:

This is `interpreted text` using the default role.

This is :title:`interpreted text` using an explicit role.

coderoleがあるようですので、単純に打ち込めます

:code:`a = b + c`

インライン コード ブロックをレンダリングします。構文の強調表示を取得するには、カスタム ロールを定義できます。例えば

.. role:: bash(code)
   :language: bash

次のように使用できます。

Here is some awesome bash code :bash:`a = b + c`.

ロールの定義は、ロールへの参照の前に配置する必要があることに注意してください。

私がリンクしているドキュメントは、それが参照している docutils のバージョンについて言及していないことに注意してください。code ロールはdocutils 0.8.1 では利用できません (これは私がテストしなければならない唯一のバージョンです)。

于 2012-09-11T07:58:53.473 に答える