Bulknews::Subtech RSSフィード

2006/06/30 (金)

[Plagger] しょこたん to Picasa 01:43  [Plagger] しょこたん to Picasa - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] しょこたん to Picasa - Bulknews::Subtech

http://afromania.org/~k-ozaki/diary/20060606.html#p01

こりゃ便利だわ。ってことで早速しょこたんブログをスクレープしてみた。しょこたんブログをなめまわして写メールだと思われるイメージを全て抽出するスクリプト

それPla ということで http://subtech.g.hatena.ne.jp/miyagawa/20060602/1149248062 でやってたハックを screencast してみる。

13M あるけど気長に。

http://bulknews.typepad.com/tmp/plagger-photos.htm

iPhoto はないので Google Picasa2 で。OLE の API はないのかなあ、とおもってみたけど Picasa の監視下にあるフォルダにつっこめば勝手に自動追加されるみたい。Sync::Picasa はとくに必要ないぽ。

iPhoto は Applescript でいじれるので、Mac::Glue で Sync::iPhoto はつくれそう。YAPC Hackathon でいじるかな。

2006/06/26 (月)

ActivePerl で Net::Rendezvous 13:16  ActivePerl で Net::Rendezvous - Bulknews::Subtech を含むブックマーク はてなブックマーク -  ActivePerl で Net::Rendezvous - Bulknews::Subtech

Net::DAAP::Server は inode 問題で、むかしスクリプトで手をいれてハックしてたのを忘れてた。charsbar さんサンキュー。

で、こんどは Rendezvous (Bonjour) クライアント問題。iTunes だと5個くらいみえてるんだけど、ActivePerl で

use Net::Rendezvous;

my $r = Net::Rendezvous->new("daap");
$r->discover;

for my $entry ($r->entries) {
    print $entry->name, "\n";
}

とかしても、1個(自分の共有)しか出てこない。むー。

yuaokiyuaoki2006/06/28 03:06http://www.annocpan.org/~CHLIGE/Net-Rendezvous-0.90/lib/Net/Rendezvous.pmのthe cyclical wayの例にあるようにループでまわしてみてもダメですかね。JavaのJmDNSを使ってたときは取りこぼしが多かったんで、Bonjourのadd/delをリッスンして別スレで回して共有リスト作って、それを参照するようにしてみたりしてましたが。

2006/06/25 (日)

Net::DAAP::Server が ActivePerl で動かない 20:12  Net::DAAP::Server が ActivePerl で動かない - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Net::DAAP::Server が ActivePerl で動かない - Bulknews::Subtech

YAPC の iTunes プレゼンで、「Net::DAAP::Server::AAC + Net::Rendezvous::Publish::BonjourWin32 で iPod を iTunes シェアにパブリッシュ」というネタをやる予定だったのだけどうまく動かない。

ファイルの探索や Bonjour の Publish までいって、iTunes の共有にでてくるんだけど、クリックしても曲がでてこなくて、プレイリストが空。Net::DAAP::Server の make test でこけているのでこの辺かなあと思うんだけど、イマイチ原因がわからない。半年くらい前につくったときはうまくうごいたんだけどなあ。

各バージョンは最新のつかってます。

kdaibakdaiba2006/06/26 10:31ActivePerlってことはwinXPとかですよね.パーソナルファイアウォール通ってます?セキュリティパッチがあたったタイミングで,それまでに設定したルールが無効になる場合があるので,調べてみたらどうでしょう.

miyagawamiyagawa2006/06/26 12:28Net::DAAP::Server がinode番号をファイルIDにつかってるのが問題でした。

2006/06/18 (日)

[Plagger] 実況ボット 23:16  [Plagger] 実況ボット - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] 実況ボット - Bulknews::Subtech

f:id:miyagawa:20060618231522p:image

#plagger-ja で実況中。

CustomFeed::YahooWorldCup 書いた。permalink も date もないので、body の md5 を URI fragment にして Deduped。

CustomFeed と Rule::Deduped をもっと洗練しないとな。

Y! は遅い上に日本戦しかやってくれないので、LD Sports のやつもかいた。http://sports.livedoor.com/football/live_details?live_id=65

[Plagger] Bad datetime format 14:10  [Plagger] Bad datetime format - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Bad datetime format - Bulknews::Subtech

Apple はじめ、Datetime のフォーマットがエラーってパースできないフィードには、module: Fitler::RSSLiberalDateTime が効きます。

[Plagger] OPML with Cookie 14:10  [Plagger] OPML with Cookie - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] OPML with Cookie - Bulknews::Subtech

http://blog.guiyou.org/2006/06/freshreader2gmail.html

Subscription::OPML::FreshReaderなどを作ってみた。サーバインストール型のRSSリーダーにサーバで回すPlaggerをアレするとは随分冗長なことしてますが。

これはログインしないと Cookie がとれないからそうしてるんですかね? であれば、Firefoxや w3m でログインした Cookie をつくって Plagger にシェアさせちゃえば、Subscription::OPML だけでいける。

シェアのさせ方は、config.yaml に

global:
  user_agent:
    cookies: /path/to/cookies.txt

みたいにすればよし。Cookie ファイル種別は自動判別します。

2006/06/16 (金)

[Plagger] IE fav 2 OPML 15:08  [Plagger] IE fav 2 OPML - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] IE fav 2 OPML - Bulknews::Subtech

http://pc7.2ch.net/test/read.cgi/software/1148327464/50

IEのお気に入りから、一括でRSS対応しているものを抜き出す(opml等)にはどうすればいいのでしょう?

複数のアプリを使ってもかまいませんので、ご存知でしたら教えてください

それPla

global:
  timezone: Asia/Tokyo

plugins:
  - module: Subscription::Bookmarks
    config:
      browser: InternetExplorer
  - module: Publish::OPML
    config:
      filename: plagger.opml

http://plagger.org/trac/changeset/993

いまんとこ IE 限定。Safari と Mozilla はだれかつくって。

2006/06/15 (木)

Date::Japanese::Era 18:50  Date::Japanese::Era - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Date::Japanese::Era - Bulknews::Subtech

エンコーディングまわりのAPIが clumsy なので5年ぶりにアップデート。API互換性なし。ついでに漢数字からの変換とかサポートしたので、

Date::Japanese::Era->new("昭和五十二年")->gregorian_year; # 1977

が動くように。

ThinkPad Saber 0.22 11:35  ThinkPad Saber 0.22 - Bulknews::Subtech を含むブックマーク はてなブックマーク -  ThinkPad Saber 0.22 - Bulknews::Subtech

0.22 リリース。スタートアップとアイドル時に音が鳴るように。swing のバリエーションも増やした。

http://svn.bulknews.net/repos/public/thinkpad-saber/trunk/releases

2006/06/14 (水)

ThinkPad IE mover 20:44  ThinkPad IE mover - Bulknews::Subtech を含むブックマーク はてなブックマーク -  ThinkPad IE mover - Bulknews::Subtech

clouder 氏のアレ (http://clouder.jp/yoshiki/mt/archives/000686.html) の ActivePerl + IE 版。

# ThinkPad IE Scroller
# Copyright 2006 Tatsuhiko Miyagawa miyagawa at gmail.com
# License: Same as Perl (GPL or Artistic)

# based on http://clouder.jp/yoshiki/mt/archives/000686.html

use strict;
use List::Util qw(max min);
use Time::HiRes qw(sleep);
use Win32::API;
use Win32API::File qw(:ALL);
use Win32::OLE;

my $threshold = 3.0;

sub get_pos {
    my $file = createFile("//./ShockMgr", "r ke") or die "Can't get ShockMgr device";
    DeviceIoControl($file, 0x733fc, [], 0, my($buf), 0x24, my($bytes), []);
    my @data = unpack "x4s*", $buf;
    return @data;
}

# get screen metrics
my $function = Win32::API->new(
   'user32', 'GetSystemMetrics', 'I', 'I',
);

my $screen_width  = $function->Call(0);
my $screen_height = $function->Call(1);

my $depth = 8;

my @pos = get_pos;
my($base_x, $base_y) = @pos[3, 2];

my $app = "InternetExplorer.Application";
my $ie  = Win32::OLE->GetActiveObject($app) || Win32::OLE->new($app);
$ie->{Visible} = "TRUE";
$ie->GoHome();
1 while $ie->Busy;

while (my @pos = get_pos) {
   my $ax = ($pos[1] - $base_x) / 30;
   my $ay = ($pos[0] - $base_y) / 30;

   move_window($ie, $ax, $ay);
}

sub move_window {
    my($ie, $ax, $ay) = @_;
    
    my $left   = $ie->{Left} + $ax;
    my $top    = $ie->{Top}  + $ay;
    my $right  = $left + $ie->{Width};
    my $bottom = $top + $ie->{Height};
    
    $ie->{Left} = 
       ($left < 0)              ? 0
     : ($right > $screen_width) ? $screen_width - $ie->{Width}
     :                            $left;
 
    $ie->{Top} = 
       ($top < 0)                 ? 0
     : ($bottom > $screen_height) ? $screen_height - $ie->{Height}
     :                              $top;
}

動画は同じなので(ry

ThinkPad Saber 0.21 15:23  ThinkPad Saber 0.21 - Bulknews::Subtech を含むブックマーク はてなブックマーク -  ThinkPad Saber 0.21 - Bulknews::Subtech

http://svn.bulknews.net/repos/public/thinkpad-saber/trunk/releases/

Win32 の NotifyIcon 対応で exeの場合は console がでないように。PAR + Win32::Exe 万歳!しかし、右クリックでシャットダウンするだけなのにエライコードがごちゃごちゃする。。

[CPAN] DateTime::Format::Mail 12:08  [CPAN] DateTime::Format::Mail - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [CPAN] DateTime::Format::Mail - Bulknews::Subtech

http://d.hatena.ne.jp/hakobe932/20060531/1149081583

Module::Signatureで非バイナリファイルのハッシュを計算するときに実行されるbimode(SD, ':crlf')が悪さをしているようだ。このコードはModule::Signatureの最新バージョンである0.54から現れるコードなので、Module::Signatureが最新で無い場合はDateTime::Format::Mailはエラーなくインストールされると考えられる

Module::Signature 0.54 で fix された CRLF を含むファイルのダイジェストの計算方法。DateTime::Format::Mail の SIGNATURE は 0.53 以前でつくられているのでコケる。Dave と Audrey にメールした。


Encode::JavaScript::UCS 11:45  Encode::JavaScript::UCS - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Encode::JavaScript::UCS - Bulknews::Subtech

http://search.cpan.org/~itwarrior/Unicode-Escape-0.0.1/

さすがにこの名前はやりすぎでしょう。。。 あと実装も再発明感が。

Encode.pm を使う=5.8 前提なら Unicode::String のほとんどの機能は不要。Encode::Encoding として実装するのが普通だろうなあ。ということで、

package Encode::JavaScript::UCS;
use strict;
use warnings;
use base qw(Encode::Encoding);
use Encode 2.12 (); # for callbacks

__PACKAGE__->Define('JavaScript-UCS');

sub decode($$;$){
    my ($obj, $buf, $chk) = @_;
    $buf =~ s/\\u([0-9a-f]{4})/chr(hex($1))/eig;
    $_[1] = '' if $chk; # this is what in-place edit means
    return $buf;
}

sub encode($$;$){
    my ($obj, $str, $chk) = @_;
    $str = Encode::encode("ascii", $str, sub { sprintf("\\u%04x", $_[0]) });
    $_[1] = '' if $chk; # this is what in-place edit means
    return $str;
}

1;

__END__

package main;
use Data::Dumper;
use Encode;
my $name = "\x{5BAE}\x{5DDD}\x{9054}\x{5F66}";
my $escaped = encode("JavaScript-UCS", $name);
warn Dumper $escaped;

$name = decode("JavaScript-UCS", $escaped); 
warn Dumper $name;

ThinkPad Saber 05:13  ThinkPad Saber - Bulknews::Subtech を含むブックマーク はてなブックマーク -  ThinkPad Saber - Bulknews::Subtech

というわけで MacSaber の ThinkPad版。アイコン募集。

http://bulknews.typepad.com/blog/2006/06/turn_your_think.html

2006/06/13 (火)

Plagger + ThinkPad ShockMgr 23:49  Plagger + ThinkPad ShockMgr - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Plagger + ThinkPad ShockMgr - Bulknews::Subtech

というわけで、Push::Move - MacBookが動かされるのを検知してPlaggerのjobが走るPlugin のThinkPad版。動画うpした。

http://www.youtube.com/watch?v=Mxr5WWk01Yo

Win32 で普通に Plagger セットアップして、feature-server のブランチをチェックアウト。Net::Server で set_gid でエラーするところをコメントアウトする必要があった($< == 0 なユーザでやるとなってしまう。そうじゃなければおk)以外は、特に問題なく動かせた。

Geo::Coder::Google 20:41  Geo::Coder::Google - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Geo::Coder::Google - Bulknews::Subtech

Google が Geocoding API リリース。

http://www.tatamilab.jp/rnd/archives/000217.html

http://www.google.com/apis/maps/documentation/#Geocoding_Examples

ということで、つくった。

http://svn.bulknews.net/repos/public/Geo-Coder-Google/

データは json で JSON::Syck でパース。(JSON.pm だと key が unquoted な関係でパースできなかった) Win32 なら ppm install YAML-Syck でOKなはず。

日本の住所を問い合わせるときは、

use Geo::Coder::Google;
$geocoder = Geo::Coder::Google->new(apikey => $key, host => 'maps.google.co.jp');
$location = $geocoder->geocode(location => "東京都港区赤坂3-4-5");

な感じにhostを指定。住所は utf-8 もしくは Unicode 文字列で。

ちなみに JSON のデータは text/javascript; charset=UTF-8; charset=Shift_JIS とかいうふざけたヘッダで帰ってくるが、2個目が正しいらしい。

SmackPad 17:08  SmackPad - Bulknews::Subtech を含むブックマーク はてなブックマーク -  SmackPad - Bulknews::Subtech

ThinkPad の加速度センサーを Perl から読む。

# the code is based on 
# http://www.hirax.net/misc/AccelerometerThinkpad/AccelerometerThinkpad.h
# http://blog.netswitch.jp/files/leap-frog.zip
# http://linuxfocus.org/~guido/gentoo-tpt43p/tp-theft.txt

use strict;
use Win32API::File qw(:ALL);
use Data::Dumper;
use Time::HiRes qw(gettimeofday sleep);

sub get_pos {
    my $file = createFile("//./ShockMgr", "r ke") or die "Can't open ShockMgr device";
    DeviceIoControl($file, 0x733fc, [], 0, my($buf), 0x24, my($bytes), []);
    my @data = unpack "x4s*", $buf;
    return $data[1], $data[0];
}

my $depth = 8;
my $threshold = 1.0;

my(@xhist, @yhist);

for (1..$depth) {
    my($x, $y) = get_pos;
    push @xhist, $x;
    push @yhist, $y;
}	

while (my($x, $y) = get_pos) {
   shift @xhist; shift @yhist;
#   print "$x $y\n";
   push @xhist, $x;
   push @yhist, $y;
   my $xdev = stddev(@xhist);
   my $ydev = stddev(@yhist);
   if ($xdev > $threshold || $ydev > $threshold) {
       warn "[" . gettimeofday . "] MOVED";
   }
   sleep 0.1;
}

sub stddev(@) {
    my $sum=0;
    my $sumsq=0;
    my $n=$#_+1;
    for my $v (@_) {
	$sum += $v;
	$sumsq += $v*$v;
    }
    return sqrt($n*$sumsq - $sum*$sum)/($n*($n-1));
}

Plagger Server の ThinkPad 版もできそうだな。

→ できた。

http://plagger.org/trac/browser/branches/feature-server/plagger/lib/Plagger/Plugin/Server/Push/ThinkPadShockMgr.pm

動画は http://www.youtube.com/watch?v=Mxr5WWk01Yo

2006/06/12 (月)

OSCON Trickster talk 16:31  OSCON Trickster talk - Bulknews::Subtech を含むブックマーク はてなブックマーク -  OSCON Trickster talk - Bulknews::Subtech

YAPC::NA で発表する予定の Hacking iTunes and PSP with Perl だが、OSCON でもやらないかと Allison からオファー。枠があまってるんだろうか。。 ネタ的に自分の中で盛り上がってないので、YAPC でうまくいくかどうか次第だな。。。 デモ勝負なネタでもあるので環境依存、ってのもある。

[Plagger] アグリゲートフィードと EntryFullText 15:32  [Plagger] アグリゲートフィードと EntryFullText - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] アグリゲートフィードと EntryFullText - Bulknews::Subtech

http://subtech.g.hatena.ne.jp/otsune/20060612/livedoorblogEFT

あとメタRSS経由の時に使えるように(?:)?でくくる。

この件なんですが、

http://subtech.g.hatena.ne.jp/miyagawa/20060505/1146820144

del.icio.us, はてブのフィードはアップグレードしないように。

のように、メタRSSではアップグレードしないのがデフォルト、ってのがいいんじゃないかと思ってます。

http://plagger.org/trac/ticket/239 では、$entry->link のドメインをチェックして、複数になっていたらアグリゲートフィードと判断して、EntryFullTextでのアップグレードはしないようにしようかな、と。

で、Planet とかで、メタフィードなんだけど EntryFullText したい、って場合は force_upgrade: 1 を config につけると。

2006/06/11 (日)

[Plagger] BreakEntriesToFeeds 03:14  [Plagger] BreakEntriesToFeeds - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] BreakEntriesToFeeds - Bulknews::Subtech

http://blog.livedoor.jp/hakin/archives/50613044.html

ただし、このままでは、メールの差出人と件名が両方とも、トップページのタイトルの「[クックパッド] 簡単おいしいみんなのレシピが10万品!」となってしまいます。

いろいろ試したのですが、うまく変更できませんでした。

しょうがないので、 やどりぎ@NET: Plaggerでフィードをエントリごとに分割してGmailに送る パッチが Filter::BreakEntriesToFeeds に取り込まれる前の Revision 580 の BreakEntriesToFeeds を使っています。

これは、こっちをたてればあっちがたたず、という感じになるので、どちらがいいともいえないですね。Subject がタイトルになったほうが、Gmail ではグルーピングができるので重宝するのですが、タイトルが entry タイトルになってほしいという意見もわからなくはないです。いずれ、1通ごと分けて送るかどうかのconfig を用意するしかないですかね。

[Plagger] CustomFeed::Simple 03:11  [Plagger] CustomFeed::Simple - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] CustomFeed::Simple - Bulknews::Subtech

http://blog.livedoor.jp/hakin/archives/50613044.html

クックパッドはRSSは配信していませんが、Subscription::Config と Rule::Deduped でいい感じにできました。

こんな使い方もありでしょうか?

グッドです。CustomFeed::Simple の使い方としてバッチリな例だとおもいます。ただ、実は EntryFullText にも CustomFeed::Simple の機能が内包されていて(ソースを見るとわかります)、

  - module: Subscription::Config
    config:
       feed:
         - url: http://cookpad.com/
           meta:
             follow_link: /recipe/

と書くかわりに、

  - module: Subscription::Config
    config:
       feed:
         - url: http://cookpad.com/

とだけして、Filter-EntryFullText/cookpad.yaml に

# COOKPAD
author: Shigefumi
custom_feed_handle: http://cookpad\.com/
custom_feed_follow_link: /recipe/
handle: http://cookpad\.com/recipe/
extract: <title>(.*?)\[クックパッド\].*?<div id="recipe_detail">(.*?)<div style="float:right; margin-top:10px;">
extract_capture: title body

と、custom_feed_* を書けばいける、わけです。

CustomFeed::Simple と EntryFullText を統一したいなあとおもって、こんな感じに現状はなってます。ドキュメントも含めて、あまりいい状態ではないとおもうので何とかしたいとは思ってますが。

というわけで、config.yaml でサクっとフィードのリンクをつくりたいときは CustomFeed::Simple で follow_link を、この例のように EntryFullText と一緒にスクレイプしたい場合は、EntryFullText に両方かいてしまう、というのが(現状)いいかと。

2006/06/10 (土)

Encode::_utf8_off($str) considered harmful 04:42  Encode::_utf8_off($str) considered harmful - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Encode::_utf8_off($str) considered harmful - Bulknews::Subtech

についてあとで書く。

Unicode フラグを落とす目的で Encode::_utf8_off($str) を使うのはいいが、$str の中に、latin-1 に収まらない文字が1つも含まれず、かつ ASCII だけでもない、という場合に問題になる。utf8::encode($str) でなくてはならない。

2006/06/09 (金)

[Plagger] CustomFeed::2chSearch 21:35  [Plagger] CustomFeed::2chSearch - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] CustomFeed::2chSearch - Bulknews::Subtech

http://find.2ch.net/ でモリタポを使った検索をフィードとして扱う。すでに http://plagger.org/planet/ でも実施済み。

CustomFeed はサイトごとに増やさない、という方針ではあるものの、Subscription::Config とうまく動くのであればアリかなあということでとりあえず追加。ただ、ほとんどロジックが同じなので YAML ベース + hook で実装すべきですな。

2ch検索はpermalinkを返してくれないので、datをGETして調べるという涙ぐましいことも。

モリタポを使うので、Cookie sharing でログインした Cookie を指定する必要あり。デフォルトでは1時間はキャッシュがあればアクセスしにいかないが、それより頻度を減らしたければ Rule::DateTimeCron で制御してください。

Planet Plagger の2ch検索に使うモリタポの寄付は ◆nm5G8rESMA まで。otsuneさん、ありがとうございます。

[Plagger] otsune bug-a-thon 21:32  [Plagger] otsune bug-a-thon - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] otsune bug-a-thon - Bulknews::Subtech

otsuneさんから otsune's SnakeOil - subtech やらIRC やらできていたレポートをまとめて処理。

  • r936 TruePermalink で $entry->link を書き換えないことによる FindEnclosures のエンバグ修正
  • r938 podtrac の TruePermalink 追加。via http://d.hatena.ne.jp/mryfmo/20060608
  • r939 FeedBurner の Podcast リンクをリダイレクタに追加
  • r940 EntryFullText でマッチに失敗しても、Last-Modified があり、かつ $entry->date が空ならそれをセット
  • r941 本文にマルチバイトがある場合の MD5 エラーを回避
  • r942 Publish::CHTML で sjis に書き出す際、FB_HTMLCREF でフォールバックするように
  • r943 CHTML のデフォルトを cp932 に
  • r944 livedoor Blog の PRO ドメインに対応。また、「続きを読む」が入ってるときだけupgradeするようにした
  • r945 pya.cc のアップグレーダ

などなど



shibuya.pl 16:16  shibuya.pl - Bulknews::Subtech を含むブックマーク はてなブックマーク -  shibuya.pl - Bulknews::Subtech

@shibuya.plのメールアカウント欲しい!

miyagawa@

YAPC::EU 09:39  YAPC::EU - Bulknews::Subtech を含むブックマーク はてなブックマーク -  YAPC::EU - Bulknews::Subtech

Dear Tatsuhiko,

We are delighted to inform you that your submitted talk has been scheduled into the preliminary programme. As such your attendance fee will be waived. Please acknowledge your acceptance to present the talk (as listed below) as soon as possible, in order for us to publish the preliminary programme.

"Plagger - pluggable RSS/Atom remixing platform" (40 mins) - ACCEPTED

2006/06/08 (木)

ActivePerl + LibXML 22:25  ActivePerl + LibXML - Bulknews::Subtech を含むブックマーク はてなブックマーク -  ActivePerl + LibXML - Bulknews::Subtech

http://d.hatena.ne.jp/charsbar/20060607/1149690537

charsbarさんありがとう。というわけで、

でいけた模様。ppm install するときに持ってくる libxml2.dll に問題があるみたいっす。たぶん。




Switched back to unDonut 16:28  Switched back to unDonut - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Switched back to unDonut - Bulknews::Subtech

Firefox を捨てて unDonut にもどってきた。快適だ。

Firefox memo 02:39  Firefox memo - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Firefox memo - Bulknews::Subtech

network.dns.disableIPv6 true

必須

2006/06/07 (水)

[Plagger] SixApart standard template for Planet 03:52  [Plagger] SixApart standard template for Planet - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] SixApart standard template for Planet - Bulknews::Subtech

P::P::P::Planet に sixapart-standard なテンプレートを追加。

http://plagger.org/trac/changeset/912

planet

http://plagger.org/planet/ がさらにキレイになった。

とりあえず TypePad のテストBlogでCSSホストしてるので、デザイン変えたいときは TP にログインしてデザインを変更すればOKに。あとは http://www.thestylecontest.com/ Style Contest のやつとかもつかってみたいっすね。

00:37   - Bulknews::Subtech を含むブックマーク はてなブックマーク -   - Bulknews::Subtech

http://blog.livedoor.jp/dankogai/archives/50522473.html

Livedoor BlogはMT Cloneなので、MTにも同様の問題がある可能性は否定できない

[これはひどい]

  • Livedoor Blog は MT のクローンではない。訂正されたけど、ベースでもないと思うよ。ソースコードには何の関連もない。
  • MT のファイル書き出しは temporary ファイルに書いたあと rename する。MT::WeblogPublisher にそのコードがある。ちなみに tempfile を使わないようにするには、mt-config.cgi に NoTempFiles 1 とする。

2006/06/05 (月)

Gmail on IE vs. Firefox 15:18  Gmail on IE vs. Firefox - Bulknews::Subtech を含むブックマーク はてなブックマーク -  Gmail on IE vs. Firefox - Bulknews::Subtech

思い立って Plagger on Gmail を IE (UnDonut) で読んでみたら、やたらレンダリングが高速だった。FFで GMとかFirebugをつぶしても、IEのほうがやはり速い。拡張いれすぎとかかなあ。

特定のサイトだけIEで開く、ってのができるといいなあと思い、IEtab ってのを教えてもらったけど、そこから開いたタブが全部IEになってしまってうまいこと動かなかった。惜しい。

kaz_gotokaz_goto2006/06/05 23:25IE View (http://ieview.mozdev.org/)で予め設定した URL を IE で開くことができますよ。

miyagawamiyagawa2006/06/06 00:37じゃなくて、GmailをIEで開きつつ、そこから開いたリンクはFirefoxでみたいのですよ。

kaz_gotokaz_goto2006/06/06 01:20逆でしたか。では FirefoxView (http://www.iosart.com/firefox/firefoxview/) ですかね。しかしこちらは予め設定はできないので、つど右クリックして Open Link Target in Firefox を選ぶしかないですねぇ。

2006/06/03 (土)

[Plagger] RSS with Authentication 22:45  [Plagger] RSS with Authentication - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] RSS with Authentication - Bulknews::Subtech

http://sky.taro-web.com/2006/06/03/000563

はてなダイアリを private mode で使ってる友達がいて、それも plagger で読めたらいいよね、ということで作ってみた。

はてなダイアリにログインした状態の Cookie ファイルをつくって (firefox か w3m など)で、

global:
  user_agent:
    cookies: /path/to/cookie.txt
plugins:
  - module: Subscription::Config
    config:
      feed:
        - http://d.hatena.ne.jp/.../rss

で、できるはず。

See also: http://plagger.org/trac/wiki/CookbookUserAgentConfig

2006/06/02 (金)

[Plagger] ぶっこ抜き系 20:34  [Plagger] ぶっこ抜き系 - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] ぶっこ抜き系 - Bulknews::Subtech

mainichi-msn

http://www.mainichi-msn.co.jp/entertainment/geinou/200605/graph/30_3/ のようなアルバムから画像をenclosure にして FetchEnclosure でぶっこ抜いたの図。assets/Filter-FindEnclosures/mainichi_msn.pl で実現。

CustomFeed::Flickr も対応したので、http://www.flickr.com/explore/interesting/7days/ を API から抜き出して、ダウンロードしてスクリーンセーバー、なんてのもできるハズ。

- module: Subscription::Config
  config:
    feed:
      - url: http://www.mainichi-msn.co.jp/entertainment/geinou/200605/graph/30_3/
        meta:
          follow_link: "^\d+\.html$"
- module: CustomFeed::Simple
- module: Filter::FindEnclosures
- module: Filter::FetchEnclosure
  config:
    dir: /path/to/download


[Plagger] Bloglines is back up 15:26  [Plagger] Bloglines is back up - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Bloglines is back up - Bulknews::Subtech

と、作業をしてたら Bloglines が復旧したw ありがちすぎる。。。

[Plagger] switch to LDR, again 15:25  [Plagger] switch to LDR, again - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] switch to LDR, again - Bulknews::Subtech

Bloglines がいつになっても復旧しないので、再度LDRに避難。

  • LDR に未読を消したいのだけど、左サイドバー描画が固まってしまう、というわけでPlaggerで未読削除。Subscription::LivedoorReader で mark_read:1 だけ書いた YAML を食わせればOK。
  • Bloglines のOPMLをエクスポートして LDR にインポート。重複はちゃんとはじいてくれる。

というわけで未読削除待ち。LDR だと HTML が書き換わっていて StripRSSAd が動かない問題があるけどとりあえずガマン。

[Plagger] 0.7.2 リリース 15:23  [Plagger] 0.7.2 リリース - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] 0.7.2 リリース - Bulknews::Subtech

enclosure のダウンローダや、FLVの抽出などを強化。enclosureまわりはまだBlogにあまり書いてないので、雑誌記事にあわせて、集中して解説エントリを書いたほうがいいね。

2006/06/01 (木)

[Plagger] Bloglines API 17:42  [Plagger] Bloglines API - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Bloglines API - Bulknews::Subtech

Bloglines API が日本時間12時ごろから死んでる。どのAPIにアクセスしても 401 Authorization Required を返されてしまう。とりあえず Contact からレポートを送っておいたけど、はやいとこ復旧してもらわないと困るなあ。

取得先をLDR にという声もきかれるけど、HTMLタグを書き換えたりするので、Filter::StripRSSAdが動かなくてこまったりするんですよね。復旧するまでの間 XHTMLNormalizer モジュールとかつくって準備するか。。。

[Plagger] Bloglines search 13:22  [Plagger] Bloglines search - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Bloglines search - Bulknews::Subtech

http://www.bloglines.com/search

http://www.bloglines.com/advsearch

Bloglinesの検索がなんかリニューアルしたげ。単語を含むエントリとか、URLにリンクしてるサイトとかの検索結果がRSSでとれるよ。正直こんなの2年前につけてくれという気がするが、網羅してるサイト数はかなりのモンだから、Planet Plagger への補完が期待できる。あと Atom 1.0 のパーサもはやくなおしてね。

ということで早速 Subscription::Planet に追加した。

http://plagger.org/trac/browser/trunk/plagger/lib/Plagger/Plugin/Subscription/Planet.pm

言語を英語にしてるとデフォルトで Engligh only になってしまうので、クエリに lang:any を追加すると吉。Subscription::Planet が日本語中心の検索エンジンになりつつあるので、assets で検索サイトのセットを分けるといいかもな。

http://plagger.org/trac/ticket/288

あと CustomFeed::BloglinesCitation は役目を終えたので、RSSにリダイレクトするだけのプラグインに変えよう。

http://plagger.org/trac/ticket/287

Bloglines + Ask の話は Techcrunch にでてた。http://www.techcrunch.com/2006/05/31/askcombloglines-launch-blog-search/

[Plagger] iCal idea 11:48  [Plagger] iCal idea - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] iCal idea - Bulknews::Subtech

http://del.icio.us/miyagawa/towatch

とかで WOWOW の番組表とかブクマしておくと、HTMLから日付データを抽出して Publish::iCal したり Sync::NetNavi とかで自動予約。