На самом деле в Perl есть стандарт для встраивания документации в ваш скрипт, но это не то, что вы думаете. Взгляните на формат POD Perl . Это стандартный способ документации, встроенной в программу Perl. Вы можете использовать программу perldoc
для просмотра этой документации:
$ perldoc myscript.pl
И вы можете использовать различные команды pod2xxx для форматирования этой информации:
$ pod2html myscript.pl > myscript.html #HTML format
$ pod2text myscript.pl > myscript.txt #Text format
$ pod2wiki myscript.pl > wikitext.txt #For embedding into various Wikis (not part of std Perl dist)
Формат POD довольно прост и легок в освоении. Самое сложное для понимания - у вас должна быть пустая строка между каждой командой и разделом.
Это неправильно:
=pod
=head1 PROGRAM NAME
myscript.pl
=head1 DESCRIPTION
My Program is nice.
=head1 SYNOPSIS
My program does things
Вместо того, чтобы:
=pod
=head1 PROGRAM NAME
myscript.pl
=head1 DESCRIPTION
My Program is nice.
=head1 SYNOPSIS
My program does things
См. Также Стиль стручка и Характеристики стручка .
Вся информация, которую вы видите на странице CPAN , генерируется POD, встроенным в модули. То же самое с документацией ActiveState ActivePerl.
Формат POD обычно совпадает с форматом MANPAGES. Таким образом, вы должны иметь следующие разделы как =head1
:
- ИМЯ
- СИНТАКСИС
- ОПИСАНИЕ
- OPTIONS
- СМОТРИТЕ ТАКЖЕ
- ОШИБКА
- АВТОР
- COPYRIGHT
Кроме того, я также склонен вставлять переменную $USAGE
, которая показывает, как используется команда:
my $USAGE =<<USAGE;
myscript.pl -foo <foo> [-bar <bar>] <barfoo>
or
myscript.pl -help
USAGE
[...]
if ($help) {
say $USAGE;
exit 0;
}
Однако это действительно не нужно, поскольку вы можете использовать модуль Pod :: Usage (который является частью стандартного дистрибутива Perl), чтобы распечатать раздел SYNOPSIS нашего документа Pod.