reStructuredText中的选项列表,用于不带有破折号或斜杠的命令行参数

时间:2012-12-10 22:17:52

标签: restructuredtext

reStructuredText对option lists提供了很好的支持。例如,rst2html.py转换此RST标记

Options:
    --foo                 does a foo
    -b, --bar ABAR        bar something

进入以下格式良好的HTML表格:

<dt>Options:</dt>
<dd><table class="first last docutils option-list" frame="void" rules="none">
<col class="option" />
<col class="description" />
<tbody valign="top">
<tr><td class="option-group">
<kbd><span class="option">--foo</span></kbd></td>
<td>does a foo</td></tr>
<tr><td class="option-group">
<kbd><span class="option">-b</span>, <span class="option">--bar <var>ABAR</var></span></kbd></td>
<td>bar something</td></tr>
</tbody>
</table>
</dd>

然而,这似乎并没有自然地扩展到位置论证;例如

Arguments:
    foo                   does a foo
    bar ABAR              bar something

呈现为HTML完全缺乏表结构:

<dt>Arguments:</dt>
<dd>foo                   does a foo
bar ABAR              bar something</dd>

是否有某种方法可以为命令行参数生成一个选项列表,这些参数没有以破折号或斜杠为前缀?

1 个答案:

答案 0 :(得分:3)

烨。这里没有很好地记录选项列表的相当有限的语法: http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#option-lists

这是真正令人恼火的事情。假设您正在编写一系列选项,其中一些选项符合前面链接的“选项”的语法,但有些选项不符合。例如,--opt==keyword可以(并且“关键字”将以斜体显​​示,无论您是否需要),但--pot=BLACK|KETTLE不会。 Docutils会将符合其语法的所有语句放入一个不错的选项列表&lt; table&gt;模板,但他们没有,它退出表格格式并将其编码为标准&lt; dl&gt; s。因此,在您的选项堆栈中间,有一对看起来与其他选项不同。