<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>template / Drkcore</title><link>http://blog.kzfmix.com/template</link><description>Programming, Music, Snowboarding</description><language>ja</language><lastBuildDate>Mon, 26 Feb 2007 18:26:22 +0919</lastBuildDate><item><title>TTでサブルーチン</title><link>http://blog.kzfmix.com/entry/1172481982</link><description>&lt;p&gt;TTにクロージャを渡せるということを知らなかったので、&lt;a href="http://www.template-toolkit.org/docs/plain/Manual/Variables.html"&gt;ドキュメントを読んだ&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;Catalystだとコントローラーでクロージャ作ってTTに渡せばプラグイン化するまでもないちょっとした処理はOKっぽい。&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.template-toolkit.org/docs/plain/Manual/VMethods.html#Defining_Custom_Virtual_Methods"&gt;Virtual Methods&lt;/a&gt;はpythonみたいだ。メソッドとして使いたいものはこっちで書いたほうがいい気がするが、プラグイン化するのが前提っぽいのでお手軽感がちょっと減る。&lt;/p&gt;
&lt;p&gt;というわけで、上記のどちらかを使えば、PERLブロックはあまり使わなくてもいいような気がしてきた。この前の&lt;a href="http://blog.kzfmix.com/entry/1172235592"&gt;PERLブロック&lt;/a&gt;は後で書き直す。&lt;/p&gt;</description><pubDate>Mon, 26 Feb 2007 18:26:22 +0919</pubDate><category>template</category><category>tt</category></item><item><title>CatalystのTTでeval_perl</title><link>http://blog.kzfmix.com/entry/1161091866</link><description>&lt;p&gt;Catalystの設定ファイルのyamlにEVAL_PERLを入れておくとTTで&lt;a href="http://www.hakoniwa.net/tt/index.html#filter_etc"&gt;perl&lt;/a&gt;のコードが使える。&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;      &lt;span class="n"&gt;INCLUDE_PATH:&lt;/span&gt;
              &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="s"&gt;&amp;#39;root/templates&amp;#39;&lt;/span&gt;
      &lt;span class="n"&gt;TEMPLATE_EXTENSION:&lt;/span&gt; &lt;span class="s"&gt;&amp;#39;.tt&amp;#39;&lt;/span&gt;
      &lt;span class="n"&gt;EVAL_PERL:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;とかやっておくと&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="k"&gt;[% PERL %]&lt;/span&gt;
    &lt;span class="err"&gt;print&lt;/span&gt; &lt;span class="err"&gt;$stash-&amp;gt;{tags}&lt;/span&gt;&lt;span class="c"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;[% END %]&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;みたいに書ける。&lt;/p&gt;
&lt;p&gt;やりたいことはちょっとした加工だったので、ホントは&lt;a href="http://clouder.jp/yoshiki/mt/archives/000598.html"&gt;virtual method&lt;/a&gt;使いたかったのだけど、catalystのどの部分でdefine_vmethod呼べばいいのかイマイチわからなかった。&lt;/p&gt;
&lt;p&gt;それにしてもTTでperlのコード書くのはちょっと気持ち悪い。&lt;/p&gt;</description><pubDate>Tue, 17 Oct 2006 22:31:06 +0919</pubDate><category>catalyst</category><category>template</category></item></channel></rss>