HTML編集アドインのエンコードについてNo.02740
kops さん 10/09/11 14:37
 
HTML編集アドイン使わせていただいております。ビジネスではHTMLメールがかなり普
及しており、秀丸ファンとしては、対応が難しかったのですが、本当に喜んでおりま
す。

さて、HTMLメールで送信する時に、Content-Transfer-Encodingが7bitではなくbase6
4になることもあるようです。

・どのような時にbase64になるのでしょうか。
・base64ではなく、常に7bitで送るような設定は可能でしょうか。

理由は、私のメールを携帯電話に転送している人も多く、携帯の一部は、base64エン
コードをうまく解析できないものがあるというためです。

お忙しいところ恐縮ですが、お教えいただければ幸いです。

[ ]
RE:02740 HTML編集アドインのエンコードにNo.02741
秀まるお さん 10/09/11 18:13
 
 ソースコードを見直した所、1行の長さが256バイトを超える行があると、自
動的にbase64エンコードで送ってしまうようです。

 256バイト程度ならまず大丈夫なんですけど、1000バイトを超えたりすると、
メールサーバーが勝手に行をカットしてしまうことがありまして、そうならない
ようにするために、base64エンコードして送っているようです。

 とりあえず、その制限長さを1000バイト程度まで拡張して、さらに、1000バイ
トを超えるケースであったとしても、HTMLメールの場合なら、適当な所に改行
コードを入れてしまってもメール内容には影響しないと思うので、そうしようか
なぁと思います。

 次のβ版でその辺いじってみます。

[ ]
RE:02741 HTML編集アドインのエンコードにNo.02742
kops さん 10/09/11 18:21
 
さっそくのご返事ありがとうございます。

自分が返事が短くても、送られてきた元メールが長いと、そのようなことも起こりそ
うですね。
base64では送りたくない場合もありますので、それを選べるオプションがあると、す
ごくうれしいです。

確かにHTMLメールであれば、改行をいれても問題ないように思いますが、例えば、10
00バイトまでの間の空白コードやタグ<>の前後などを探して改行するというのはどう
でしょうか。

[ ]
RE:02742 HTML編集アドインのエンコードにNo.02743
秀まるお さん 10/09/13 09:09
 
> 確かにHTMLメールであれば、改行をいれても問題ないように思いますが、例えば、10
> 00バイトまでの間の空白コードやタグ<>の前後などを探して改行するというのはどう
> でしょうか。

 今ちょっと試した限りだと、タグや空白コードの前後じゃない所にいきなり改
行コードを入れると、ブラウザでの表示としては、そこに半角空白が入ったよう
な表示になってしまうようです。

 なので、改行コードを入れられる位置はある程度限定されてしまうようです。

 どうしても改行コードを入れる位置が見つからない場合にはどうしたらいいの
やら?。っと思って、Outlook Expressで試してみたら、そちらではquoted-
printableにエンコードして送信していました。

 quoted-printableにエンコードして送信するというのはダメなんでしょうか?
 (携帯電話のことはよく知らないのですけども)

[ ]
RE:02743 HTML編集アドインのエンコードにNo.02744
Iranoan さん 10/09/13 11:28
 
 秀まるおさん今日は、Iranoan です。
>  なので、改行コードを入れられる位置はある程度限定されてしまうようです。
>
>  どうしても改行コードを入れる位置が見つからない場合にはどうしたらいいの
> やら?
 次の要領でコメントにしてはどうでしょう?
非常に<!--コメント内で改行
-->長い行

 Firefox Ver.3.69 と I.E Ver.8 では余分な空白は入りませんでした。

[ ]
RE:02744 HTML編集アドインのエンコードにNo.02745
秀まるお さん 10/09/13 12:10
 
 こちらで試した限りでは、FirefoxでもIE8でも、半角空白が1つ入ってしまい
ます。

