Error Log

最近電車ばっかり…

Subscribe to RSS feed

Posts tagged with "M2"

M2 と RFC2231 と他

, , ,

# 最近、仕事が暇になったせいか、
# 今までそんなに気にしていなかったことで悩むようになりました。
# というわけで、愚痴話です。

日本語の添付ファイル名の話です。
(細かくは、Content-Disposition フィールドの filename パラメータにマルチバイト文字を使う話)

RFC2231 にのみ、正しいとされる添付ファイル名の扱い方が書いてあり、
Opera M2 はこれに従ったエンコードでメールを送るのですが、その反響が・・・
  • Becky な同僚: 確かに受け取りました
  • Outlook な別事業部の人: 添付ファイルが読めなかったので再送してください
  • EdMax な同僚: 添付ファイルが文字化けしてましたよ
  • AL-Mail な上司: Untitled って何だよ

オイオイオイオイオイオイオイ。

Outlook、AL-Mail は RFC2231 に未対応なんですね。
EdMax は RFC2231 自体は対応しているみたいですが、utf-8 には対応していないみたいです。
Becky は言うまでもなし。
Thunderbird や Shuriken はまだ試していないのですが、ネット上の情報だと対応しているみたいです。
Web メールはどうなんでしょう?
# こういうのは、Outlook Express をリファレンス実装とみなしているような気がしてなりません。

この未対応なやつらは、添付ファイル名にも MIME エンコード/デコードで処理しているのですが、
これは RFC2047 ではっきりと駄目と書かれています。
RFC2231 以外には添付ファイル名に日本語を扱う方法の標準はありません。
が、日本では MIME エンコードという超ローカルルールが蔓延してしまっています。

RFC2231 が新しいせいかと思ったのですが、これ、1997 年の勧告です。
# そりゃ RFC821/822 に比べれば新しいですが、こちらは RFC2821/2822 に置き換わっています。

反故にされ過ぎ、というより MUA 作成者この存在を知らないのでしょうか?
もしくは「RFC はただの勧告なんだから準拠する必要ないんだよ」という心積もりなんでしょうか?

「添付ファイル名が文字化けしている。Opera のバグだ!!」と言われるのが不憫でなりません。
これを書いたきっかけもそうです。

デファクトメーラ(?)提供元の姿勢は↓こんな感じです。
Outlook Express で、メールの自動改行が無効になるという現象があるのですが、
Microsoft の言い訳 に衝撃的なことが書かれています。

Outlook Express が、インターネット技術標準化委員会 (IETF) によって定められた
標準規格 RFC2646 に対応したため・・・


RFC を「標準」と認めてますね。
しかも、RFC2231 より後のにでた勧告に対応してますね。で、RFC2231 は・・・?
これ書きながら、Ctrl+T → "g rfc2231 site:microsoft.com" → Enter とタイプしたら、
こんな素敵な内容を見つけました。

Content-Disposition ヘッダのパラメータの文字コードのエンコード方式に関しては、
RFC2231 に基づくべきですが、Internet Explorer はこのエンコード方式をサポートしていません。


自分の否を認めてますね。ちょっと安心しました。
でも、対応するかどうかの言及はここには載ってませんでした。
ぜひ、対応してもらいですね。互換性無視でいいので。
それ以前に、「自分たちのソフトウェアのせいで、日本人は RFC 違反のメールを全世界に向かって発信している」
という事実に気づいて欲しいです。

・・・ところで、同じ苦悩を雷鳥 1.5 の人たちも持っているみたいです。
これを知ってだいぶ安心しました。
RFC2231 の認識が今よりは広がるでしょう。。。
Opera M2 ユーザは少ないですけど、Mozilla Thunderbird のユーザは多いですから。

最後に、こんな愚痴じみた文章を最後まで読んでいただいてありがとうございました。

mime.css for Opera 9 TP2

,


mime.css

opera:config といい、opera:about といい、エラー画面といい、
Opera 9 Technology Preview 2 の画面デザインが opera.com と同じようになったのを見て、
「M2 のメールビューワもこのデザインにしたい!」と思って、作ってみました。

