マルチ language なアプリを作る練習もかねて、ちょっとしたサイトつくりはじめたんだけど、
msgid "Logged in as %1"
msgstr "%1 としてログインしています"
こういうのが化ける。%1
とかはいってないのはいける。Unicodeフラグっぽい化けかたなので、MyApp.pm に
sub localize {
my $c = shift;
my $text = shift;
my $args = ref $_[0] eq 'ARRAY' ? $_[0] : [@_];
for my $arg (@$args) {
utf8::decode($arg);# unless utf8::is_utf8($arg);
}
$c->NEXT::localize( $text, $args );
}
とか書いてみたら直ったよ。しかし、is_utf8
のところコメント外すとうごかねーよ、なにこれ。
$args
には is_utf8
は真だけど、perl utf8 じゃないのがはいってる?何かが悪さをしておる。
Unicode プラグインと併用してるのがまずいのかもしれん。