我知道reStructuredText有这个指令:
.. code:: bash
gedit pohl.m
它呈现代码块。有没有办法让内联片段的语法高亮显示如下:
Do edit the file, type ``gedit pohl.m`` into a terminal.
反引号将其标记为代码,但我想用块之类的pygments突出显示它。这可能吗?
仔细研究了这个问题后,我偶然发现了文件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中没有代码角色(这是我必须测试的唯一版本)。