Подтвердить что ты не робот

Sphinx и argparse - скрипты командной строки autodocumenting?

Я создаю пакет Python и использую Sphinx для создания документов. Помимо моего кода пакета, я также включаю много сценариев Python в командной строке, которые используют argparse. Мне было интересно, есть ли способ заставить Сфинкс автоматически записывать эти сценарии? Конечной целью будет довольно печатный список сценариев, с соответствующей печатью справки, аргументами и опциями. И чтобы быть ясным, я ищу уже существующий способ сделать это, а не способ реализовать это сам.

Это не так специфично для вопроса, как я обычно спрашиваю у S.O., если есть более подходящий S.E. сайт, чтобы опубликовать этот вопрос, пожалуйста, дайте мне знать. Благодарю.

4b9b3361

Ответ 1

Вы можете использовать sphinxcontrib.programoutput, чтобы включить справочные сообщения из командной строки в вашу документацию.

Это не относится к argparse, но может использоваться для документирования любых справочных сообщений script в командной строке.

Ответ 3

Вы можете использовать sphinxcontrib.autoprogram. pip install sphinxcontrib-autoprogram, затем поместите

extensions += ['sphinxcontrib.autoprogram']

в conf.py. Для документирования команды cli.py путем импорта cli с помощью объекта argparse parser parser (который может быть выражением Python, как функция get_parser()), используйте

.. autoprogram:: cli:parser
   :prog: cli.py