POD の head1 によく使われる項目名ランキング
POD を書いている際に、参考にしようと、ふと思い立って集計してみました。
集計した環境は、Catalyst, Plagger など依存モジュールが多いモジュールが入った環境です。
集計スクリプトは以下です。上位50位を算出しました。
#!/usr/bin/perl use strict; use warnings; use Perl6::Say; use Path::Class; my %head1; Path::Class::Dir->new('/usr/lib/perl5')->recurse('callback' => sub { my $file = shift; return if $file->is_dir; ++$head1{$_} for ($file->slurp =~ /^=head1 ([A-Z ]+)$/mgo); }); say "$head1{$_}: $_" for (sort { $head1{$b} <=> $head1{$a} } keys %head1)[0..49];
結果は以下です。左が出現回数、右が項目名です。
4072: NAME 3734: DESCRIPTION 3176: SYNOPSIS 2751: AUTHOR 1872: SEE ALSO 1593: COPYRIGHT 1002: METHODS 634: BUGS 624: SUPPORT 450: DATA 382: AUTHORS 361: LICENSE 313: COPYRIGHT AND LICENSE 283: VERSION 187: CONFIGURATION 128: AFFILIATION 113: EXAMPLES 107: INHERITANCE 104: FUNCTIONS 100: CAVEATS 97: NOTES 93: USAGE 83: ACKNOWLEDGEMENTS 80: TODO 80: HISTORY 70: DIAGNOSTICS 58: CONSTRUCTOR 57: DEPENDENCIES 56: CREDITS 55: BUGS AND LIMITATIONS 54: CONFIG 54: LICENCE AND COPYRIGHT 52: TO DO 47: AUTHOR AND COPYRIGHT 46: OPTIONS 43: INSTALLATION 40: AVAILABILITY 40: BUGS AND IRRITATIONS 38: EXAMPLE 37: REFERENCES 37: INSTANCE VARIABLES 36: NOTE 36: ATTRIBUTES 35: EXPORTS 32: OVERVIEW 31: COPYRIGHT AND DISCLAIMERS 31: LIMITATIONS 28: SUBCLASSING