# TP2 でビューワの外(?)にヘッダ情報を出そうとしているのに・・・。
# Subject 以外のフィールドは非表示にしたほうがいいかもしれませんが・・・。

メールヘッダ、本文をわざわざ xml に変換して、
CSS でメールビューワ上にレンダリングさせるという、
新鮮かつ強烈な機能を実装してくれていることに本当に感謝してます。

・・・ところで、Opera ロゴ部分のスタイルを記述している際に発覚したのですが、
url(images/opera.png) と記述すると、C:\images\opera.png を探しに行ってました。。。
そのため、この mime.css では url( ... ) は全て絶対パスで書いています。
・・・もし、使おうという奇特な方がいたら、パスに注意してください。

(2005-02-15 追記)
会社で使ってて少し不満があったので修正しました。
  • Subject 部分を垂直中央揃えにしたかったので、display: table-row(以前は block) かつ position: absolute に変更。
  • ヘッダ部分の水平配置がメール毎に異なってたのが気に入らなかったので、フィールド名の横幅を 10ex に固定。

ShellExecute で開く

,

会社でのメール、Windows ファイルサーバ上に保存されているファイルのパスが書かれていることが多いです。
Opera M2 の場合、Go to URL があるのですが、このコマンドだとローカルにダウンロードしてから開くので、あまりよろしくないです。

・・・というわけで、「選択テキストを ShellExecute() を行うだけの外部コマンドに渡す」の発想で、「ShellExecute で開く」コマンドを作りました。
menu.ini の方は、「IEで開く」と同じ方法が利用できます。
選択テキスト上の右クリックでコマンドを実行したいので、[Hotclick Popup Menu] に1行足しました。
Item, "Send text to ShellExecute"=Execute Program, "C:\Home\tak-325\Commands\ShellExecute.wsf", "%T"


ShellExecute() を行うだけの外部コマンドは、Vector などで探すといくつか出てきます。
ただ、それらは引数をそのまま ShellExecute() に渡すだけなので、

・ パスが改行されている場合にファイルを見つけられない。
→ 取っ払ってほしい
・ ちょっとした不注意で前後の余剰スペースが含まれた場合にもファイルを見つけられない。
→ 取っ払ってほしい
・ 送信者が typo する場合にもファイルを見つけられない。
→ typo 直前のディレクトリを開いてほしい

と、不満+要望が積もってしまったので、結局 WshShell.Run で ShellExecute を代用する WSH スクリプト を書きました。

今のところ、うまい具合に動いています。

Opera 9

,

# 多忙+筆不精で、1ヶ月近く放置してしまった・・・。

Opera 8 の HTML/CSS レンダリング性能でかなりご満悦だったので、Opera 9 の Technical Preview が発表されたときは、これ以上どんな機能がつくのか?!と思ってましたが、M2 の store ディレクトリを1か月単位の mbox から maildir(もどき?)に変えてたんですね。

mbox は非常に嫌な思い出があります。

会社(顧客常駐先)のウィルス対策ソフトが POP3 通信をチェックする機能がないのです。
そういうわけで、ウィルスメールを受信すると、M2 が store に mbox を書き出した瞬間に「検疫~♪」って1か月分を失うわけです。

M2 は何気にしっかり者で、検疫された瞬間にダイアログがあがって、「ファイルを復旧してからダイアログを閉じてくれ」って言うんですね。
でも、そこで mbox を検疫から戻しても、次のメールが届いた際にまた「検疫~♪」されてしまいます・・・

そのときは、
1. ウィルス対策ソフトの自動チェック機能を一旦 Off にする。
2. M2 上からウィルスメールを除去。
3. エディタで mbox を直接編集してウィルスメールが本当に消えていることを確認。
4. 自動チェック機能を On に戻す。
という対処をしました。面倒すぎです。

というわけで、1メール1ファイルの maildir 形式の採用は非常にうれしい限りです。
検疫されてもそのまま放置で済むわけだし。

結局、(30分ほど悩んで) 会社の PC は Opera 9 にしました。
でも、レンダリングがおかしいところが散見しますね。
TrackPoint の横スクロールができなくなっているし。
おかげで、Fit to window width が重宝しています。
February 2012
M T W T F S S
January 2012March 2012
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29