[mew-dist 25513] Re: [mew-win32 04129] Re: Firefox -> mozex -> mailto -> Mew
unisus at example.com
unisus at example.com
2004年 10月 21日 (木) 00:16:08 JST
From: Hideyuki SHIRAI (白井秀行) <shirai at example.com>
Date: Wed, 20 Oct 2004 16:55:05 +0900 (JST)
Message-Id: <20041020.165505.103013251.shirai.hideyuki at example.com>
/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> unzip して zip するっていうことに気付くまで、このパッチをどうやっ
> て mozilla に反映するのか悩みましたけど :-)
すみません。
眠かったのではしょってしまいました。(^^;
> > ただ1つ、<a href="mailto:foge1 at example.com%2C%20foge2 at example.com">は
> > うまく行きませんでしたが…。
>
> ふーむ、'%2c' が二重に符号化されて '%252c' ってなっちゃうのです
> ね。以下、まったくの素人なのでめちゃくちゃかもしれないのですが、
>
> > Index: mozex.js
> > ===================================================================
> > --- mozex.js (revision 11)
> > +++ mozex.js (working copy)
> > @@ -426,6 +426,8 @@
> > }
> > }
> >
> > + var href_decode = decodeURI(href);
>
> この行を
>
> var href_decode = decodeURIComponent(href);
>
> とすると大丈夫みたいです。どなたかくわしい方の検証をお願いします。(_ _)
# 全然詳しくないのですが…
確かに decodeURI だと %2C がデコードされませんね。
<html>
<head>
<title>Sample1</title>
</head>
<body>
<script language="JavaScript"><!--
str = "mailto:foge1 at example.com%2C%20foge2 at example.com";
document.write("decodeURI = " + decodeURI(str));
document.write("<br>");
document.write("decodeURIComponent = " + decodeURIComponent(str));
// --></script>
</body>
</html>
でも、この動きは encodeURI の動きと対応しているようです。
以下のような JavaScript を実行してみると、',' は %2C にエンコード
されません。
"mailto:foge1 at example.com, foge2 at example.com" をエンコードした結果は
"mailto:foge1 at example.com%2C%20foge2 at example.com" で間違いないので
しょうか?
# 間違いないとすると、Firefox のバグ?
<html>
<head>
<title>Sample2</title>
</head>
<body>
<script language="JavaScript"><!--
str = "mailto:foge1 at example.com, foge2 at example.com?Subject=実験&Cc=foge3 at example.com, foge4 at example.com";
document.write("encodeURI = " + encodeURI(str));
document.write("<br>");
document.write("encodeURIComponent = " + encodeURIComponent(str));
// --></script>
</body>
</html>
上記 encodeURI でのエンコードに従って、
<a href="mailto:foge1 at example.com,%20foge2 at example.com">だと
decodeURI->encodeURI して (mew-url-mailto "%R") でうまく行くのですが…。
----
馬越
Mew-dist メーリングリストの案内