Hatena::Groupsubtech

ういはるかぜの化学

Thursday, December 28, 2006

[] Filter::Deduped のデータベース削除したら落ちなくなった 01:25  Filter::Deduped のデータベースを削除したら落ちなくなった - ういはるかぜの化学 を含むブックマーク はてなブックマーク -  Filter::Deduped のデータベースを削除したら落ちなくなった - ういはるかぜの化学

最近Plaggerを実行するとSegmentation fault (core dumped)と言われることが増えたと書いたのですけど、3回に1回ぐらいしかまともに動かなくて困っていました。

そんなとき、もしかしてと思って Filter::Deduped のデータベース削除(退避)したら―今のところですが―問題なく動くようになりました。

-rw-r--r--  1 mayuki  users  2797568 Dec 28 04:30 deduped.db.old

退避前はそんな感じのサイズ。壊れてたんですかねー?

トラックバック - http://subtech.g.hatena.ne.jp/mayuki/20061228

Sunday, December 24, 2006

[] 最近Plaggerを実行するとSegmentation fault (core dumped)と言われることが増えた 19:36  最近Plaggerを実行するとSegmentation fault (core dumped)と言われることが増えた - ういはるかぜの化学 を含むブックマーク はてなブックマーク -  最近Plaggerを実行するとSegmentation fault (core dumped)と言われることが増えた - ういはるかぜの化学

どうして落ちてるのかよくわからないのですが、ログレベルをdebugにしたりしてみるとどうもEntryFullTextを実行中に死んでるのかなーという感じですが、本当にそこで死んでるのかは謎。以前は問題なく動いてたのです。

しかも発生はランダムなので困っています。うーん。途中で死ぬとLDR側の未読がクリアされた状態になるのが一番困る感じ。

どこで問題が発生しているのか追いかけるヒントとかあればよいのですが。

トラックバック - http://subtech.g.hatena.ne.jp/mayuki/20061224

Wednesday, November 08, 2006

[] Plaggerにだって……できないことぐらい……ある…… 02:46  Plaggerにだって……できないことぐらい……ある…… - ういはるかぜの化学 を含むブックマーク はてなブックマーク -  Plaggerにだって……できないことぐらい……ある…… - ういはるかぜの化学

f:id:mayuki:20061109024613j:image

トラックバック - http://subtech.g.hatena.ne.jp/mayuki/20061108

Sunday, November 05, 2006

[] 野良Plugin - Shibuya.Plaggers::Publish::Kwiki を整理してみた 00:43  野良Plugin - Shibuya.Plaggers::Publish::Kwiki を整理してみた - ういはるかぜの化学 を含むブックマーク はてなブックマーク -  野良Plugin - Shibuya.Plaggers::Publish::Kwiki を整理してみた - ういはるかぜの化学

http://wiki.shibuya.pl/?%E9%87%8E%E8%89%AFPlugin

最近出てきたプラグインを追記したり、種類ごとに分けたりとか。

[] Filter::FixHTML 10:12  Filter::FixHTML - ういはるかぜの化学 を含むブックマーク はてなブックマーク -  Filter::FixHTML - ういはるかぜの化学

何らかの理由でHTMLタグの対応が取れないなどの問題が発生した場合でも何とかするためのフィルタ。やってることはかなりアレ

package Plagger::Plugin::Filter::FixHTML;
use strict;
use base qw( Plagger::Plugin );

use HTML::TreeBuilder;

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

    $context->register_hook(
        $self,
        'update.entry.fixup' => \&filter
    );
}

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

    if (defined $args->{entry}->body && $args->{entry}->body->is_html) {
        my $body_html = '';
        my $tree = HTML::TreeBuilder->new_from_content($args->{entry}->body->html);

        for my $c ( $tree->find_by_tag_name("body")->content_list ) {
            $body_html .= ref $c ? $c->as_XML : $c;
        }

        $args->{entry}->body($body_html);
    }
}

1;
__END__

=head1 NAME

Plagger::Plugin::Filter::FixHTML - Fix entry HTML

=head1 SYNOPSIS

- module: Filter::FixHTML

=head1 DESCRIPTION

This plugin fixes a broken HTML in entry body.

=head1 CONFIG

=head1 AUTHOR

Mayuki Sawatari

=head1 SEE ALSO

L<Plagger>

=cut

テキストノードのことを忘れていたのでその辺を修正。

トラックバック - http://subtech.g.hatena.ne.jp/mayuki/20061105

Saturday, November 04, 2006

[] 携帯に送るのに使っているPublish::Gmailテンプレート  携帯に送るのに使っているPublish::Gmailのテンプレート - ういはるかぜの化学 を含むブックマーク はてなブックマーク -  携帯に送るのに使っているPublish::Gmailのテンプレート - ういはるかぜの化学

携帯でフィードを読む。で使ってるやつです(右端は変更前)。

[% USE util = Plagger.Util -%]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
</style>
[% FOREACH entry = feed.entries -%]
<h1 style="margin: 0; font-size: 1.2em"><a style="color: #6495ed" href="[% entry.permalink | html %]">[% entry.title %]</a></h1>
<p style="margin: 0 0 0.5em 0; font-size: 10pt; text-align: right; color: #808080">[% IF entry.date %][% entry.date.format('Mail') %][% END %][% IF entry.author %]<br /> by [% entry.author | html %][% END %][% IF entry.tags.size %] on [% entry.tags.join(',') %]</p>[% END %]
[% IF entry.body -%]
[% IF entry.body.match('(?i)^<p[ >]') %][% entry.body %][% ELSE %]<div class="body">[% entry.body %]</div>[% END %]
[% ELSE %]<br />[% END %]
[% UNLESS loop.last %]<hr style="border: 1px solid #6495ed; border-style: solid none none none; margin: 0.5em"/>[% END %]
[%- END %]
</body>
</html>

Internet Explorer 7的な色使い。style要素で設定していないのは904SHでは無視されるためです。多分head要素とかも削ってよさそう。

利用方法はPublish::Gmail でテンプレートを指定したいコメント欄参照。

ところで、エントリURLの名前をつける方法を初めて知りました……。MTみたいに何か枠があるのかと思っていたのです。その代わり時刻が出ないんですね…。