Posted at

cpandocべんりってはなし

More than 3 years have passed since last update.


前置き

perl入学式でなぜcpandocの話をするのかというと、 Perl入学式とPerlの advent calenderを間違えたからです、、、。

この記事ではkarupaneruraさんがperldocの解説のおまけとして紹介していたcpandocの使い方と、自分が作ったccpandocの紹介をしたいと思います。


cpandocの使い方

cpandocはPod::Cpandocをインストールすると使えるようになるコマンドで、ローカルマシンに存在しないモジュールでもperldoc相当の情報が得られます。

オプションもperldocとほぼ同じです。

cpandoc -m Acme #コード表示

cpandoc Acme #ドキュメント表示

cpandocにしかない機能として、変更履歴の取得があります。

cpandoc -c Acme #Changesを取得


自分の利用例


  • twitter botがcpanモジュールの更新を通知してきたらcpandoc -c で素早く変更内容を見る

  • パスが通ってなくてドキュメントが見れないけど、余計なこと考えたくないとき


ccpandocの話

で、Changesって自分の場合短時間に何回も見ることが多いです。

その場その場はもう見ないだろと思って消すんですが、短期記憶が弱すぎて4,5回見ることが多いので、キャッシュすることにしました。

Pod::Cpandoc::Cacheをインストールすると、ccpandocコマンドが使えるようになります。

$ time ccpandoc -c Acme

real 0m0.743s
user 0m0.221s
sys 0m0.093s

$ time cpandoc -c Acme
real 0m2.325s
uer 0m0.200s
sys 0m0.092s

ccpandoc使わなくてもemacsからcpandocを使えるようにしてバッファに残しておけばいいんですけど、誰か。


参考

モジュールを書いたときのブログ記事

http://blog.tokubass.net/2014/06/cpandoc.html

CPAN Module の変更点をサクッと調べる方法

http://blog.livedoor.jp/xaicron/archives/54445186.html