サンプルのlrdファイルを用意しました。
=begin と =end で囲まれた部分が、画面に表示される内容になります。
これを忘れると画面に何も出力されませんので注意して下さい。
= title
行頭を = で始めると、見出しを付けることが出来ます。= の数(1~4)によって、見出しの大きさが変わります。
1が一番大きく、4が一番小さくなります。
htmlに出力する際には、それぞれ <H1> ~ <H4> タグとして出力されます。
出力フォーマットをカスタマイズしたい場合は、
スタイルシートでこれらのタグ出力形式をカスタマイズして下さい。
((:: define-word:)) define-description
行頭を : で始めると、定義リストを作成できます。
定義リストは、定義語と定義説明が一組になります。
定義説明は、: で開始した行以降に「インデントを下げて」記述します。
定義リストはネストさせることが出来ます。
定義語は <dt>、定義説明は <dd> タグとして出力されます。
((:* list-string:))
行頭を * で始めると、リストを作成できます。
リストはネストさせることが出来ます。
<li> タグとして出力されます。
((:((<target-title>)):))
見出し/定義リスト/リストには、リンクを付けることが出来ます。
文中で ((< リンク文字列 })) と記述すると、リンクが作成されます。
リンク文字列 の記述法はいくつかあります。
最も簡単なのがこれです。
同一ファイルもしくは同一ディレクトリ内のlrdファイルで定義された
見出し/定義/リスト語を書けば、そのターゲットへのリンクが作成されます。
リンクの表示文字列を見出し語と異なるものにしたい場合は、
見出し語の前に | で区切って表示文字列を記述します。
外部ファイルへのリンクを作成する場合は、URL: の後にリンク先URLを記述します。
表示文字列を変えたい場合は、表示文字列|URL:外部リンク のように記述します。
リンクではありませんが、イメージを表示する場合にもこの構文を使います。IMG: の後にイメージのURLを記述します。
リンク先の最終更新日付を表示することが出来ます。
外部リンクURLの後に ,U を付けます。
もちろん、この外部リンクは同一サーバ内にある必要があります。
よって、相対パスで記述します。
lrdファイルから生成されたhtmlファイルをターゲットに指定した場合、
表示される日付はhtmlファイルではなく「lrdファイルの最終更新日付」になります。
htmlファイルは、プロジェクトをリビルドしたときなどに上書き更新されてしまうので
lrdファイルの日付を表示した方が都合が良いのです。
((:(({variable})):))
変数やコードなど、特定の文字を書体を変えて表示することが出来ます。
文中で (({ 変数 </code>:)) と記述します。
<code> タグとして出力されます。
((:((*strong-word*)):))
強調したい文章は、((* 強調文 </code>:)) と記述します。
<strong> タグとして出力されます。
((:((:all-html-string:)):))
Lrdの文法を全て無視した任意の文字列を表示することが出来ます。((: 任意文字列 })) と記述します。
=begin と =end で囲まれていない部分には、ファイル全体のオプションを指定することが出来ます。
オプション名=オプション値
という記述法になります。
以下、オプションの説明です。
title=ページタイトル
ページのタイトルです。
head節のtitleタグとして出力されます。
style=style.css
スタイルシートファイル名です。
絶対パス・相対パスのどちらでも構いません。
画面をカスタマイズしたい場合は、このオプションを記述することで独自のスタイルシートを使うことが出来ます。
depend=index.lrd
依存ファイル名です。
このファイルが更新されたとき、一緒に更新・コピーされるべきファイルを指定します。
依存ファイルは複数指定できます。
なお、スタイルシートファイルは自動的に依存ファイルに追加されます。
一般的な使い方として、目次ページから特定のページ(以下ページA)に飛ぶような構成の場合
ページAの依存ファイルとして目次ページを指定すると
ページAを更新したときに目次ページの最終更新日付を自動で更新することが出来ます。
history=../history.html
ヒストリファイル名です。
lrdファイルを更新したとき、ヒストリファイルにその更新情報を追加することが出来ます。
相対パスで記述する必要があります。
ヒストリファイルにlrdファイルを指定することは出来ません。
ヒストリに追加する文字列フォーマットを指定します。
フォーマット中に以下のキーワードを記述すると、その部分は動的に置き換わります。
更新したファイルへのhrefに置き換わります。
更新したファイルの日付に置き換わります。
更新したファイルのタイトルに置き換わります。
デフォルトは、
<a href="${href}" class="history" target="_top">
<span class="history_date">${date}</span> ${title}
</a><br>
です(実際には1行)。
print-time=false
htmlファイルの最後に、最終更新日付を表示するかどうかを指定します。true / false のいずれかにします。
デフォルトでは true です。
出力するHEAD節に任意の文字列を挿入することが出来ます。
=begin head 任意の文字列 =end
=begin head と =end で囲まれた部分が、HEAD節に挿入されます。
このブロックは、=begin と =end で 囲まれていない部分 に配置する必要があります。
同様に、BODY節をカスタマイズするには
=begin head <body 任意の文字列> =end
のようにします。
HEAD節と異なり、BODY節は 上書き されるので
上のように <body ~ > 形式で記述する必要があります。
Eclipse3ではプロジェクトやディレクトリ、ファイル単位で
文字エンコーディングを指定できます。
htmlファイルの文字エンコーディングは、元となるlrdファイルの文字エンコーディングに
自動的に合わせて作成されます。
lrd という名前は、rubyのドキュメントフォーマットである rd から取りました。
なので、書式は rd と似ていますが
「相当に簡略化されている」点に注意して下さい。
また、一部拡張してある部分もあります。
基本的に、rdファイルとは別物と考えてもらった方が良いです。
パーサ(解析ロジック)はかなり稚拙な作りになっているので、
間違った構文で書いてしまうとコンパイル時にエラーが出る可能性も高いです。
そこら辺は見つけ次第直していきたいと思ってますので
気付いた点があったら こちら まで報告をお願いします。
サンプルはこのコンテンツ内のソースを見ることが出来ます。例えばこのページのソースは、
lrd_format.lrd のようになっています。