docopt интерпретирует любой -v как версию
Я создаю cli с помощью docopt и имею следующую проблему (я приведу примеры из их примера naval_fate cli)
naval-fate --version
или же naval-fate -v
вернет Cli версию, но когда попробуем сделать, скажем, naval-fate ship -v
для другой цели он автоматически возвращает тот же результат, что и первые две команды.
Есть ли способ предотвратить это у Докопта?
Спасибо
1 ответ
Вы можете предотвратить анализ Docopt -v
как особый вариант, просто упомяните его в строке документации, как вариант. Например, предположим, что вы хотели бы использовать -v
для многословия:
!/usr/bin/python
"""
Usage: ./ [options]
Options:
-v show verbose printing
"""
from docopt import docopt
arguments = docopt(__doc__)
if arguments["-v"] == True:
print "A verbose message"
В этом случае запуск сценария без параметров ничего не даст, а запуск с -v
сгенерирует строку "Подробное сообщение"