Namazu-devel-ja(旧)


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

filter/mhonarc.pl でデコード前の文字列が登録される



寺西です。

make check して生成した tests/idx1/NMZ.w を覗いていると、

=?iso-2022-jp?......

のようなデコードされていない文字列が登録されていました。
気になったので、少し調べてみると tests/data/ja/msg00000.html を
処理した際に登録されることがわかりました。
このファイルは MHonArc で生成された HTML ファイルで、どうやら
Subject がデコードされずに NMZ.w に登録されているようです。

filter/mhonarc.pl によると、Subject の切り出しは次の手順で行って
います。

1. <!--X-Head-End--> までに記述された <!--X-Subject  --> の文字列
   を取り出す。
2. <!--X-Head-of-Message-End--> までに記述された Subject: の文字列
   を取り出す。

1の文字列は、2の文字列によって上書きされるため、検索結果には
現れません。2 の文字列はデコードされており日本語も正しく表示され
ます。しかし、1の文字列も NMZ.w には登録されます。

filter/mhonarc.pl は、pre_codeconv で先に EUC に変換されますが、
uncommentize 前の文字列は EUC に変換されません。このため、
uncommentize 後に EUC に変換する必要があります。

tests/data/ja/msg00000.html は、MHonArc バージョン 2.4.4 で生成
したものであるので、この問題が生じているのかもしれません。
最近のバージョンでは問題ないかもしれませんが、修正箇所はわずか
ですし、修正を加えたことによっての悪影響はないものと思われます。
この修正を行い commit しました。

# NMZ.w が少し小さくできたかもしれません。(千里の道も一歩から)
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E