bloxsomのruby版であるlilyの改造版である。
lilyもどきを縮めて lmdkとうい事で。
flavour で、表示をコントロールする。
plugin で、挙動をコントロールする。
tDiary のプラグインが簡単に移植出来るようにする。
style で、記述フォーマットを変更出来るようにする。
データのアップデートは他に任せる。
静的なファイルの書き出し。
本体、及びプラグイン、フレーバー、スタイルの
初期設定情報。
tDiaryでは、web上で更新出来るようになっているが、
lmdkはrubyで好きなように設定出来ることが目標なので、
単純に初期設定ファイルに記述する仕様とする。
(誰かが、作ってくれると嬉しい…)
フレーバーの決定
読み込むデータの決定
引数の例
@url = http://www.artif.org/lmdk.cgi
@path_info = /lily/plugin/categories.html/2007/05
形式は、
(/dir)*(/filename.flavour)(/yyyy)(/mm)(/dd)
- dir --- ディレクトリ部分
- filename --- 記事のファイル名(拡張子を除いた部分)
- flavour --- 出力に使用するフレーバー名
- yyyy mm dd --- 記事を絞り込む日付データ
読込みパスの解析結果に従って、出力対象の記事を決定する
プラグインディレクトリ内に有る .rb ファイルを読込み
(インスタンス eval)、そのファイルのベース名と
同じ関数を実行する。
現在のところ、html 形式と rss 形式の出力を実行する。
フレーバーの head 部を、erubis で整形し出力する。
出力対象の記事毎に、以下の処理を実行する。
フレーバーの date 部を、erubis で整形し出力する。
対象記事を style で形式変換後、フレーバーの story 部を
erubis で整形し出力する。
フレーバーの foot 部を、erubis で整形し出力する。
バラバラである必要は無いので、単体の rhtml ファイルとする。
但し、content-type は、コメントで埋め込む。
拡張子がフレーバー名というのはちょっと使いにくいしね。
<!--Start: head -->
<!--End -->
<!--Start: date -->
<!--End -->
<!--Start: story -->
<!--End -->
<!--Start: foot -->
<!--End -->
の形式で、<!-- content-type: xxxxx --> の行から、
content-type を取得する事にする。
やはり、tDiary のプラグインが使えた方が便利。
ただ、あくまで個人がカスタマイズして使い倒すというのが
主眼なので、こだわらない方がいいかも。
とりあえず、RDスタイルのみ対応予定