後藤@太陽計測です Rubyには直接関係ない内容なのですが、 ちょっと誤解があるようなので。。。 また、自分で読みなおしてもおもうのですが、なんか、エラそうな文面に見え ましたら、ごめんなさい。そんなジンブツじゃないのは確かです。 >>>>> From: Toru Hoshina <toru / gte.net> > > それから、RFC2047では、例えば "漢字file" というのは white-spaceで > > 区切られていないので、"=?iso-2022-jp?B?GyRCNEE7ehsoQg==?= file" と > > してはダメで、=?iso-2022-jp?B?GyRCNEE7ehsoQmZpbGU=?= といっしょに > > エンコードしなければなりません。そうしないと、decodeすると > > "漢字 file"となってしまうからです。 > > 私は"漢字 file"となってしまうので良いのだと今迄ず〜っと思っていました。 > というか、これはencodeの対象となる文字列にもともと含まれていた空白と > encodeした結果、multiple header化せざるを得なかった場合に行頭に追加 > される空白との判別ができないRFC2047の欠陥だ、と。 後のことにも関係しますが、このような空白保存の問題があるからいっしょに エンコードしないとならないね、ということです。 # RFC2047では、英語圏の文化のせいなのかわかりませんが、「ワードの区切り # に空白はふつ〜あるだろ」みたいな前提があるような印象を受けます。 ## 邪推でしかないですが :-) > 例えば、文字列自体に意味はありませんが、いろいろなMailerで > > aあbいcうdえeおfかgきhくiけjこkさlしmすnせoそpたq > > などというSubjectを送受信してみると、実に様々な実装があるのがわかります。 ...snip... > となるようにencodeしていました。これをdecodeすると、当然ながら > a あ b い c う d え e... などと、空白入りとなって等価には復元できないのは > 承知の上で、です。 Becky!などはそういう感じのようですね。(現バージョンはどうかな?) 例えばEmacs上のメーラのMewだと、上記文字列はこうなります Subject: =?iso-2022-jp?B?YRskQiQiGyhCYhskQiQkGyhC?= =?iso-2022-jp?B?YxskQiQmGyhCZBskQiQoGyhC?= =?iso-2022-jp?B?ZRskQiQqGyhCZhskQiQrGyhC?= =?iso-2022-jp?B?ZxskQiQtGyhCaBskQiQvGyhC?= =?iso-2022-jp?B?aRskQiQxGyhCahskQiQzGyhC?= =?iso-2022-jp?B?axskQiQ1GyhCbBskQiQ3GyhC?= =?iso-2022-jp?B?bRskQiQ5GyhCbhskQiQ7GyhC?= =?iso-2022-jp?B?bxskQiQ9GyhCcBskQiQ/GyhCcQ==?= 同じくEmacs上のMIMEユーティリティFLIMだと、こうなります。 Subject: =?ISO-2022-JP?B?YRskQiQiGyhCYhskQiQkGyhCYxskQiQmGyhCZBskQiQoGyhC?= =?ISO-2022-JP?B?ZRskQiQqGyhCZhskQiQrGyhCZxskQiQtGyhCaBskQiQvGyhCaQ==?= =?ISO-2022-JP?B?GyRCJDEbKEJqGyRCJDMbKEJrGyRCJDUbKEJsGyRCJDcbKEJt?= =?ISO-2022-JP?B?GyRCJDkbKEJuGyRCJDsbKEJvGyRCJD0bKEJwGyRCJD8bKEJx?= > しかし、英数字をスルーしないで一緒くたにencodeするのが正しい解釈 > だったとわ… すると、OutLookなどは正しいんですね。 > > Re: [ruby-list:10802] Re: サブジェクトのエンコード > > などというのも、後藤さんのおっしゃるencode方法だと、頭から=?...と > 始めるわけで、とするとMLサーバなどではMIMEのデコード必須ですね。 > そうしないと、replyの通し番号を取り除けずに(encodeされちゃってるから) えぇと、これはちがいます。いっしょにエンコードするのは、必要最小限に すべきなので、上記場合は [FLIMの場合] Re: [ruby-list:10802] Re: =?ISO-2022-JP?B?GyRCJTUlViU4JScbKEI=?= =?ISO-2022-JP?B?GyRCJS8lSCROJSglcyUzITwlSRsoQg==?= とか、 [Mewの場合] Subject: Re: [ruby-list:10802] Re: =?iso-2022-jp?B?GyRCJTUlViU4JSclLyVIJE4lKCVzJTMhPCVJGyhC?= とかなります。ここは、Re:の後ろの空白をちゃんと使えるので、チャンと保存 され、問題無いわけです。くっついちゃってる個所はいっしょにエンコード しないといけないという話しなわけです。 > Re: [ruby-list:10806] Re: [ruby-list:10805] Re: [ruby-list:10804] > Re: [ruby-list:10803] Re: [ruby-list:10802] Re: サブジェクトのエンコード > > などとなります(笑) というわけで、そうはならないわけです。(^^; > #全然rubyと関係なくて、ごめんなさい皆さん。 すいません、みなさま (._.)> P.S. Ruby 好きです 他だ惜しむらくは、触る時間とネタがあまりない (;_;) --- Regards, Shun-ichi Goto <gotoh / taiyo.co.jp> R&D Group, TAIYO Corp., Tokyo, JAPAN