SubjectのエンコードとメーリングリストシNo.13614
yuw さん 03/07/02 17:16
 
ver2.91を使っております。

技術系のメーリングリストに投稿することが多いのですが、
鶴亀のSubjectのエンコード方針と、
メーリングリストが自動的にSubjectに連番を追加する機能
とのかねあいからか、見た目的にあまりよろしくない結果を
生んでしまっています。鶴亀の設計思想/方針といえばそれまでですが、
とりあえず現象だけ報告です。

FMLやpipermail等のメーリングリスト管理/配信システムには、
Subjectについている「Re:」といた文字列の位置を移動させつつ
Subjectに連番をつける機能というものがあります。

Subject: [hoge-ml:0001] hogehogehoge
というSubjectのメーリングリスト経由のメールに対して、
メーリングリスト宛てに返信するとき、
鶴亀を含む多くのメーラは、自動的に
Subject: Re: [hoge-ml:0001] hogehogehoge
というSubjectにしてくれます。
しかし、メーリングリストシステムが実際にこのメールを配信するときに
Subject: [hoge-ml:0002] Re:hogehogehoge
という自動変換をやってくれる、という次第です。
(古い連番部分のみを消して、+1した連番を先頭に追加するという動作)

ところが、現在の鶴亀メールを用いてメーリングリストに
「返信」のメールを投げると、
メーリングリストが配信してくるメールのSubjectは
多くの場合、以下のようになってしまいます。
Subject: [hoge-ml:0002] Re: [hoge-ml:0001] hogehogehoge
(古い連番部分の削除に失敗している)

連番部分が連続するので、見た目はあまりよろしくありません。

Subjectに日本語を使う(=MIMEエンコードされる)場合に
この現象が起きるようです。

原因はなんとなくですがわかっていて、
鶴亀がASCIIで書かれている連番の部分もろともSubject全体を
MIMEエンコーディングしてしまっているため、
メーリングリストシステム側はそこに古い連番部分が埋まっている
ことを察知できずに、新しい連番をつけるだけの動作をして
配信してしまっているのでしょう。

almail32やbeckyなどではこの問題は起きないようです。
(未確認)

以上、参考まで。


[ ]
RE:13614 SubjectのエンコードとメーリンNo.13615
Kengo さん 03/07/02 18:02
 
> 鶴亀がASCIIで書かれている連番の部分もろともSubject全体を
> MIMEエンコーディングしてしまっているため、

かどうかは、自分宛にメールを送ってログを見れば簡単にテストできます。

Subject:  Re: [hoge-ml:0001] テスト
→Subject: Re: [hoge-ml:0001] =?ISO-2022-JP?B?GyRCJUYlOSVIGyhC?=
→問題ないはず

Subject:  Re:[hoge-ml:0001] テスト
→Subject: Re:[hoge-ml:0001] =?ISO-2022-JP?B?GyRCJUYlOSVIGyhC?=
→問題ないはず

Subject:  Re:[hoge-ml:0001]テスト
→Subject: =?ISO-2022-JP?B?UmU6W2hvZ2UtbWw6MDAwMV0bJEIlRiU5JUgbKEI=?=
→全体をMIMEエンコードしている

と、日本語の直前に半角空白があれば、そこまでは
MIMEエンコードしていないようです。
#鶴亀2.86/Win98

私もこのタイプのメーリングリストには多数参加していますが、
[...]の直後にサーバーが半角空白を入れているものばかりでした。
従って返信して3番目のケースになる(する)には、その空白を明示的に
削除しないと無理なようです。

それとも、鶴亀のバージョンによって、違うんでしょうか??

> almail32やbeckyなどではこの問題は起きないようです。

OutlookExpressが、「日本語があれば全部エンコードしてしまう」
動作だったと思います。

[ ]
RE:13615 SubjectのエンコードとメーリンNo.13619
tnobu2 さん 03/07/02 23:27
 
>Subject:  Re:[hoge-ml:0001]テスト
>→Subject: =?ISO-2022-JP?B?UmU6W2hvZ2UtbWw6MDAwMV0bJEIlRiU5JUgbKEI=?=
>→全体をMIMEエンコードしている
>
>と、日本語の直前に半角空白があれば、そこまでは
>MIMEエンコードしていないようです。
>#鶴亀2.86/Win98
>
>私もこのタイプのメーリングリストには多数参加していますが、
>[...]の直後にサーバーが半角空白を入れているものばかりでした。
>従って返信して3番目のケースになる(する)には、その空白を明示的に
>削除しないと無理なようです。
>
>それとも、鶴亀のバージョンによって、違うんでしょうか??

