Как создать POD и использовать pod2usage в жемчуге?

Вы могли повторно реализовать значение по умолчанию repr этот путь:

def __repr__(self):
    return '<%s.%s object at %s>' % (
        self.__class__.__module__,
        self.__class__.__name__,
        hex(id(self))
    )
6
задан Anandan 5 August 2009 в 09:25
поделиться

2 ответа

Я обычно использую Getopt :: Long вместе с Pod :: Usage . (Я приобрел эту привычку после прочтения учебника на сайте PerlMonks, поэтому здесь ' s ссылка на этот .) Это выглядит примерно так:

use Getopt::Long;
use Pod::Usage;

my( $opt_help, $opt_man, $opt_full, $opt_admins, $opt_choose, $opt_createdb, );

GetOptions(
    'help!'                 =>      \$opt_help,
    'man!'                  =>      \$opt_man,
    'full!'                 =>      \$opt_full,
    'admin|admins!'         =>      \$opt_admins,
    'choose|select|c=s'     =>      \$opt_choose,
    'createdb!'             =>      \$opt_createdb,
)
  or pod2usage( "Try '$0 --help' for more information." );

pod2usage( -verbose => 1 ) if $opt_help;
pod2usage( -verbose => 2 ) if $opt_man;

Параметры, отличные от $ opt_man и $ opt_help , не имеют отношения к вам в этом примере . Я просто скопировал верхнюю часть случайного скрипта, который у меня был.

После этого вам просто нужно написать POD. Вот хорошая ссылка , описывающая основы самого POD.

Edit : В ответ на вопрос OP в комментариях, вот как вы можете распечатать только раздел NAME когда прошел подходящий вариант. Сначала добавьте еще один параметр в хэш параметров в GetOptions . Давайте использовать здесь 'name' => \ $ opt_name . Затем добавьте следующее:

pod2usage(-verbose => 99, -sections => "NAME") if $opt_name;

Уровень детализации 99 - это волшебство: он позволяет вам выбрать только один или несколько разделов для печати. Дополнительную информацию см. В документации к Pod :: Usage в разделе -sections . Обратите внимание, что -sections (имя) имеет множественное число , даже если вам нужен только один раздел .

15
ответ дан 8 December 2019 в 12:22
поделиться

В справочной странице perlpod есть множество хороших примеров. Pod2usage объясняется здесь .

4
ответ дан 8 December 2019 в 12:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: