2000-10-28(土) [長年日記]
■ Ruby 1.6
Ruby 1.6.1にしたら、今まで動いていたスクリプトが一部動かなくなっていてちょっと慌てる。こんなメソッド呼び出しがparse errorに。
foo.bar( p1, p2, )
■ まぁ、こんなよけいなコンマを付けている方が悪いのだが。でもArrayは余分なコンマがあってもいいんだよなぁ。
■ eGroups対策
さて、昨日から購読しているVisor-Village ML、ただでさえS/N比が低いのにeGroupsの広告が全メールの末尾に入ってひっじょーにうるさい。これ、受信するときに自動的にカットしちまおう(笑)。例によって自分で作るのは必要最小限にして、既存のツールを活用する。まず、広告部分をカットするフィルターをRubyで書く。eGroupsの広告は「---------- eGroups Sponsor ---------」みたいなセパレータの後ろに入っているので、こんな感じでいい(cut-egroups
スクリプト)。
#!/usr/bin/ruby mail = ARGF.read body, ad = mail.split( /^-+ eGroups Sponsor -+.*$/ ) print body
■ あとはprocmailやqmailの組み合わせで行く。まず、~/.procmailrc
をこんな感じに。
:0 * ^TO_.*visor-valley@egroups.co.jp | cut-egroups | qmail-inject sho-visor-village@spc15.tada
■ これで、Visor-Village MLのメールは、cut-egroups
を通って広告を排除されてからqmailのローカル配送コマンドqmail-inject
によってsho-visor-village@spc15.tadaというアドレスに転送される。さらに~/.qmail-visor-village
というファイルを作って以下の1行を書いておけばおっけー。
./Maildir/.gadgets.visor-valley/
■ Maildirのgadgets/visor-villageというメールボックスに保存する設定だ。qmailは「ユーザ名-hogehoge」というアドレスをこんな風にユーザ権限で作れるから便利。これでうるさい広告とおさらばである♪