これは何か?
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)、そのファイルのベース名と 同じ関数を実行する。
contets-type 出力
現在のところ、html 形式と rss 形式の出力を実行する。
header 出力
フレーバーの head 部を、erubis で整形し出力する。
entry 出力
出力対象の記事毎に、以下の処理を実行する。
date 出力
フレーバーの date 部を、erubis で整形し出力する。
story 出力
対象記事を style で形式変換後、フレーバーの story 部を erubis で整形し出力する。
foot 出力
フレーバーの foot 部を、erubis で整形し出力する。
フレーバー
バラバラである必要は無いので、単体の rhtml ファイルとする。 但し、content-type は、コメントで埋め込む。
拡張子がフレーバー名というのはちょっと使いにくいしね。
<!--Start: head --> <!--End --> <!--Start: date --> <!--End --> <!--Start: story --> <!--End --> <!--Start: foot --> <!--End -->
の形式で、<!-- content-type: xxxxx --> の行から、 content-type を取得する事にする。
プラグイン
やはり、tDiary のプラグインが使えた方が便利。 ただ、あくまで個人がカスタマイズして使い倒すというのが 主眼なので、こだわらない方がいいかも。
スタイル
とりあえず、RDスタイルのみ対応予定
at 2007-05-14 07:56 /
permalink
/
0 trackback