[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: アーカイブUTF-8化



綾小路です。

> MLのアーカイブ(lists.debian.or.jp)をUTF-8に切り替えました。

対応していただき、ありがとうございます。

> ・nkfを通しているのですが、「ヘッダにUTF-8 MIMEが含まれているけれども本文は
>   ISO-2022-JP」のメールが化けます。具体的には綾小路さんのメールがUser-Agentに
>   UTF-8、本文ISO-2022-JPで、UTF-8が使われてしまって本文が化けています。
>   (→フロー的には自動判定じゃないと面倒なので、MIMEの中身をマジメに見て変換
>   といったことは避けたい…)

言いだしっぺの私のメールが文字化けすると言うことなので、自動判定だけど、
MIME の中身をマジメに見て変換する perl スクリプトを書いてみました。

| nkf -ew | mhonarc
のように、メール 1 通ごとにパイプを噛ませているのであれば、

| perl debian-www-maildecoder.tidy.pl | mhonarc
とすると、マジメに変換してくれます。

問題点:

1. ヘッダフィールド名の大文字小文字が換わることがあります。
   例えば、X-MLServer が X-Mlserver になったりします。
2. charset を見てデコードしていますが、未対応の charset の場合
   (例えば ISO-2022-JP-2 の場合) は、
   デコードしたい文字列からエンコードの推測を行います。
   推測に失敗した箇所は出力されません。
3. nkf -mw に比べて処理時間が23倍程度に増加。
   (100 通のメールを 1 通ずつ処理した場合)

綾小路龍之介
--
AYANOKOUZI, Ryuunosuke <i38w7i3@xxxxxxxxxxx>

Attachment: debian-www-maildecoder.tidy.pl
Description: Binary data

Attachment: pgpPZWz5wsW7Y.pgp
Description: PGP signature