ただのにっき
2002-03-08(金) 10915歩 [長年日記]
■ tDiary: その場ツッコミプラグイン
うちのくわに、ツッコミ用フォームを日毎ページじゃなくて最新ページに出したいという要望を受けた。ヤツの日記では今、手動で埋め込んでいるようだが、これは実はプラグインで可能だ。body_leave_procを使う。
というわけで、speed_comment.rbとしてcvsに突っ込んでおいた。邪魔にならないようにメール欄を省いて、本文欄も1行に制限してある。
ちなみに要望した本人はtDiary.Netユーザなのでこれを使うことはできないんだけど(笑)、実はtDiary.Netユーザにも抜け道がある。ヘッダに直接、プラグインのコードを埋め込んでしまう方法だ。プラグインは単にeRubyを解釈しているだけなので、ヘッダ中に「<% 〜 %>」で囲めばその中にRubyのコードが書ける。もちろんセキュリティ的な制限はかかるけど。
body_enter_procやbody_leave_procのような本文に影響のあるコールバック系プラグインはなかなか共有して使うのが難しいが、こうやって自分だけで使うことも可能なのである。
■ 上で大うそ書いてしまったので訂正。
まず、tDiary.NetのtDiaryはまだ1.3.3.20020212なので、body_leave_procは実装されていませんでした。てへ。すまぬ。
さらに、たとえ最新版でも、セキュアモードではadd_body_leave_proc自身が呼び出せないので、ヘッダ中に何か定義しようとするとエラーになってしまうのでした。キビシーなー、$SAFE = 4は。
というわけで、tDiary.Netではほとんど何もできないのではないかと。メソッドの定義もできないし。
■ tDiary 1.3.4
というわけで、1.3.4リリース。1.4RC1になります。1.3.3からの変更点は以下のとおり。
- 基本セットとテーマ集、プラグイン集を分離。フルセットパッケージも作成
- クロスサイトスクリプティング脆弱性への対応
- ツッコミメールのSubjectに投稿者の名前を追加
- ツッコミメール送信部分を差し替え可能に
- コールバック系プラグインを増やした
- プラグインから使えるインスタンス変数を増やした
- mod_rewrite対応で自由なURLを生成可能に
- ドキュメントを大幅加筆
- などなど。詳しくはchengeLog参照