HTML::Template の文字化けの対処2008年09月23日

perl のテンプレートライブラリはもっぱら HTML::Template を使ってるのだけど、UTF-8等のテンプレートファイルを読みこませると文字化けすることがある。PerlIO のレイヤを指定してテンプレートファイルを読みこまないのが原因。

あらかじめ自分で open したもののファイルハンドルを渡すことで簡単には回避できるけど、そのテンプレートファイルの中で TMPL_INCLUDE が実行されている場合は、その部分が文字化けする。

これに対するパッチは2種類ほど見かけたけど、

に投稿されている HTML-Template-2.9-utf8.patch がいい感じ。パッチを当てておいて、

my $tpl = HTML::Template->new(filename=>'hoge.tpl', binmode=>':utf8');

のように使う。次の版から merge してくれんかの。

2011.6.6 追記 HTML::Template 2.10 にパッチが取り入れられるようです

ひたすらdeb2008年09月07日

昼はベトナム料理屋でランチ。思いのほか量が多く、奥さんはちょっと残していた。もったいないので食べようかと思ったが我慢。

昼はひたすらmobircとtiarraのインストール。自前で野良パッケージを作りまくって、なんとかaptに載せることができた。いつまで保持されるかはわからないけど、ここに。etch用。

標準の Exporter だの、Encode だの、IO::Handle だのを置き換えてしまうパッケージが入るので、lennyなり、sidにupgradeした時の影響は不明。

夕方はコードギアスを見る。

雷鳴とどろき、雨が降り出す。ゆうべ、下北沢のカウボーイで執り行われた「牛」の際に奥さんが買ったチェーザレ(1)を読み終える。面白いねぇ。このころの西洋史についてはとんと疎いので、いろいろ読みたい気分。

2008.12.8追記。APT用のURLを変更

Catalyst でのパス名末尾の '/'2007年12月19日

Catalyst って、 trailing slash に意味がなく、

http://example.com/hoge

http://example.com/hoge/

を同一視してしまうのだろうか。

ソースコードを追ってみると、path を '/' で split して…という 処理が入ってるので、末尾の '/' は無意味になるっぽい雰囲気が。

あと、Catalyst::Engine::HTTP は IPv6に対応してない感じだ。

<< 2008/09 >>
01 02 03 04 05 06
07 08 09 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

RSS