2006-11-27
@ [zsh] zshでsvnのエラー
_svn_command:5: bad set of key/value pairs for associative array
会社でzsh使い始めたらこんなエラーが...svnコマンドが出力するメッセージに日本語が含まれていることが原因らしいので、下記を~/.zshenvにセットして回避しました。でもこれ家のマシンでは出ないんですよね。なんでだろう。。。
export LC_COLLATE=ja_JP.eucJP export LC_CTYPE=ja_JP.eucJP export LC_MESSAGES=C export LC_MONETARY=ja_JP.eucJP export LC_NUMERIC=ja_JP.eucJP export LC_TIME=C
[ツッコミを入れる]
2008-11-27
@ [cpan] HTML::Templateのfilterって使えるかも
Perlには HTML::Template というすごくシンプルなテンプレートエンジンがあるのですが、これにfilterという、シンプルさを至高の哲学としているこのモジュールにはありえないような機能があることに最近気付きました。以下は軽いサンプル。
#!/usr/bin/perl
use strict;
use HTML::Template;
my $html = <<"EOS";
<TMPL_FILTER NAME="hoge">
あべし
EOS
print "--- before ---\n";
print $html, "\n";
my $t = HTML::Template->new(
scalarref => $html,
filter => sub {
my ($text_ref) = @_;
$$text_ref =~ s/<tmpl_filter\s+name="?([^"]+)"?>/$1/ig;
},
);
print "--- after ---\n";
print $t->output;
実行結果はこんな感じです。
--- before --- <TMPL_FILTER NAME="hoge"> あべし --- after --- hoge あべし
コンストラクタでfilterという名前のサブルーチンを渡してやるとそれがフックとして実行される感じです。上の例だと<TMPL_FILTER>というタグをフィルタして取り除いています。これを使えば<TMPL_VAR>の値をデフォルトで勝手にHTMLエスケープするとか、
[ツッコミを入れる]
# 小人 [w3m + migemo も快適ですよ!]
# おいぬめ [w3mは快適ですよね。XありのEmacs + emacs-w3mがとても重宝しています。]
# 小人 [会社では firefox & Meadow + emacs-w3m(^^)]