[Moscow.pm] utf8 и Template Toolkit
Alex Kapranoff
kapranoff на gmail.com
Сб Окт 31 05:19:58 PDT 2009
Кто-нибудь, кто разбирается в этом месте TT, расскажите, нужен этот хак в
свежих версиях или уже нет?
--
Alex Kapranoff.
2008/8/8 Vladimir V. Perepelitsa <inthrax на gmail.com>
> Вот мой хак из доклада
>
> BEGIN {
> use Template::Provider;
> use bytes;
> no warnings 'redefine';
> my $bom = "\x{feff}";
> my $len = length($bom);
> *Template::Provider::_decode_unicode = sub {
> shift;
> my $s = shift;
> # if we have bom, strip it
> $s = substr($s, $len) if substr($s, 0, $len) eq $bom;
> # then decode the string to chars representation
> utf8::decode($s);
> return $s;
> }
> }
>
>
> On Friday 08 August 2008 11:49:02 Dmitry E. Oboukhov wrote:
> > то есть я написал примерно такую хрень:
> >
> > sub _my_decode_unicode
> > {
> > my ($self, $string)=@_;
> > $string="\x{ef}\x{bb}\x{bf}$string";
> > $old_decode_unicode->($self, $string);
> > }
> > $old_decode_unicode=\&Template::Provider::_decode_unicode;
> > *Template::Provider::_decode_unicode=\&_my_decode_unicode;
> >
> > но во первых не очень мне это нравится, во вторых
> > как убрать вот такую ругань:
> >
> > [Fri Aug 8 11:39:46 2008] test_auth.cgi: Subroutine
> > Template::Provider::_decode_unicode redefined at ./test_auth.cgi line
> > 23.
> > ?
> > --
> > ... mpd is off
> >
> > . ''`. Dmitry E. Oboukhov
> >
> > : :’ : unera на debian.org
> >
> > `. `~’ GPGKey: 1024D / F8E26537 2006-11-21
> > `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
>
>
>
> --
> Vladimir Perepelitsa aka Mons Anderson
> <inthrax на gmail.com> / #99779956
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20091031/e11d2444/attachment.html>
Подробная информация о списке рассылки Moscow-pm