plaggerでFilter::FetchEnclosureを使って画像も含めてgmailに送信したいのだが
http://hoge/hage1/001.jpg
http://hoge/hage2/001.jpg
のようにファイル名の部分が重複してしまうとhage2のfetchが上書きされてしまうみたい。
画像がいっぱい張り付けてあるブログなんかだとFetchした最初のページしか正常に取得できない。
そんなわけで色々試行錯誤してみた結果Filter::FetchEnclosureにちょっとパッチを当ててみた。

-------------------------------------------------------------------------------
*** FetchEnclosure.pm.org 2008-01-17 21:25:01.000000000 +0900
--- FetchEnclosure.pm 2008-01-17 21:12:42.000000000 +0900
***************
*** 5,10 ****
--- 5,11 ----
use Cwd;
use File::Spec;
use File::Path;
+ use Digest::MD5;

sub register {
my($self, $context) = @_;
***************
*** 41,47 ****
mkdir $feed_dir, 0777;
}

! my $filename = $enclosure->filename;
Encode::_utf8_off($filename);
my $path = File::Spec->catfile($feed_dir, $filename);
$context->log(info => "fetch " . $enclosure->url . " to " . $path);
--- 42,48 ----
mkdir $feed_dir, 0777;
}

! my $filename = Digest::MD5::md5_hex($enclosure->url) . $enclosure->filename;
Encode::_utf8_off($filename);
my $path = File::Spec->catfile($feed_dir, $filename);
$context->log(info => "fetch " . $enclosure->url . " to " . $path);

-------------------------------------------------------------------------------
まあなんてことないんだけど単に画像URLをmd5_hex化してくっ付けるだけ。
ファイル名がこれで同一になることはない。(と思う)
今のところfetchした画像をcacheから直接使わないから問題ないみたい。

もしかしたらこんなことしなくても使える方法があるのかもしんないけど
小っさな脳みそではこれが限界。