python - parser - Sphinx y argparse-autodocumentar los scripts de línea de comandos?
parser python example (3)
Estoy creando un paquete de Python y usando Sphinx para crear los documentos. Aparte de mi código de paquete, también incluyo una gran cantidad de scripts de Python de línea de comandos, que usan argparse. Me preguntaba si hay una forma de que Sphinx autodocumentara estos scripts. El objetivo final sería una lista bastante impresa de scripts, con la ayuda asociada, impresión, argumentos y opciones. Y para ser claros, estoy buscando una forma preexistente de hacer esto, no una forma de implementarlo yo mismo.
Esto no es tan específico de una pregunta como normalmente pregunto en SO, si hay un sitio SE más apropiado para publicar esta pregunta, por favor avíseme. Gracias.
Puede utilizar sphinxcontrib.autoprogram
. pip install sphinxcontrib-autoprogram
, luego poner
extensions += [''sphinxcontrib.autoprogram'']
en tu conf.py
Para documentar el comando cli.py
importando cli
con el parser
objetos del parser
argparse (que puede ser una expresión de Python, como una función get_parser()
), use
.. autoprogram:: cli:parser
:prog: cli.py
Utilice la extensión sphinx-argparse:
Puede usar sphinxcontrib.programoutput
para incluir los mensajes de ayuda desde la línea de comandos en su documentación.
Esto no es específico de argparse
pero se puede usar para documentar cualquier mensaje de ayuda de impresión de script en la línea de comandos.