業務用にFMLで運用しているメーリングリストをいくつも使っています
が、鶴亀で問題が出たことはないです。

いまちょっと確認できないですが、FMLの設定などで"[...]"の後に空白
が入らないようにできたりするのかな。
もしそういうことで、他のソフトでは問題無いということならば空白が
無いと鶴亀は全部MIMEエンコードしてしまうことが原因なのかもしれま
せん。

>
>> almail32やbeckyなどではこの問題は起きないようです。
>
>OutlookExpressが、「日本語があれば全部エンコードしてしまう」
>動作だったと思います。

[ ]
RE:13615 SubjectのエンコードとメーリンNo.13620
さかの さん 03/07/02 23:38
 
さかのです。

Kengo<5001xxxxxxxxxxxxxx@maruo.co.jp>さんの
hidesoft.8:13615| RE 13614 Subjectのエンコードとメーリングリストシステムが追
加す
<xxxxxxxxxxxxxx@maruo.co.jp>から

>私もこのタイプのメーリングリストには多数参加していますが、
>[...]の直後にサーバーが半角空白を入れているものばかりでした。
>従って返信して3番目のケースになる(する)には、その空白を明示的に
>削除しないと無理なようです。

私は、ここにある鶴亀メール用Subject成形マクロを使っています。
http://members.jcom.home.ne.jp/rinks/
これだと
Re: ほげほげとSubjectを成形してくれるのでMLに投稿したメールは
[....]Re: ほげほげときれいにそろいます。
Re:[2]となるのがいやなので私は、このマクロを一部改造して使っています。
とても便利ですよ。
--
さかの

[ ]
RE:13619 SubjectのエンコードとメーリンNo.13622
tnobu2 さん 03/07/03 09:47
 
>いまちょっと確認できないですが、FMLの設定などで"[...]"の後に空白
>が入らないようにできたりするのかな。
>もしそういうことで、他のソフトでは問題無いということならば空白が
>無いと鶴亀は全部MIMEエンコードしてしまうことが原因なのかもしれま
>せん。

AL-Mailでテスト用MLに"[...]"の後に空白を入れずに送信してみたところ
同じようにSubject全体がMIMEエンコードされていましたが、ダブったりせず
にちゃんとFMLはひとつにまとめてくれました。
ちなみにFMLのバージョンは4.0です。

ということで原因はMIMEエンコードではなく別のところにありそうです。

[ ]
RE:13622 SubjectのエンコードとメーリンNo.13624
秀まるお2 さん 03/07/03 10:39
 
 以前誰かから指摘を受けて、「=?iso-2022-jp?...」の直前は半角空白が必ず
必要という仕様になっています。V2.16からそうなっています。

 その前は、半角空白が無くてもいきなり途中から「=?...」とやってました。
それはRFC違反だそうな。

 あの当時、他のメールソフトをいろいろ調べて同じ仕様にしたはずなので、た
ぶん鶴亀に限ってエンコードがおかしいってことは無いと思います。


[ ]
RE:13619 SubjectのエンコードとメーリンNo.13634
さかの さん 03/07/06 18:11
 
さかのです。

tnobu2<xxxxxxxxxxxxxx@maruo.co.jp>さんの
hidesoft.8:13619| RE 13615 Subjectのエンコードとメーリングリストシステムが追加
<xxxxxxxxxxxxxx@maruo.co.jp>から

>業務用にFMLで運用しているメーリングリストをいくつも使っています
>が、鶴亀で問題が出たことはないです。
>
>いまちょっと確認できないですが、FMLの設定などで"[...]"の後に空白
>が入らないようにできたりするのかな。
>もしそういうことで、他のソフトでは問題無いということならば空白が
>無いと鶴亀は全部MIMEエンコードしてしまうことが原因なのかもしれま
>せん。

手元のログ、自分が入っているMLなどで確認してみました。

<FreeML>
送ったメール
Subject: Re: =?iso-2022-jp?B?GyRCRWo5RiVpJXMlLSVzJTAbKEI=?=
MLから帰ってきたメール
Subject: =?iso-2022-jp?B?W3lvdXRoOjQzMzBdIFJlOiAbJEJFajlGJWklcyUtJXMlMBsoQg==?=

帰ってきたメールには [*****:1111] がついて [*****:1111] Re: ほげほげ
というSubject: になっています。
Subject全体がエンコードされています。

ベッキー、datula、電信八号、鶴亀とありましたが、MLからきたメールはいずれも
Subject全体がエンコードされています。

