SPモードとGmailの何でやねん、或いはThunderbirdのeml読み込みでハマった話。

 さて、個人的には「とっととしてくれ」と思っていた「ドコモメール」の提供開始。SPモード(というよりはSPモードメールの端末側ソフト)のダメ仕様が多少マシになるのではと期待していたのだが、当初予定ではとっくに始まっている筈が、延びに延びて10月という話に。

 #つかこの調子だと年内すら怪しい気がする。

 ということで、いい加減SPモードの呪縛から逃れようと、多少なりとも話が通じそうな人間にはgmailへのアドレス変更通知を送っているのだ、が。
 問題は過去メール。何だかんだでバックアップもされないまま端末に溜まっております。これはマズい。
 ということで、この「SPモードのメールをgmailに移行する」という作業をしたのだが、Thunderbirdの思わぬ罠に引っかかってトンでもない目に遭ったので、取り敢えずメモ。

 ◇

 まず、大まかな作業の流れ。

 1.SPモードからメールをeml形式でSDカードへExportする。
 2.SDカード上のファイルを何らかの方法でPCにCopyする。
 3.ThunderbirdでGmailに接続し、IMAP経由でImportする。

 Thunderbirdがいつの間にかeml形式を読み込めるようになったので非常にシンプルな行程で出来るようになってます。
 ・・・が、そこに罠があったのであり。

 結論から言うと、Thunderbirdのeml読込にはimapフォルダと組み合わされた場合に発動する、結構イヤな感じのバグが残っている。但し操作方法を一工夫すればバグ回避が可能。
 その一工夫とは、以下の通り。

 「まずemlファイルをローカルフォルダにImportし、次にローカルフォルダの中身をIMAPフォルダにCopyする」

 これで日時表示の問題等もなくemlファイル群をGmailにImport出来ましたとさ。

 ♯ちなみに当方がこの「一工夫」を見つけるまで約3時間、但し2時間以上「emlファイルのヘッダを弄ったらどうにかならんのか」と試していたのであり。そちらの結論は「ヘッダ弄りではどうにもならん」ということで。

 ◇

 以下、詳細。

 「Thunderbirdのeml読込にはIMAPフォルダと組み合わされた場合に発動する」症状は2つで、

 ・IMAPのローカルキャッシュが壊れる
 ・Thunderbird内部に保持されるメールの受信日時がImport作業をした日時になる

 これどちらも結構イヤな感じ。

 前者はmboxファイルが壊れるにも関わらずThunderbird側には検出されないため、メールの本文表示が壊れるだけでなく、運が悪いとIMAPサーバ=Gmailと同期すらしなくなってしまう。
 対処はmboxを手動で削除して、再度全DLして作り直すしかない。

 後者は「このままIMAPサーバにメールをImportするとメール一覧画面で表示される日時が狂う」という最悪の状況が発生する。
 もともとThunderbirdの開発にはgoogleが絡んでいるので「ThunderbirdでIMAPを使えばGmailへImportしても日時が狂わない」というのはThunderbirdの初期のウリの一つだったのだが、このウリが完全に吹っ飛んでしまっている。

 ところがこの2つの症状、発生するのは「外部からemlを直接IMAPフォルダに読み込ませた場合」という極めて限定的な状況のみ。
 試しにローカルフォルダにemlをImportしてみると問題はないし、既にデータの存在するIMAPフォルダの内容を別のIMAPフォルダ下にコピーしてもこれまた全く問題無い。
 なので、取り敢えずローカルフォルダにImportしてから作業をすれば全て解決。

 にしても、OSSとしては開発者数に恵まれているThunderbirdでこんな分かり易い症状の出るバグが残っているとは。
 IMAPフォルダへのeml直接投入なんて操作は普通やらん、てことなのかね?

Share