香川大学医学部 [MakeWeb] MakeWeb の使い方

MakeWeb の使い方

CGI対応拡張版

稲毛敏宏@香川大学医学部附属病院検査部 生理機能検査室

1. はじめに
2. オリジナルの MakeWeb3.0 からの変更点
3. MakeWeb.cgi の入手
4. MakeWebの使い方
4.1. MakeWebのマニュアル
4.2. 番号リスト
5. CGI版MakeWebの使い方
5.1. インストール
5.2. 呼び出し方
5.3. 文字コード
6. 後記



1. はじめに

MakeWebは 結城 浩さん が作成された、Perlスクリプトです。テキストファイルに、簡単なルールに基づくコマンドを埋め込み、処理することで容易に、正しいHTMLファイルを作成することができます。

わたし達香川医科大学検査部の生化学検査マニュアルなどはすべてこの MakeWeb を用いて記述し、表示しています。直接HTMLを作成したり、ホームページ作成ソフトの類を用いるよりも、はるかに柔軟かつ シンプルかつ正しくWebページが記述できます。

ホームページ作成ソフトの出力のソースファイルの汚さに辟易している人にもお勧めです。

結城さんのオリジナルは、入力ファイルをHTMLまたはLaTeX形式に変換するフィルター(標準出力、つまり画面に出力する)でした。しかし、「標準出力をリダイレクトしてHTMLファイルを作り、それをFTPで転送して...」という手間さえも惜しむ怠け者の私は、これをCGIプログラムにし、サーバー上で動作させるよう、ちょっぴり改造してしまいました。

このCGI版MakeWebには以下のような特徴があります。

その結果、このような利点・欠点が生まれました。



2. オリジナルの MakeWeb3.0 からの変更点

以下の変更点についてはすべて 私こと稲毛 に責任があります。



3. MakeWeb.cgi の入手

こちら です。



4. MakeWebの使い方


4.1. MakeWebのマニュアル

原作者 結城さんの丁寧なマニュアルをまず見てください。

mwman.htm

同じく結城さんによるサンプルテキストと、その出力htmファイル例です。

sample.txt

sample.htm


4.2. 番号リスト

番号リストだけは上記マニュアルに載っていませんが、以下のように記述すると、

-<
- いちばん
- にばん
- さんばん
->

このような結果を得ます。

  1. いちばん
  2. にばん
  3. さんばん



5. CGI版MakeWebの使い方


5.1. インストール

makewebCGI.zipの内容を解凍して各WebサーバーのCGIのためのディレクトリにFTPにて転送(テキストモードで)します。その後、makeweb.cgiのパーミッションを755に変更します。この辺の要領はWebサーバーの管理者の方に尋ねてください。


5.2. 呼び出し方

入力ファイルの拡張子は .txt であると勝手に決めています。これは、FTPソフトが拡張子でASCIIかバイナリかを決定している場合が多く、拡張子が.txtならトラブルが少ないと予想されるからです。

CGIを呼び出すURLは拡張子を省略し、以下のように呼び出します。makeweb.cgiをインストールしたのと同じディレクトリに転送ししたソースファイルをindex.txtとすると、

http://www.〜〜〜.ac.jp/cgi-bin/makeweb.cgi?index

もしサブディレクトリにソースファイルがあるなら、以下のように指定します。cgi-bin/sub/index.txtがソースなら

http://www.〜〜〜.ac.jp/cgi-bin/makeweb.cgi?sub/index

さらに複雑なディレクトリ位置に存在するファイルも、相対位置指定できれば表示可能です。例えばこんな具合です。

http://www.〜〜〜.ac.jp/cgi-bin/makeweb/makeweb.cgi?../../foo/bar/index

..はひとつ上のディレクトリに階層を上がることを意味します。この辺のことはUNIX系OSやMS-DOSなどでコマンドを叩きなれている人に尋ねてください。


5.3. 文字コード

文字コードはEUC、Shift-JIS とも可能ですが、共通ファイル(common.txt)に定義しておいてください。特に同時に表示される部分に関してはどちらかに統一してください。インクルードされるファイルの文字コードが異なっていた場合、決してまともな表示は得られません。

どちらのコードでも使える環境にある方は、EUC を用いたほうがトラブルが少ないでしょう。Shift-JIS コードのうちの一部の文字がエスケープ文字と誤認される可能性がありますので。



6. 後記

MakeWebを知ったのは、結城さんが『Cマガジン』誌上にPerlの入門講座を連載なさっていたときに紹介されていたのが縁です。結城さんのホームページを見ると、「このソフトはフリーソフト」と書かれている。そこで失礼ながらお言葉に甘えて勝手に改変させていただきました。

こっそり作ったので分からないだろうと思っていたら、1ヶ月後には結城さんのページからこちらへリンクが張られていました。これにはびっくりしました^^;

このCGI版MakeWebもフリーソフトです。著作権のほとんどは結城 浩氏に属します。わたしが改変した部分の著作権はわたしに属するかもしれませんが、微々たるモノです。またこのCGI版MakeWebを営利目的をも含めていかに使用、あるいは改変しようともそれは自由です。また、それによっていかなる損害を受けようともオリジナル作者の結城氏、わたし、そしてわたしが所属する組織も一切補償しません。また、バグが無いこと、あるいは無くなるように勤める責務も負いません。

よろしくおねがいします。.


Web管理者 <tinage@med.kagawa-u.ac.jp>

香川大学医学部附属病院検査部 <http://www.kms.ac.jp/~clinilab>

香川大学医学部 <http://www.kms.ac.jp/>

このページは結城浩氏の MakeWeb3.0 を改変し、CGI対応にしたmakeweb.cgiによって表示しています。