reStructuredText中的内联代码突出显示

时间:2012-06-03 13:24:32

标签: restructuredtext

我知道reStructuredText有这个指令:

.. code:: bash

    gedit pohl.m

呈现代码块。有没有办法让内联片段的语法高亮显示如下:

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

反引号将其标记为代码,但我想用块之类的pygments突出显示它。这可能吗?

1 个答案:

答案 0 :(得分:181)

在研究了这一点之后,我偶然发现了reStructuredText Interpreted Text Roles文件。从这份文件:

  

解释文本在文本周围使用反引号(`)。显式角色标记可以选择出现在文本之前或之后,用冒号分隔。例如:

This is `interpreted text` using the default role.

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

似乎有code role,因此您只需输入

即可
:code:`a = b + c`

呈现内联代码块。要获得语法突出显示,您可以定义自定义角色。例如

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

然后您可以这样使用:

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

请注意,必须在引用角色之前放置角色定义。

请注意,我链接到的文档未提及它所引用的docutils的版本。代码角色可用于docutils 0.8.1(这是我必须测试的唯一版本)。

相关问题