Xslate 1.0006 released!
リリースしました。
1.0001から1.0006の間には後方互換性を破壊する変更はなく、バグフィクスと小さな機能追加のみです。SEGVを起こすバグや非常に分かりにくいエラーメッセージを吐くバグも修正されているのでアップデートをお勧めします。
また、1.0006から追加されたText::Xslate->print()
メソッドを使うと、エラーメッセージをテンプレート内に出力することができます。なお、このprint()はテンプレート内部の出力同様、スマートエスケープが適用されます。
#!perl -w use strict; use Text::Xslate; my %vpath = ( hello => 'Hello, <: $lang :> world!' . "\n", ); my $tx = Text::Xslate->new( cache => 0, path => \%vpath, verbose => 2, warn_handler => sub { Text::Xslate->print('[[', @_, ']]') }, ); print $tx->render('hello', { lang => "Xslate" }); print $tx->render('hello', { }); __END__
出力:
Hello, Xslate world! Hello, [[Text::Xslate: Use of nil to print (<string>:1) at example/err_handler.pl line 15 ]] world!