我一直在使用sphinx argparse和sphinx autoprogramm模块使用argparse模块从python脚本中截取命令行描述符。输出通常很好,但脚本的“描述”部分被解析为单个文本段落。有没有办法通过一个reST解释器或类似的东西抛出这个,所以它至少保留了段落的空白?
答案 0 :(得分:2)
看起来这个模块正在开发中。我建议查看github存储库,并提出问题。
https://github.com/ribozz/sphinx-argparse
在sphinarg/ext.py
中,description
的格式为docutils.nodes.paragraph
。与epilog
相同。另一方面,usage
使用nodes.literal_block
。
=====
在使用docutils
后,我怀疑说明已输入doctree
<paragraph>
Fancy *argparse* description
...
This is an attempt to use fancier formatting....
</paragraph>
最终在html
中作为
<p>
Fancy *argparse* description
...
</p>
它保留所有原始空格,但浏览器将其呈现为单个包装段落块。
为了保留空白,并对强调和项目符号等内容采取行动,需要通过阅读器和/或解析器进行传递。然后doctree
的部分看起来更像:
<paragraph>Fancy <emphasis>argparse</emphasis> description</paragraph>...
<paragraph>This is an attempt to use fancier formatting. ....</paragraph>
我可以在一个独立的脚本中执行以下操作:
docutils.core.publish_doctree(description)
但我不知道如何在sphinx-argparse
中完成。
实际上,sphinx-argparse
将描述视为一个简单的段落,其精神与默认的HelpFormatter
相同。