ログ日記

作業ログと日記とメモ

flexy改造動画

巷では1000人スピーカプロジェクトというのが流行ってるらしい。
そっち方面のことはあまり知らなかったんだけど、flexyの話が出るということなのでちょっと調べてみた。
もう3回目になるんだね。
http://ja.doukaku.org/wiki/index.php/1000speakers


phpLexで字句解析に挑戦 - maru_cc [3-36] - ニコニコ動画
PHPからQIQへ - rsk [3-34] - ニコニコ動画
Partty!.orgでペアプログラミング - frsyuki [3-33] - ニコニコ動画
IT屋よりもスイーツ(笑)のほうがすごい件 - tokoroten [3-40] - ニコニコ動画
結構面白そう。


flexyスライドの一枚。

  • 変数
<span id="hoge">a</span>
    • idで置換
  • foreach
<tr class="fuga">
    • PG側で配列をassign
  • 便利かも!

確かに便利かも!
でもタグ属性に flexy:dynamic="yes" を入れていないとコンパイル時に解析対象にならないからなあ。全タグをdynamicと同じ扱いにするのはやりすぎな気がするし。
flexy->compile()の時点で動的エレメントが決まってしまうから、その時点でclassやid解析が出来てないと駄目だよね。


やっつけ的でいいなら

<?php
$flexy = new HTML_Template_Flexy(...);
$flexy->setDynamicElements(array(array('id' => 'hoge'),
                                 array('class' => 'fuga')
                                 ));
$flexy->compile('template');

とか新しい関数作れば出来そうだけど、スマートにやる方法は簡単には思い付かないや。
コンパイル時にオプション配列を受け取って、それを元にコンパイルの動作が変わるとかやったら面白いかも。



・・・ていうか、PEARに依存しないflexyクローンを作りたい。
PEARの機能をほとんど使ってないのに依存してるのはいただけない。それにC#で解析機構を作ってるなら、extensionで提供してくれてもいいと思ったりもする。


ともかく、flexyは便利だしHTMLを崩さない思想がいいのでみんなもっと使うと良い。




最近気付いたけど、hawkさんのサイトが見れなくなってた。
私の知ってる限りflexyの情報が一番分かり易かったのに・・・なくなる前にローカルに落としてミラー作ってもいいか聞いとくべきだった。


困ったときのwebarchive・・と思ったけどイマイチ。
http://web.archive.org/web/20051220153126/http://www.hawk.34sp.com/stdpls/php/flexy/


tracwikiは割と好きなので http://code.google.com/p/laiz/wiki/HTML_Template_Flexy こっちにまとめ直すという手もあるな。
# なんか今見てみたら本家マニュアルが分かり易くなってた。まぁとりあえず色々保留。