Perlモジュールの話。当然のことかもしれないけど、知らなかったのでメモメモ。
配布したい小さなWebアプリがあって、出力のためのテンプレートファイルとかCSSとかどうやってモジュールに梱包したらよいだろうと思っていたんだけど、たぶんshareディレクトリを使うのがよさげ。Module::Installの場合はModule::Install::Shareにやり方とかが書いてある。通常はshareディレクトリにファイルを用意してMakefile.PLに以下でOK。
install_share 'share';
もしくはshareの部分を省略できる。
install_share;
ちゃんとModule::Install::Shareのpodには、リードオンリーなコードとは関係ないファイルを同封したい時があるよね!例えば、XMLスキーマだったり、YAMLデータファイルだったり。だったらこれだよ!と書いてある。
ちなみに
/Library/Perl/5.12/auto/share/dist/Module-Name/
みたいなディレクトリに入る。ファイルを呼び出す時は、File::ShareDirモジュールを使えばよい。俺の場合はこんな感じでできた。
use File::ShareDir qw/dist_file/; my $file = dist_file('Module::Name', 'filename.txt' );
そういえば、shareってディレクトリ、CPAN漁ってたら結構あったな>< とりあえず、やり方がわかってスッキリ!!