Sec1: top Guidemaker ガイド
Guidemakerは C プログラミングガイド や UNIX ガイド のようなドキュメントを簡単に作るために作成したものです。
中身は私にとっての生涯三本目程度の Perl で記述されたプログラムからできていますので、品質はかなりひどいものだと思いますがこの際公開してしまいます。
マニュアルを書くべきなのでしょうが、手間が掛かるのでサンプル文書としてこの文書を作っておきます。それぞれの機能が、どのように書けばうまく使われるのか、試すことができるでしょう。(原稿そのものも<
$ tar xzf guidemaker.tgz
$ cd guidemaker
とするだけです。サンプルの原稿ファイル(body.txt)がついていますので、<
基本的な構造とそのための操作
./mkdocs_i.pl body.txt > index.dat cat mkdocs_chead.dat > _contents.html ./mkdocs_c.pl index.dat >> _contents.html cat mkdocs_ctail.dat >> _contents.html ./mkdocs_b.pl index.dat body.txt cp -rp RESOURCES/* HTML mv _*.html HTML exit# ------------------------------------------------------------------- Sec1: structure 全体の構造 Sec2: _simple_sample 最も簡単なサンプル 最も簡単な body.txt (原稿)のフォーマットは以下のようなものでしょう。
# 最も簡単なサンプル Sec1: top 最も簡単なサンプル 本文はこれだけ一行目の # ではじまる行はコメントとみなされます。 Sec1: のように Sec に続いて数字、そのあとに : がつく行は章レベルを示します。その後ろに HTML ファイル名となるキーワード、章タイトルがつきます。 一番最初の章のキーワードとして top という名前を選んでいますが、結果的にこれが画面右半分に自動的に最初に開かれるページの HTML ファイル名 _top.html になります。一番最初の章の HTML ファイル名はもともとの index.html ファイルにハードコード(固定的に記述)されていますので、つまりここの top という名前は変えない方が良いでしょう。(変えるときは index.html とセットでどうぞ。) Sec2: _headers ヘッダについて HTML ファイルは上に書いてあった原稿の内容だけでなく、body.txt や <
mkdocs_chead.dat | 画面左側の目次欄(_cotents.html)の前半 |
mkdocs_ctail.dat | その後半 |
mkdocs_bhead.dat | 画面右側の本文欄(_cotents.html)の前半 |
mkdocs_btail.dat | その後半 |
# 章立てのあるサンプル Sec1: top 第一章 まえがきなどいろいろ Sec2: sec1_1 第二レベルの章 いろいろ前置きなど Sec3: sec1_1_1 第三レベルの章 本文いろいろ うんぬんかんぬん Sec1: second 第二章 第二章概要説明など Sec2: _sec_sec 第二章 第二節 という感じ 本文いろいろ Sec3: _ さらに細かく 本文追加本文中に Sec1: などで指定する、章立てのレベルは 3 つまで現在用意されています。二番目のパラメタにキーワードを書くと、そのキーワードに応じた HTML ファイルが別に用意され、つまりはこれが HTML でのページの区切りになります。逆に上の章節と同じページに続けて書きたい、と思った場合はキーワードを _ (アンダーライン)で始めれば良いです。_ だけなら画面左側の見出しからリンクが作られず、_ に続けて何か英単語があれば、リンクが設けられます。 # ------------------------------------------------------------------- Sec1: body 本文の記述 以下に本文を記述するための文法や例文についてまとめておきます。 Sec2: _linebreak 行区切りについて body.txt 原稿ファイル中では、原稿の一行が HTML 上での一行(具体的には <br>)になります。つまり行を折り返したいところで原稿も改行して下さい。 ただし改行の後すぐに一行以上の空行があれば、そこは一パラグラフとみなして処理をします(具体的には <p></p>になる)。 こうすることで比較的原稿ファイルの記述と、結果の HTML ファイルの見た目が揃うと思ったので、こうした仕様にしています。 Sec2: prefix <pre> の記述 <pre> </pre> に囲まれた記述は以下のように書きます。
<pre> main() { printf("Hello World\m"); } </pre>Sec2: image 画像の表示 画像の埋め込みは以下のように記述します。
<p> <div align="CENTER"> <img src="image.png" alt="サンプル画像"><br> サンプル画像の埋め込み表示結果 </div> </p>これで結果は以下のようになります。
<table border="1"> <tr><th>サンプル</th><th>データ</th></tr> <tr><td>Sample1</td><td>data1</td></tr> <tr><td>Sample2</td><td>data2</td></tr> </table>これで結果は以下のようになります。
サンプル | データ |
---|---|
Sample1 | data1 |
Sample2 | data2 |
....で囲んだ記述は脚注[[footnoteと呼びます。]]として....Sec2: refer 参照 本文中に << >> で囲むことで、他の章節へのリンクを設けることができます。たとえば「<
....たとえば「<<image:画像の表示>>」節に対して....この例では、対象となる節のキーワードが image だったため、上のように参照時の記述でそれを指定しています。つまりこの節は「Sec2: image 画像の表示」というようなセクションタイトルの付け方をしていたのです。 なお、重要なのは << >> で囲まれた前半( : より前)のキーワード指定であって、その後ろの文字列はなんでも結構です。上の例なら以下のように書くことで「<
....書くことで「<<image:別紙参照>>」といった...Sec3: _link 別の Web ページへのリンク 普通に HTML を埋め込むことができますので、以下のようにすると良いでしょう。
<a target="new" href="http://www.kyoto-su.ac.jp/">京都産業大学トップページ</a>注意するべきは target="new" で、これがないと左右分割された画面の右半分にページが開いてしまいます。以下に両方用意しておきますので動作の違いを確認すると良いでしょう。