2006年 09月 11日

tt

blosxom のテンプレートを TT に置き換えるやつをいろいろ試してる。一つのファイルにしてしまって [% FOREACH entry IN entries %] みたいにしたい。
ので、TT の process は一括して last に行うことになる。
でもって問題なのは、story テンプレートで使われることを想定しているプラグイン変数なんですよね。これって次々と変わっていくから、最後に一括して処理したいというこの場合、随時全て保存しておかなければならない。
ここで、プラグイン変数を全て保存しておこうとすると、プラグイン変数の名前を全て知っていないといけない。けど、どうやって知ればいいのかわからない。簡単にやる方法あるんだろうか。


ということで、回り道をし、発想を逆転させて、テンプレートパースを先にやる。
use Template::Parser して parse($text) すると Template::Document オブジェクトが帰ってくる。こいつの BLOCK にはコード化されたテンプレが入っているので、$stash->get ってなっている部分を正規表現 (!) で抜いてくる。
んでごにょると、テンプレートで使われているであろう変数名が余計なものも全部とれるので、この変数名を story テンプレートを通るたびに全てのプラグインからとってくる。かなり無駄だけど!!


http://mizzy.org/program/blosxomTT.html が似たような方法だったけれど、どうも Data::Dumper してみてみると、ちょっと変に連結されてしまったりするので、まるパクできなかった。

つかれた

$ cd
$ svn propset moe "zyosikosei" .

blosxom

  • meta プラグイン併用で text formatting rule を変更できるプラグイン
  • 投稿フロントエンド。wikieditish で結局いいじゃんとか思うけど

tt

動くようになった。

参照方法がちょっとキモいなぁ。
というか XREA に TT 入れるのめんどくさそうだからどうせ使わないだろうなぁ、と思った。無駄じゃん! インターフェイス作ったほうがいいじゃん!

それに plugin が対応してくれないと恩恵をうけられない。writeback を FOREACH でまわす、とかできないし。普通のフレーバーで十分だなぁ、と作ってから思う罠

はつおん

  • ばっしゅ
  • ぜっとしぇる, ぜっとえすえいち
  • しーしぇる
  • てぃーしーしぇる
  • えすえいち
  • ヴいあい
  • ヴぃむ
  • りん えす
  • ちぇんじもっど
  • ちょうん
  • えすゆーどぅー
  • えむけーでぃあー
  • あーるえむでぃあー
  • ヴぁいあぐら
  • でぃーあいえふえふ
  • きゃっと
  • ている えふ
  • てぃーえーあーる ぜっとえっくすぶいえふ (ただし入力時は xzvf)
  • えすえすえいち
  • えふすく
  • るびー
  • ぱーる, ぺるる
  • しーぱん
  • ぺちぺ
  • おっぱい