<egroups>
送ったメール
Subject: Re: =?iso-2022-jp?B?GyRCNDY8VSEqGyhC?=
MLから帰ってきたメール
Subject: [aaaaaaaaaaaa-] Re: =?iso-2022-jp?B?GyRCNDY8VSEqGyhC?=

帰ってきたメールには [aaaaaaaaaaaa-] がついて [aaaaaaaaaaaa-] Re: ほげほげ
というSubject: になっています。[ ]の中はML名だけで連番はついていません。
ほげほげのところだけがエンコードされています。



鶴亀などのメーラーでMLへ返信メールを作成しようとすると
[****:11111] ほげほげ に対して
Re: [****:11111] ほげほげ というSubject:になると思うのですが。
それをそのままMLに送ると[****:11112] Re: [****:11111] ほげほげ
になります。
そこで[****:11111] を削除してRe: ほげほげ というSubject:にし、
MLに送ると[****:11112] が頭に追加されて[****:11112] Re: ほげほげ
ときれいにそろいます。

Datulaというメーラーは、設定の中に返信時にSubject:の先頭から[XXX]を
取り除くというのがあって、[****:11111] ほげほげ への返信メールは
Re: ほげほげ というSubject:にします。
(ただしRe: [****:11111] ほげほげ というふうになっていると
Re: ほげほげ にはなりません、)
ベッキーもこれとおなじようなことをしているのではないでしょうか。

対策は、返信時はRe: [****:11111] ほげほげ から[****:11111] を手動
またはマクロ等で削除する、というのがいいのではないでしょうか。
わたしはそうしています。

--
さかの