ああああ〜ああああああああ<!--
-->いいいいい〜いいいい

 みたいにしたら、「あああ」と「いいい」の間に半角空白が1つ入って表示さ
れました。

 ということで、やはりquoted-printableでエンコードするしか無いと思います。
Outlook ExpressでもBecky!でもquoted-printableでエンコードしてるので、そ
れが解釈出来ない携帯電話があるとしたら、それはあきらめていただくしか無い
んじゃないかと思いますけども…。

 それか、

     「1行が非常に長くてもquoted-printableエンコードしなくする
     (誤作動しても責任持ちません)」

 みたいなオプション追加するか。

[ ]
RE:02745 HTML編集アドインのエンコードにNo.02746
Iranoan さん 10/09/13 12:46
 
 秀まるおさん今日は、Iranoan です。
>  みたいにしたら、「あああ」と「いいい」の間に半角空白が1つ入って表示さ
> れました。
 あれれ??? 私の環境では、
<html>
<head>
</head>
<body>
ああああ〜ああああああああ<!--
-->いいいいい〜いいいい
</body>
</html>
で、文字コードにも依存せず空白は入りませんでしたが、環境に依存するなら、
どちらにしても駄目ですね。

[ ]
RE:02746 HTML編集アドインのエンコードにNo.02747
秀まるお さん 10/09/13 13:26
 
 すみません。たしかに改行は入りませんでした。

 こちらでテストした時に、「-->」と「いいい」の間に改行を入れてしまって
ました。

 ということで、やはり<!--改行-->」路線もありのような気がしましたが、よ
くよく考えてみたらダメなパターンがありました。

 <.....> の中が長いとダメです。

 例えば  <a href="..........">  となっている中の....の中がものすごく長
かったりすると、そこには改行が入れられないって問題が出たりします。

[ ]
RE:02747 HTML編集アドインのエンコードにNo.02748
Iranoan さん 10/09/13 15:54
 
 秀まるおさん今日は、Iranoan です。
>  <.....> の中が長いとダメです。
>
>  例えば  <a href="..........">  となっている中の....の中がものすごく長
> かったりすると、そこには改行が入れられないって問題が出たりします。
 確かに、「<.....> の中が長い」というより、文字列で長い場合は駄目です
ね。まあ title 属性などの場合は、その属性値内に空白が有れば、そこで改
行すればよいですが。
 色々対処して最終的な方法として、quoted-printable で送るという方法も
あるでしょうが、最初から
>     「1行が非常に長くてもquoted-printableエンコードしなくする
>     (誤作動しても責任持ちません)」
にした方が、プログラム的にも簡単で、おかしなバグを入れてしまう心配もな
く良いかもしれませんね。

[ ]
RE:02748 HTML編集アドインのエンコードにNo.02749
秀まるお さん 10/09/13 16:12
 
 そもそもですが、1つ懸案事項の問題がありました。

 Outlook Express等では、HTMLメールは、標準ではtext/plain+text/htmlの、
いわゆる「multipart/alternative」の形式のメールで送信されます。

 秀丸メールでは、実はmultipart/alternativeに対応してなくて、HTMLメール
はHTML形式でのみ送信される仕組みになってます。

 これがそもそもの諸悪の根源(携帯電話でうまくいかない原因)のような気が
しないでもないですけども…。

 誰か詳しい情報知ってたらお願いします。

[ ]
RE:02749 HTML編集アドインのエンコードにNo.02750
秀まるお さん 10/09/13 18:08
 
 先ほどアップロードしたV5.50β18にて、とりあえずquoted-printableにエン
コードするようにしたので、出来たらそれで試してみて欲しいです。

 (問題になってる携帯電話で)

[ ]
RE:02750 HTML編集アドインのエンコードにNo.02751
kops さん 10/09/14 18:48
 
とてもすばやいご対応ありがとうございます。
さきほど試したところ、quoted-printableで携帯はOKでした。
すばらいしいです。

[ ]