如何将第一个文件中的信息制成表格?
或者,如何保留文本中已插入的空白?
这样,当我将第一个文件(通过 Sphinx)渲染为 HTML 时,表格格式就会被保留。
例如:
- Mr Miller: Hates dogs
- Mrs Johnson: Love Cats
- Ms Janey: Owns 2 monkeys and 3 cats
我希望冒号后面的文本全部对齐。
我找不到“制表符”字符。当渲染为 HTML(我的输出格式)时,我的 rST 文件中的空格被消除。此外,我的实际第一个文件中的这些行都已添加项目符号,并在冒号之前跟随 API 宏代码,以便宏跳转到代码中的正确位置(即冒号之前不能更改任何文本)。冒号后面的文字用于描述我的 API。
水平列列表指令在这里没有用,因为文本已经从左到右写入,并且该指令在多行之后而不是在我的:之后分割到第二个(或后续列)。其次,它只识别项目符号列表。
我尝试使用表格列表指令 - 但我不希望表格中的文本。或者,如果我知道如何隐藏此类表格的线条和备用行阴影(即项目中的其他表格必须保留已为我们的特定 Sphinx 项目定义的表格格式),我可以使用此指令。
有多种替代方案,所有这些都经过 Docutils 测试 (
rst2html5
)。
保留阵容的最简单方法是
a literal block::
- Mr Miller: Hates dogs
- Mrs Johnson: Love Cats
使用单色(以保持间距)和 不解析 rST 标记的内容。
要获得相同的效果,但需要解析内容,请使用
.. parsed-literal::
- Mr Miller: Hates dogs
- Mrs Johnson: Love Cats_
.. _cats: kittens.html
更好看但没有语义的是一个简单的表格。 使用 Sphinx,您可能需要自定义 CSS 才能获得普通的表格样式。
.. class:: borderless
============ ==========
Mr Miller: Hates dogs
Mrs Johnson: Love Cats
============ ==========
Docutils 为具有对齐内容的列表提供特殊标记:field-list 对于 HTML5 输出,您可以使用特殊的类值设置字段缩进。 您可能还想使用自定义 CSS 来获得所需的样式。
.. class:: field-indent-8em
:Mr. Miller: Hates dogs
:Mrs. Johnson: Love Cats
实际上,空格保留在 HTML 源代码中,但浏览器对空格进行了标准化。原来的例子将变成:
<ul class="simple">
<li><p>Mr Miller: Hates dogs</p></li>
<li><p>Mrs Johnson: Love Cats</p></li>
...
</ul>
这可以用来获得所需的效果 CSS 样式:
.. raw:: html
<style>.pre-list li {white-space: pre;
font-family: mono;}
</style>
.. class:: pre-list
- Mr Miller: Hates dogs
- Mrs Johnson: Love Cats
当然,CSS 最好放在自定义样式表中。