渲染由argparse模块定义的CLI参数(对子命令友好)
项目描述
sphinx-argparse-cli
渲染由argparse模块定义的CLI参数(对子命令友好)。对于实时演示,请查看tox、pypa-build 和 mdpo 的文档。
安装
python -m pip install sphinx-argparse-cli
在conf.py
中启用
# just add it to your list of extensions to load within conf.py
extensions = ["sphinx_argparse_cli"]
使用
在reStructuredText文件中,使用至少两个参数的sphinx_argparse_cli
指令
名称 | 描述 |
---|---|
模块 | 解析器定义的模块路径 |
func | 一个函数的名称,该函数在没有参数的情况下构建解析器 |
prog | (可选) 如果提供,将覆盖 <prog> 名称。 |
hook | (可选) 如果 func 使用解析器而不是返回它,则将 argparse 钩子用于检索解析器。 |
title | (可选) 如果提供,将覆盖默认添加的 <prog> - CLI界面 标题,如果为空,则不会包含 |
description | (可选) 如果提供,将覆盖描述,如果为空,则不会包含 |
epilog | (可选) 如果提供,将覆盖 epilog,如果为空,则不会包含 |
usage_width | (可选) 用法示例应多大 - 默认为100个字符 |
usage_first | (可选) 在描述之前显示用法 |
group_title_prefix | (可选) 组小节标题的前缀,接受程序名称的替换字符串 {prog} - 默认为 {prog} |
group_sub_title_prefix | (可选) 子命令组小节标题的前缀,接受程序名称和子命令名称的替换 {prog} 和 {subcommand} - 默认为 {prog} {subcommand} |
no_default_values | (可选) 禁止生成 default 条目 |
force_refs_lower | (可选) Sphinx 的 :ref: 只支持小写引用。使用此功能,生成的引用锚点中的任何大写字母都将转换为小写,并添加前缀 _ (例如,A 变为 _a ) |
例如
.. sphinx_argparse_cli::
:module: a_project.cli
:func: build_parser
:prog: my-cli-program
如果您有创建和使用解析器但未返回它的代码,您可以指定 :hook:
标志
.. sphinx_argparse_cli::
:module: a_project.cli
:func: main
:hook:
:prog: my-cli-program
引用生成内容
该工具将注册对所有锚点的引用链接。这意味着您可以使用 Sphinx 的 ref
角色引用 (子)命令标题/组以及每个标志/参数。该工具提供配置标志 sphinx_argparse_cli_prefix_document
(通过在 conf.py
中设置此变量进行更改 - 默认为 False
)。此选项影响生成的引用 ID。如果为 false,则引用将是锚点 ID(在 URI 中点击后显示在 '#
之后的文本)。如果为 true,则锚点 ID 将以文档名称为前缀(这对于在多个文档中生成相同的锚点时避免引用标签冲突很有用)。
例如,在 tox
命令的情况下,并且 sphinx_argparse_cli_prefix_document=False
(默认值)
- 要引用可选参数组,请使用
:ref:`tox-optional-arguments`
, - 要引用运行子命令,请使用
:ref:`tox-run`
, - 要引用
run
子命令的--magic
标志,请使用:ref:`tox-run---magic`
。
例如,在 tox
命令的情况下,并且 sphinx_argparse_cli_prefix_document=True
,并且当前文档名称为 cli
- 要引用可选参数组,请使用
:ref:`cli:tox-optional-arguments`
, - 要引用运行子命令,请使用
:ref:`cli:tox-run`
, - 要引用
run
子命令的--magic
标志,请使用:ref:`cli:tox-run---magic`
。
由于 Sphinx 的 :ref:
只支持小写值,如果需要区分大小写混合的程序名称或参数,请设置 :force_refs_lower:
参数。使用此标志,引用中的大写字母将转换为小写对应项并添加前缀 _
。例如
- 程序名称
SampleProgram
将引用为:ref:`_sample_program...
- 为了区分大小写混合的标志
-a
和-A
,请分别使用:ref:`_sample_program--a`
和:ref:`_sample_program--_a`
。
请注意,如果您 不 想使用 Sphinx 内部 :ref:
跨引用,您可以选择将其关闭以保留输出 HTML 中的大小写混合锚点;但请注意,稍后启用它将更改输出 HTML 中的锚点。
项目详细信息
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
构建分发
sphinx_argparse_cli-1.18.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4c6a0b35aee405459e3648a7a8967c15562a6ac3421bf62b1fae75dd1605ac6e |
|
MD5 | b1d14bcc95f8b37e1a1a035a13694415 |
|
BLAKE2b-256 | b36831d6e1ce62bbc901774635ff14679ae5319d30b573553cf25d49126a71ea |
sphinx_argparse_cli-1.18.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | edb5afcb296d0a512b312af2b9b9e45fc56c1f1dd2e7549abc57f3ea6e77c552 |
|
MD5 | 51482bd63fe322f7e6de610d1377fb81 |
|
BLAKE2b-256 | ca594e66cbfad7059158cd21532189980a44b949c2b81791ccb321abbd7dd171 |