Plagger::Plugin::Filter::MMFeedTags

ところでPlagger::Plugin::Publish::Deliciousはuri_escape(_utf8)?じゃなくてencodeじゃね? と思ったもう修正してくれた。はえ
(5/20追記)名刺交換, [Plagger][MM/Memo][del.icio.us][Hatena]Plagger/MM/Memoをdel.icio.usとはてなブックマークに同期, [Plagger][SBM][HyperEstraier]Pl.. - HsbtDiary(2006-05-20)で取り上げられてて気付いたのだけど、そういやASINメモのタイトルの括弧がおかしくなるのを修正したのをエントリに反映させるの忘れてた。直しました。

package Plagger::Plugin::Filter::MMFeedTags;
use strict;
use utf8;
use Encode;
use base qw( Plagger::Plugin );

use Plagger::Tag;

sub register {
    my($self, $context) = @_;
    $context->register_hook(
        $self,
        'update.entry.fixup' => \&filter,
    );
}

sub filter {
    my($self, $context, $args) = @_;

    return unless $args->{feed}->url =~ m!^http://1470\.net/mm/!;

    $context->log(debug => "Fixing MM/Memo tags and title" . $args->{entry}->tags->[0] . " " . $args->{entry}->title);

    
    my @tags = split /, /, ($args->{entry}->tags->[0] || '');
    $args->{entry}->tags(\@tags);
    
    my $title = $args->{entry}->title;
    $title =~ s/^『(.*)』$/$1/;
    $args->{entry}->title($title);
}

1;

config.yaml

  - module: Subscription::Config
    config:
      feed:
        - url: http://1470.net/mm/mylist.html/16?mode=xml

  - module: Aggregator::Simple
  
  - module: Filter::MMFeedTags