cpandocべんりってはなし

  • 7
    Like
  • 0
    Comment
More than 1 year has 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

This post is the No.11 article of Perl入学式 Advent Calendar 2014