2013-08-20 5 views
3

Есть ли модуль Perl, который имеет аналогичную функциональность для Docopt или есть порт, который разрабатывается для него?Есть ли у Perl модуль, похожий на docopt?

Docopt - это модуль, который создает интерфейс для вызовов командной строки при разборе сообщений об использовании и параметрах.

Вы можете создать стандартную справку как

 Naval Fate. 

    Usage: 
     naval_fate ship new ... 
     naval_fate ship move [--speed=] 
     naval_fate ship shoot 
     naval_fate mine (set|remove) [--moored|--drifting] 
     naval_fate -h | --help 
     naval_fate --version 

    Options: 
     -h --help  Show this screen. 
     --version  Show version. 
     --speed= Speed in knots [default: 10]. 
     --moored  Moored (anchored) mine. 
     --drifting Drifting mine.

, а затем обработчик опции создается для вас вместо того, чтобы писать их снова с Getopt :: Long, а также обрабатывать команды разбора (я использую App :: Cmd для этого).

Кажется, что это началось в Python и теперь реализовано на многих других языках.

http://docopt.org/

https://github.com/docopt/docopt

+5

[Docopt] (https://metacpan.org/module/Docopt) – marderh

ответ

7

Perl имеет Docopt, как указано в комментариях @marderh. Кроме того, существуют другие модули, которые обеспечивают аналогичную функциональность, такую ​​как Getopt::Auto, Getopt::Euclid, Getopt::AsDocumented & hellip;

+0

Спасибо, что я только что видел, что с двухмесячного прошлого существует реализация Perl https://github.com/docopt/docopt.org/issues/5. Я не искал этого, потому что http://docopt.org/ не обновил последнюю часть своей страницы, где перечислены реализации, а Perl там отсутствует, поэтому я ошибочно предполагаю, что их не было. –