[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: w3m-expand-url



>>>>> In [emacs-w3m : No.01659] 白井秀行さん wrote:

山岡> びしばし叩いて下さいまし。^^;;
白井さん> ## もうひとつ良いですか ^^;;;

白井さん> (aref url 0) を無条件で実行しているため、(w3m-expand-url "")
白井さん> や (w3m-expand-url "" "http://hoge/") がエラーになります。

うう、すみません。Eric Marsden さんが寄せてくれた記事の例
<URL:http://freshmeat.net/> でものっけからエラーになりました。
想像力と火事場の馬鹿力だけで書いてはいけないコードなのですね。

By the way, does anyone deal with a problem that Eric Marsden
<emarsden@laas.fr> pointed out?

>>>>> In [emacs-w3m : No.01661]
>>>>>	TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp> wrote:

土屋さん> 仕方がないので、真面目に BNF を調べて、完全に再実装しました。
土屋さん> 一応、私の手元では一通りのテストを行いましたが、ちょっと不安
土屋さん> なので、まだ commitしていません。少し叩いてみていただけない
土屋さん> でしょうか。

(w3m-expand-url "") は ok ですが、<URL:http://slashdot.org/> の
冒頭にある "Welcome to Slashdot" の anchor がだめです。^^;;
とりあえず白井さんから指摘された問題の emergency fix だけやって
おきましたが、土屋さんに後を引き継いでいただけるとありがたいです。

>>>>> In [emacs-w3m : No.01662]
>>>>>	OKAZAKI Tetsurou <okazaki@be.to> wrote:

土屋さん> RFC1808 の BNF 定義を参照すると、http:file.html という書式が
土屋さん> 可能なのか、不可能なのか、よく分からなくなってしまいました。

岡崎さん> それに関して、RFC 2396 "Uniform Resource Identifiers (URI):
岡崎さん> Generic Syntax"の 5.2. Resolving Relative References to
岡崎さん> Absolute Form に次の様な説明があるのを見付けました。

岡崎さん> 3) If the scheme component is defined, indicating that the reference
岡崎さん>    starts with a scheme name, then the reference is interpreted as an
岡崎さん>    absolute URI and we are done.  Otherwise, the reference URI's
岡崎さん>    scheme is inherited from the base URI's scheme component.

岡崎さん>    Due to a loophole in prior specifications [RFC1630], some parsers
岡崎さん>    allow the scheme name to be present in a relative URI if it is the
岡崎さん>    same as the base URI scheme.  Unfortunately, this can conflict
岡崎さん>    with the correct parsing of non-hierarchical URI.  For backwards
岡崎さん>    compatibility, an implementation may work around such references
岡崎さん>    by removing the scheme if it matches that of the base URI and the
岡崎さん>    scheme is known to always use the <hier_part> syntax.  The parser
岡崎さん>    can then continue with the steps below for the remainder of the
岡崎さん>    reference components.  Validating parsers should mark such a
岡崎さん>    misformed relative reference as an error.

ええと、互換のために http:file.html は relative として扱う必要が
ある、ってことですね。(?)
-- 
Katsumi Yamaoka <yamaoka@namazu.org>