Perlスクリプトをワンライナー化するモジュールAcme::OneLinerを作ってみた - すぎゃーんメモで作成した、Acme::OneLinerを、アップデートしました。
GitHub - sugyan/Acme-OneLiner: ワンライナー生成モジュール
今回の変更は、モジュールのuse宣言をコマンドラインオプションに出すようにしたこと。
例えば、以下のようなスクリプトをワンライナー化すると、
#!/usr/bin/perl use List::Util qw(min max); my @arr = (1, 2, 3); print min(@arr), max(@arr), "\n";
以前のものでは以下のような出力になっていた。
perl -e 'use List::Util (q/min/, q/max/); my(@arr) = (1, 2, 3); print min(@arr), max(@arr), "\n";'
これを、もうちょっとキレイに
perl -MList::Util=min,max -e 'my(@arr) = (1, 2, 3); print min(@arr), max(@arr), "\n";'
と出力されるように改良しました。
まぁ、中身としてはB::Deparse::compileの結果からuse文っぽいものを検出した場合だけ特別に処理する、というだけ。
あと、Build.PLとMakefile.PLの2ファイルを削除しました。
ワンライナーを使ったインストール手順をREADMEに書いておいたので、上記2つのファイルは要らなくなりましたw
Acme-OneLiner/README at 8814476a0d7981b245065d7d319285d014b91534 · sugyan/Acme-OneLiner · GitHub