在ReStructuredText中加粗斜体

时间:2012-08-16 09:51:18

标签: documentation python-sphinx restructuredtext

我正在使用ReStructuredText(ReST)格式编写一些文档,以便稍后使用Sphinx生成网页,我找不到写一些“粗体斜体”文本的方法。

所谓的“强调”(斜体)和“强烈强调”(粗体)文本都有标记。它们分别是*italic text***bold text**。我还阅读了一些关于这种格式的文档,这些格式标记不能简单地“嵌套”。即***text***(或** *text* **)不会生成 粗体斜体 文字。

仍然可能有某种方法来生成一个用粗体和斜体标记强调的文本,因为通过这种方式标记文本是一种普遍的做法。

3 个答案:

答案 0 :(得分:23)

  

尽管Markdown支持嵌套粗体和斜体,但reStructuredText却不支持(这是Markdown功能更强大的罕见情况之一,因为无法在reStructuredText中表示粗体斜体)。

https://gist.github.com/1855764

答案 1 :(得分:14)

HTML输出的配方。

my.rst

.. role:: red
  :class: red

.. role:: bolditalic
  :class: bolditalic

:red:`WARNING` :bolditalic:`Don't be stupid!`

my.css

.red { color: red; }
.bolditalic {
  font-weight: bold;
  font-style: italic;
}

建立者:

rst2html --strip-comments --halt warning --stylesheet=my.css my.rst my.html

答案 2 :(得分:11)

在sphinx中,这可以通过自定义角色实现:您在css中创建一个样式,并使角色指向该样式。以下是带下划线的文字的完整工作示例:sphinx-dev thread

修改

以下是一个很好的例子:ReST strikethrough

编辑2

sphinx-dev链接不再可用,所以这里是要点,它与上面的删除线链接非常相​​似:

CSS:

span.underlined {
  text-decoration: underline;
}

在RST中注册角色:

.. role:: underlined
   :class: underlined

稍后将其用作

:underlined:`test`

所有这些都可以在一个RST文档中:

.. raw:: html

   <style type="text/css">
     span.underlined {
       text-decoration: underline;
     }
   </style>

.. role:: underlined
   :class: underlined

:underlined:`test`

用::

测试
rst2html5.py test01.rst test01.html