[ ]
RE:13614 新事実(SubjectのエンコードとメNo.13652
yuw さん 03/07/08 14:56
 
ちょっとした新事実を見つけましたので報告です。
実は、この件の発端となったメーリングリストは
http://ns1.php.gr.jp/mailman/listinfo/php-users
という、PHPという言語のメーリングリストなのですが、
そこから送られてきたメールを、鶴亀上で、
メールのプロパティ−ログを開く−そのまま開く
をすると、Subjectが以下のようになってました!

Subject: [PHP-users 16507]
=?iso-2022-jp?b?cGhwGyRCJEskaCRrJWEhPCVrQXc/LiRLJEQkJCRGGyhC?=

わかります?
連番+改行+空白+元のSubject
っていうふうになってるんです。
メールヘッダの書き方としては問題ない(はず)です。

これに対して鶴亀で何も考えずに返信すると、
最初のような「連番がいくつもついちゃう問題」が
出るのでは・・・・・???
#鶴亀のせいだと断定しているのではないですよ。念のため
(ちょっと込み入ってきたので理解しきれてないかも)

[ ]
RE:13652 新事実(SubjectのエンコードとメNo.13653
秀まるお2 さん 03/07/08 15:12
 
> Subject: [PHP-users 16507]
> =?iso-2022-jp?b?cGhwGyRCJEskaCRrJWEhPCVrQXc/LiRLJEQkJCRGGyhC?=

 2行目の先頭には実はタブ文字が入っているんじゃないでしょうか。だとした
ら納得します。

 このようなメールを解読すると、鶴亀メールでは、たしかに

    [PHP-users 16507]Php...

 のように、改行してる部分に空白が入りません。しかし、Becky!では

    [PHP-users 16507] Php...

 のように空白が入ります。

 鶴亀メールはどうして空白を入れないのかというと、Outlook Expressでも空
白が入らないからです。この辺もいろいろ過去にやりとりがあって、最終的に
Outlook Expressの解釈がもっとも適当だということで、そのように解釈したの
だったと思います。

 ちなみにですが、タブ文字じゃくて空白を入れれば鶴亀上でも正しく

    [PHP-users 16507] Php...

 となります。

 タブ文字についての解釈はメールソフト次第なので、メーリングリスト側で対
応できるならそちらで対応してほしい所ですけど…。

 あるいはBecky!等と同じ仕様にしても別に悪くはありません。

[ ]
RE:13653 新事実(SubjectのエンコードとメNo.13655
Kengo さん 03/07/08 16:24
 
>  あるいはBecky!等と同じ仕様にしても別に悪くはありません。

Becky! の仕様がどんなのだか知らないのですが、今から鶴亀を
「行頭の TAB を(無条件に)半角空白に置き換える」とするのも、
ちょっとどうだろう?と思ってしまいます。

そういうML対策として、
"]" + 改行 + TAB の場合は、改行を取り TAB を半角空白に置き換える
というのはどうでしょう?
これならかなり条件が限定され、他の「行頭が TAB 」のパターンへの
影響は少ないと思うのですが。

[ ]
RE:13655 新事実(SubjectのエンコードとメNo.13662
秀まるお2 さん 03/07/08 19:02
 
 現状でも、Outlook ExpressにてそこのPHPメーリングリストに参加してる人は、
本来のメーリングリスト運営者が期待したSubjectとは別のSubjectのメールを受
け取ってる訳ですよね。そもそも根本的な原因はそこにあるように思います。

 せっかくだから、そこのPHPメーリングリストが(自前のPHPスクリプトを?)
直したらいいんじゃないかと思ったりします。

 yuwさんの方でもしかしてその辺の話を運営者の人にしてみるおつもりなのか
もしれないし、鶴亀側に対処を求めておらるのかもしれないし…、せめてそれだ
け教えてもらってから対応方法を考えたいと思います。

 しいて鶴亀側で対処するなら、Kengoさん方式が無難な気はします。

[ ]
RE:13653 新事実(SubjectのエンコードとメNo.13664
yuw さん 03/07/08 22:39
 
>> Subject: [PHP-users 16507]
>> =?iso-2022-jp?b?cGhwGyRCJEskaCRrJWEhPCVrQXc/LiRLJEQkJCRGGyhC?=
>
> 2行目の先頭には実はタブ文字が入っているんじゃないでしょうか。だとした
>ら納得します。

いま確認したら、おっしゃるとおり、空白じゃなくてタブでした。
確認不足でしたね。すいません。

[ ]
RE:13662 新事実(SubjectのエンコードとメNo.13666
yuw さん 03/07/08 22:56
 
> せっかくだから、そこのPHPメーリングリストが(自前のPHPスクリプトを?)
>直したらいいんじゃないかと思ったりします。

このメーリングリストで使われているのは
オリジナルなものではなく、
mailman(内部の一部のモジュールをpipermailと呼ぶ?)
http://www.gnu.org/software/mailman/mailman.html
という、どうやら欧米ではポピュラーなソフトらしいです。
ただし、日本語化用のパッチが別途作られているらしいため、
今回の件が日本語化パッチに由来するものなのか
本家に由来するものなのかはちょっとわかりませんし、
調べる時間がありません。
ということなので、

> yuwさんの方でもしかしてその辺の話を運営者の人にしてみるおつもりなのか
>もしれないし、鶴亀側に対処を求めておらるのかもしれないし…、せめてそれだ
>け教えてもらってから対応方法を考えたいと思います。

運営者に話してもたぶん対処できない可能性が高く、
もしも話をするならmailmanの開発元のほうです
何らかの形で開発元に報告をあげるようにはします。
がしかし、前述のとおり本家/日本語パッチのどちらに由来するのか
わかりません。本家(=英語版)に起因するとすれば
まず現象と事情(勿論英語で^^;)の説明に四苦八苦し、
SubjectのMIMEエンコーディングなんぞには
無縁そうな日常言語(iso-8859-1とかUS-ASCIIとか)
でやってるひとたちに理解してもらうことにすら
苦労するやもしれません。(笑)

だからといって鶴亀が対処しろとは申せません。
これは開発者のポリシーのはんちゅうだと思うからです。

じゃ、どうしてほしいねん!?って・・・^^;)
自分はどこにどんな由来や理由があってこうなっているのかを
知るひとつの方法としてこの掲示板への書き込みをしてみた
ってのが本当のところなので、
さてどうしよう/どうすべきか、となると
「わかりません」
っていうのは無責任すぎでしょうか。^^;;;)


[ ]
RE:13666 新事実(SubjectのエンコードとメNo.13667
秀まるお2 さん 03/07/08 23:42
 
 本来の英語版ソフトには、iso-2022-jpエンコードうんぬんの処理は入ってな
いと思います。なので、問題はやはり日本語パッチの方だと思います。

 素直に改行せずに1行にSubject:ヘッダを書けばよかった物を、余計なお世話
をして改行&タブなんか入れて、しかもそれを作った人はOutlook Expressでテ
ストしなかったって話じゃないかと想像は出来ます。しかし、だからといって、
そのパッチを作った人に連絡してどうこうってことは、僕もしたくありません。

> さてどうしよう/どうすべきか、となると
> 「わかりません」

 別に僕もどうでもいいといえばどうでもいいんですけど、せっかくなので、

   ] + 改行 + タブ

 となっていた場合は半角空白を1つ入れてあげることにします。

[ ]