青田です。 現在 w3m-expand-path-name() は、 expand-file-name() に仕事をまかせていま すが、 (w3m-expand-url "/foo/http://example.com/bar" "http://example.com/bar") => "http://example.com/foo/http:/example.com/bar" というふうに "//" が "/" にされてしまい、このような URL を使っているサイ ト [1] が見れなくなっています。 [1] 例えばはてなブックマーク(htpp://b.hatena.ne.jp/) の「*** users」のリ ンクなど。 "//" が出現することは RFC にも違反してないようですし、他の手段もあまり無 さそうなので RFC3986 の 5.2.4 節に基づいてパスを展開するように w3m-expand-path-name() を書きかえてみました。 とりあえず、RFC のサンプル URL は全て正しく展開できています。 "." が出て くる一つ前の "/" までは一気に出力してしまえばもう少し速くなるかもしれませ んけど、気にするほどでもないですかね。 特に問題がなければ置き換えてしま いたいと思うのですがいかがでしょう。
Attachment:
w3m-e-p-name.el
Description: application/emacs-lisp
-- 青田