[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: w3m-filter and w3mmee/w3m-m17n
From: TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp> さん曰く
Subject: [emacs-w3m:05526] Re: w3m-filter and w3mmee/w3m-m17n
Message-ID: <20030717234107P.1000@pine.kuee.kyoto-u.ac.jp>
Date: Thu, 17 Jul 2003 23:41:07 +0900
土> うわあ,遅かったか….返事を書いている間に [emacs-w3m:05525] されちゃっ
土> たんですね.検討が大変だ.
^^;;;
白井> tis620 にこだわっています
土> また,おもろいもんにこだわってはりますね.
へへへ。重ねたりしないとだめだから楽しいじゃん。
# ま、それで Mule 4.1 のバグ見つけたときもあるし。
ちなみに、thai な人は w3m-m17n を使って、
(add-hook 'w3m-fontify-before-hook 'w3m-thai-compose)
(defun w3m-thai-compose ()
(when (and (fboundp 'thai-compose-buffer)
w3m-current-coding-system
(memq w3m-current-coding-system '(tis620 tis-620 thai-tis620 th-tis620)))
(thai-compose-buffer)))
なことをやっておくとほぼ完璧だと思います。
白井> (1) w3m-safe-decode-buffer() が w3m-create-page() 内部と、そこか
白井> ら呼ばれる w3m-create-text-page() とで 2回実行されているのだけど、
白井> なにか意味はありますか? w3m-create-page() の方だけでよいですか?
とりあえず、(先走って)こいつを消したのはもとに戻しておきました。
土> いいえ,2つはまったく異なる抽象化層です.w3m-filter() は,URI に基づい
土> て決まるようなコンテンツ書き換えルールをサポートする層であり,それに対
土> して,w3m-prepare-content() は content type によって決まるようなコンテ
土> ンツ書き換えルールをサポートする層です.
ごめんなさい。過去に書かれていましたね。
土> a) text/*
土> 視覚障害者向けの書き換えなど
土> b) Excel / Word / PowerPoint ファイル
土> -> xlhtml, wvHtml, ppthtml など
土> c) PostScript / PDF ファイル
土> -> ps2text, pdf2text など?
土> d) tar/lzh などの書庫ファイル
土> -> 変換するか,tar-mode などを起動するか.
土> e) 画像
土> Emacs20/Mule の場合 = convert による bitmap 形式への変換
土> Emacs21/XEmacs の場合 = convert による表示可能形式への変換
土> 画像の大きさの調節
# a) 以外は Mew の multi-part でやっていますね。
# c, d, e はぼくのオリジナルの部分もあるけど。
だけど、Mail の方が html より行儀がいいでしょうからその辺が大変
そう。
土> これらの書き換えは,URI に基づいて決まるわけではありませんから,URI に
土> 基づいて駆動されている w3m-filter() とはあまり相性が良くないのです.も
土> ちろん,広告削除などの目的には w3m-filter() の枠組みは以前と変わらず有
土> 効ですから,そのまま残すつもりです.
了解。ということは、やっぱり w3m-prepare-content() の前に
charset を確定しないと、なにかしら不都合がある可能性もあるわけで
すね。
w3m-region() は相手が html と決まっているので、最初にバッファを
舐めて META Tag を見つけるようにしてしまいましたが、どうしよう。
# いやぁ、今日はちょっとだけ余裕があったから、前後を考えずに走っ
# てしまった。5月 6月 7月のメールは内容を 100% 理解するほど読ん
# でいないのでした。
--
白井秀行 (mailto:shirai@rdmg.mgcs.mei.co.jp)