如何将“描述”解释为sphinx argparse或autoprogram中的重组文本?

2024-06-25 07:14:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在使用sphinx argparse和sphinx autoprogram模块,使用argparse模块从python脚本中获取命令行描述符。输出一般都很好,但是脚本的“描述”部分被解析为一段文本。有没有什么方法可以通过reST解释器或类似的方法来至少保留段落之间的空白?在


Tags: 模块方法命令行文本脚本restsphinxargparse
1条回答
网友
1楼 · 发布于 2024-06-25 07:14:10

看起来这个模块正在开发中。我建议查看一下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中作为

^{pr2}$

它保留了所有原始空白,但浏览器将其呈现为单个包装的段落块。在

为了保留空白,并对诸如强调和项目符号之类的内容执行操作,需要通过读取器和/或解析器传递它。那么它的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将描述视为一个简单的段落,与默认的^{相同。在

相关问题 更多 >