[Slashdotjp-dev 287] Re: CVS update: slashjp/Slash/Utility/System

Back to archive index

Oliver M. Bolzer olive****@faker*****
2005年 1月 7日 (金) 08:07:47 JST


> Update of /cvsroot/slashdotjp/slashjp/Slash/Utility/System

> properly convert character set/encoding of outgoing mail. controlled by new vars mail_charset_header and mail_charset_body

パッチの肝は

+	my $b_code = $constants->{mail_charset_body} || "UTF-8";
+	my $h_code = $constants->{mail_charset_header} || "MIME-Header";
+	$content = encode( $b_code, $content, Encode::FB_PERLQQ );
+	$subject = encode( $h_code, $subject, Encode::FB_PERLQQ );

データの中身がたまたまASCIIであるか、論理文字列フラグ(通称UT8フラグ)が
$contentと$subjectに立っているのが前提条件。

本文はなんら問題なくISO-2022-JP
にできるが、残念ながらEncode::MIME::HeaderはUTF-8の直接エンコードにしか
対応していないので、サブジェクトは =?UTF-8?B?...?=とエンコーディングされる。
文字コードが明記されているのでMIMEの仕様的には問題ないが、巷にはこれを
復号化しないか文字化けするメールソフトはどれぐらいあるのだろうか。
本当にISO-2022-JPが必要ならJEncodeからEncode::MIME::Header::ISO_2022_JPを
借りてくること。(http://www.donzoko.net/source/JEncode/JEncode.pm)


-- 

	Oliver M. Bolzer

GPG (PGP) Fingerprint = 621B 52F6 2AC1 36DB 8761  018F 8786 87AD EF50 D1FF



Slashdotjp-dev メーリングリストの案内
Back to archive index