Re: フレーム非対応のブラウザについて
新城@筑波大学情報です。こんにちは。
In article <20040315153041.5308322.-467884308@uranus.interq.or.jp>
笠原 励(氷炎 雷光風) <cuncuku@uranus.interq.or.jp> writes:
> フレームを使わずに、同一htmlファイル内に
> htmlとCGIによる表示を混在させられるような方法があれば、
> それも使ってみたいとは思います。
単純にやるなら、(固定メニューの) HTML ファイルをopen して、
read して print するという手はあります。最初の <html> や最後
の </html> を削らないといけないかもしれないけれど。最初から
それがないファイルを用意できれば、その方がいいのでしょう。
------------------------------------------------------------
menu = readfile("menu-body.html")
html = <<-EOF
<html>
<head>...</head>
<body>
<div id="menu">
#{menu}
</div>
</body>
</html>
EOF
print htm
------------------------------------------------------------
一時期、eRuby とか使ったんだけど、結局、要らないことが多いみ
たい。
あと、HTML の方も、直接書くのではなくて、何かマクロプロセッ
サを使う方法があります。私は、m4 というマクロプロセッサを使っ
ています。それには、include というのがあるので、こんな感じで
書けます。
------------------------------------------------------------
<html>
<head>...</head>
<body>
<div id="menu">
include(`menu-body.html')
</div>
</body>
</html>
------------------------------------------------------------
m4 マクロ自体は、C の #define や #include がわかれば、大した
ことはありません。漢字コードを EUC にしておけば、漢字も問題
ないようです。URL なんか、
Ref(http://www.example.com/,こちら)
こんな感じに書けるので、だいぶ楽です。これを使うにはマクロ定
義で次のようなものをしておきます。
define(`Ref',`<A HREF="$1">shift($@)</A>')
m4 でなくて cat でもいいんですけど。Makefile にこんな風に書
いておきます。(cat でなくて、perl でも ruby でもいいんですが。)
index.html: head.html menu-body.html tail.html
cat head.html menu-body.html tail.html > index.html
> フレームを使わずに、同一htmlファイル内に
> htmlとCGIによる表示を混在させられるような方法があれば、
> それも使ってみたいとは思います。
フレームだと、CGIの画面では、その画面しかいじれなくて困る
ことがあります。つまり、CGIの画面で、固定のメニューも含め
て全部いじりたいことがあります。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735