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

<BASE> tag must be inserted in generated articles by shimbun (was: "Xref: URL" in Message.)



かなり以前の話ですが.

今後,shimbun バックエンドが text/html な記事を生成する場合は,生成元
になった記事の URL を <base href="〜"> タグによって明示することを推奨
します.

この変更の背景について説明します.ある text/html な記事中に画像や他ペー
ジへの相対リンクが含まれている場合,元々の記事の URL が分からなければ,
これらの相対リンクの曖昧性を解消できません.現在は,Xref: へッダを元記
事の URL を表すへッダとして流用することにより解決していますが,この処
理は,

>> On Sat, 09 Feb 2002 14:09:29 +0900
>> 「土」== tsuchiya@pine.kuee.kyoto-u.ac.jp (TSUCHIYA Masatoshi) said as follows:

土> Xref を参照する現実装は,mime-w3m.el / mew-shimbun.el 内部での特殊
土> な処理に依存しているので,他の MUA で shimbun ライブラリが作成した
土> 記事を読もうとするとリンクが辿れない問題が発生すると思います.例え
土> ば,本家 Gnus と nnshimbun.el の組合わせを使う場合が該当するでしょ
土> う.

これに対して,<base href="〜"> タグを用いた解決は,HTML 本来の表現力に
基づいた実装であり,より頑健であることが期待されます.

実際に必要なコードは,既に

    2002-05-29  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>

	* shimbun/shimbun.el (shimbun-make-html-contents): Insert HTML,
	HEAD, BASE, and BODY tag.

という変更で導入済みです.この変更によって,shimbun-make-contents() を
自前で準備していないバックエンドについては <base href="〜"> タグが挿入
されるようになっているはずです.

ですから,今後は shimbun-make-contents() を自前で再定義しているバック
エンドについての作業が必要になります.該当するバックエンドは,ざっと 
grep で確認してみたところ,

        sb-f1fan.el
    [*] sb-fml.el
        sb-ibm-dev.el
        sb-impress.el
    [*] sb-kantei.el
        sb-mailarc.el
    [*] sb-mailman.el
        sb-mhonarc.el
        sb-muchy.el
        sb-pcweb-column.el
        sb-ruby.el
    [*] sb-text.el
        sb-vinelinux.el

の13個だと思われます.この内,マークをつけた4つについてはとりあえずの
対処を組み込んでおきました.他のバックエンドについて,作者の皆さんのご
協力をお願いしたいと思います.

また,様々な shimbun-make-contents() メソッドを見比べてみたところ,大
抵のメソッドの最後の処理はほとんど定型化していることが分かりましたので,
その定型処理を担当する関数 shimbun-header-insert-and-buffer-string() 
を新設しておきましたので,どうぞご利用下さい.

-- 
土屋 雅稔  ( TSUCHIYA Masatoshi )