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

Re: w3m-base-url



中川@檻の中です。[emacs-w3m:01391] w3m-base-url の元凶です。

  引用の順番を一部変更しています。

From: Takaishi Hayato <rio-t@presen.to>
Subject: [emacs-w3m:01564] w3m-base-url
Date: Wed, 26 Sep 2001 03:18:38 +0900 (JST)
Message-ID: <20010926.031838.90380691.rio-t@presen.to>

高石> 少し前からemacs-w3mの安定版を利用していたのですが、POSTが使
高石> いたかったので、CVSから最新版を得て使ってみました。
高石> # とても快適です :-)

高石> で、気がついたのですが、base-urlの扱いがおかしいようです。
高石> # というか、そもそもHTML中のBASE指定は考慮されていない?
高石> MLの過去記事を見た感じでは、[emacs-w3m:01391]での変更の副作
高石> 用でしょうか。

  HTML 中の BASE 指定を解釈するのは w3m.el ではなく、w3m(.exe) 側のよ
うです。[emacs-w3m:01391] の繰り返しになりますが、指定がある時だけ
w3m(.exe) から W3m-base-url: ヘッダが出力されます。

高石> HTML中に<BASE href="...">の指定があった場合に、current-urlが
高石> そのアドレスに置き換わってしまいます。

  01391 でそのように変更しました。

高石> このため、<BASE href="...">が書いてあるとリロードができなく
高石> なります(そのページではなくbase-urlを読んでしまうため)。
高石> 同じ理由からソースやヘッダの表示もできません。
高石> historyにもbase-urlの方が残るようで、一旦別のページに移動す
高石> ると、戻ることもできません。

  HTML を全くわかっておらず、適当に直したので、01391 は撤回して下さっ
て結構です。"base href w3c" で Google 日本語ページの検索を掛けて見つけ
た HTML3.2 の紹介のヘッド要素の base 要素の項だけ見た限りでは、、高石
さんのおっしゃるとおり相対パスの移動の時だけ base-url を参照するという
のが正しい動作のようです。

高石> EmacsLispがよくわかっていないので、具体的にどこをどう直せば
高石> いいとか言えないのですが、base-urlの指定があった場合には、
高石> current-urlを置き換えるのではなく、そのページから相対パスで
高石> 移動しようとした時だけ、base-urlを起点にurlを決定する必要が
高石> あるかと思います。

  (w3m-)w3m-attributes が Real URL (= base url) しか返さない(持たない)
ので、変更はかなり大規模になると思います。current url と base url を分
けて、キャッシュ(多分 ソース、ヘッダ表示はここから取ってるはず)、ヒ
ストリには前者を、相対参照には後者を…

  言い出しっぺの法則はできれば適用除外にしてください。申し訳ありません。

高石> # emacs-w3m-ctl@namazu.org にsubscribeのメールを送ったのです
高石> # が、You are not a member of this mailing list なんて言われ
高石> # ちゃいました。

  高石さん個人あての Cc: は残しておきました。二通行ったらごめんなさい。

ではでは。

--
  中川貴之  (株)日立製作所 エンタープライズサーバ事業部 NA2G