在reStructuredText中使用<i>标签

时间:2019-06-12 06:27:13

标签: restructuredtext

我知道以下语法适用于<em>标签:

:emphasis:`lorum ipsum`
*lorum ipsum*

如何生成<i>标签呢?我似乎在Markup Specification中找不到任何提及。

3 个答案:

答案 0 :(得分:0)

强调用单星号字符括起来的文本:

这是强调文本。 强调的文本通常以斜体显示。

答案 1 :(得分:0)

在深入探讨这一点之前,您确定确实真的需要 <i>标签吗?人们通常在真正表示<i>时使用<em> ...默认情况下,他们看起来几乎总是一样...

不?您是否真的需要<i>标签>?好的,那我们开始吧。


为了控制docutils发出的HTML标签,您需要创建一个新的"writer"。这些docutils组件可以以任何所需的格式(例如HTML,LateX等)生成输出。

您可以在docutils源repo here中找到docutils随附的各种HTML编写器。

这将需要编写一些Python代码。从本质上讲,将需要提供一个发出所需HTML的Python类。

简要地看一下源代码,您可以子类化最适合您的HTML编写器(最近几天您可能需要html5_polyglot)并覆盖visit_emphasis方法。

然后,您需要找到一种方法来告诉docutils 使用您的新作者。请查看tools directory中的示例。

如果您使用的是Sphinx,我真的不确定如何从那里获得其他作家。您可能需要修改(或猴子补丁)Sphinx源。

答案 2 :(得分:0)

从Docutils版本0.17(版本库版本0.17dev)开始,如果匹配的类值,则“ html5”编写器将写入标签 在inlineliteral元素中找到:

:i:

替代语音

.. role:: alternative-voice
   :class: i, language-la

Lemonade consists primarily of :alternative-voice:`Citrus limon`.