毎日毎日、海外のMLから大量のメールがやってくる。単に受け取っているだけでなく、「攻め」に転じたのは5年ほど前のことだったろうか。
AppleScriptでメールボックス内のメールを自動仕分けするScript、1つの話題(スレッド)に投稿が集中しても、メールの流れをMind Map上に図示する「メールフロー・ビジュアライザ」、投稿数の多い投稿者を色分け表示する「カラーリング・ビジュアライザ」……などの強力なAppleScriptを開発し、日常的に使用している。
当初は片手で数えられるぐらいのMLしか購読していなかったのだが、こうした武器を使えるようになり、より大量のMLを購読でき、有用な情報を集めることが可能になってきた。
……ところが、この門外不出の強力兵器「メールフロー・ビジュアライザ」にはあっと驚く弱点があった。海外の英語のMLには有効だが、日本国内の日本語MLで使うと……
こんな風になってしまう。日本国内のMLには有効に機能しないのだ。
メールフロー・ビジュアライザには、「Subject変更検出機能」が搭載されており、1つのスレッド内でSubjectが変更されたことを検知して枠で囲むようになっている。有効に機能すれば、1つのスレッド内を論理的にパーティショニングでき、話題の分割を効果的に行える。
だが、日本国内のMLだと1通1通Subjectが変更されたと勘違いして、枠線だらけになってしまうのだった。高度な処理が裏目に出てしまい、ひじょうに残念だ。
しばらくそのままの状態で海外MLにのみ使っていたのだが、やはり日本語MLに対して使いたい。いや、どうしても使えたほうが便利な状況になってきたので、いろいろ調査を行ってみた。
どうして、日本語のMLだけSubjectが変わったことになってしまうのか? どこが変わるのか?
……よくよく見てみたら、
[test_ml 00001]○○の○○を××することについて
メールのSubjectにメッセージのシリアル番号が入っているケースが多く、これがカウントアップされると、Subjectが「変わった」とプログラムに見なされてしまうのだった。すぐに気付くべきだった……。
いろいろ調査してみると、カウンタの入り方にはいくつかパターンがあって、
[test_ml] [00001]○○の○○を××することについて