さとみかん(何処)で RSS を吐いてもらいたかったので lirs2rss というスクリプトを書いた。ありみか親分(誰)の八面六臂の活躍により(謎)いくつかのバグを修正した。
RSS 1.0 は、Yuki::RSS を利用して吐いています。実際には、Yuki::RSS を継承し、各item に Dublin Core の date と creator を追加できるようにしています。また、各item の description は任意に追加できるようにしました。
なお、ライセンスは次のようになっています。
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
ありみか親分(誰)より更に(謎)バグ報告があった。LIRS形式での「,」のエスケープを処理できていないとのこと。回避方法は「,」を使わないこと。
LIRS.pm を使えばすぐに解決しそうな気がするけどライセンスが不明。Meta::LIRS.pm ってのがあったらしいけど行方不明。面倒だけどコード書くか。
というか、頼むからライセンスは書いてくださいって感じだ。
Meta::LIRS の作者、masaki さんにメールをいただく。Meta::LIRS は、libantenna-0.01 に同梱されているとのこと。
TrackBack URL for this entry: http://everybody.good-day.net/~iwai/blosxom/software/lirs2rss/version-03.tbping
sasashin (Thu Jun 3 12:22:03 2004 JST)
はじめまして。lirs2rss、便利に使わせていただいています。ありがとうございます。使っていて少々気になった点があるのでご報告。バグという程ではないと思いますが。 まれに、更新時刻が早い(下に表示されるべき)ものが最上部にくることがあります。sort する際、strings で処理されているので更新時刻の桁数が違うときの比較が上手くいっていないようです。自分なりに処理を追加してみましたが、お役に立ちますでしょうか? diff を取るとこんな感じです。 41c41,55 < foreach my $line (reverse sort @lines){ --- > foreach (@lines){ > @a = split(/,/, $_); > $l{$a[1]} = 1; > } > > sub numeric { $b<=>$a; } > foreach $a (sort numeric keys %l){ > foreach $b (@lines) { > if ($b =~ $a){ > push(@lines_s,$b) > } > } > } > > foreach my $line (@lines_s){