ラベル CPAN の投稿を表示しています。 すべての投稿を表示
ラベル CPAN の投稿を表示しています。 すべての投稿を表示

2006年2月3日金曜日

SledgeのPluginをいくつかCPANにアップしました

ちょこちょと作ってこのブログでも紹介していたSledgeのプラグインのうちいくつかをCPANにアップロードしました。

- Sledge::Plugin::Prototype 0.02
- Sledge::Plugin::IfModifiedSince 0.05

Sledge::Plugin::IfModifiedSinceはブログで公開したのからちょっと改良を加えていて、set_last_modifiedメソッドでLast-Modifiedヘッダに更新日をセットすることができるようになったり、if_modified_sincedメソッドにファイルのパスを渡せば、そのファイルの更新日とIf-Modified-Sinceヘッダを比較するようになったりしてます。

2005年8月17日水曜日

Class::DBI::Sweet

CDBIのメーリングリストを眺めていたら、複数のテーブルにまたがった検索なんかをClass::DBI::Sweetを使えば簡単にできるよみたいな投稿があったので、マニュアルを眺めてみましたが結構いろいろできそう。
ざっと見た感じ

-Class::DBI::PagerのようなData::Pageを利用したページング
-Class::DBI::Plguin::CountSearchでできるようなカウント検索
-SQL::Abstractを使った複雑な検索
-JOINを使った検索
-retrieve_allでorder_by
-キャッシング機能

といったようにかゆいところに手が届く機能が満載です。
それぞれの機能は個別のプラグインとしてだいたいCPANにアップされてますが、これひとつですべて住むってのは便利かも。




2005年8月8日月曜日

MIME::Lite::TT::Japanese0.06

MIME::Lite::TT::Japaneseを0.06にバージョンアップし、CPANにアップしました。
今回の変更点は2つです。
- 長すぎる本文を自動改行するようにした。
- perlのバージョンでEncodeとJcodeの利用を切り替えていたのをJcode一本にした。

最初の自動改行については、やろうやろうと思っていたのですが、ついつい先延ばしになっていたのをやっと実装しました。デフォルトで72byte以上(文字数で35文字くらい)の行は自動的に改行されます。この値は変更可能で、MIME::Lite::TT::Japaneseのインスタンス作成時に「LineWidth」という名前で渡してやればOKです。また、自動改行したくない場合は「LineWidth」に0をセットすればOKです。

この自動改行の実装にJcodeのjfoldメソッドを使っているため、今回思い切って、Encodeの使用をやめて、Jcodeで一本化しました。最新のJcodeはperl5.8以降ではEncodeのラッパーとして動作するので、バージョンの切り分けはJcodeに任せようと思ったのも一本化の要因です。

EncodeでISO-2022-JPなMIMEエンコーディングができるようになったのをきっかけにMIME::Lite::TT::Japaneseのバージョンアップを思い立ったのですが、結果として、Encodeを使わないということに。。




Encode 2.11

Encode 2.11がリリースされ、CPANにアップロードされています。

DanさんのエントリーEncode-2.11 releasedからトラックバックをいただいてバージョンアップを知りました。ありがとうございます。

今回のバージョンアップの目玉はなんと言ってもISO-2022-JPのMIMEエンコードに対応したことでしょう。以下のようなコードで簡単にエンコードできるみたいです。
>

$header = encode('MIME-Header-ISO_2022_JP', $utf8);
<

これでまかまかさんのおっしゃるとおり、MIME::Lite::TT::Japaneseのコードを簡単にできそうです。