[Moscow.pm] tie на стандартные переменные
Ruslan Zakirov
ruz на bestpractical.com
Пн Янв 24 03:29:14 PST 2011
2011/1/23 Ivan Petrov <i.petro.77.00 на gmail.com>:
>
>> Кстати, да.
>> Проверил на Ubuntu
>>
>> #!/usr/bin/perl
>>
>> use strict;
>> use warnings;
>> use encoding 'utf8';
>
> хм. работает.
>
> надо будет серьезно потестить. баги utf8 то в общем-то все известны. а с
> encoding я пока ни разу не работал
И не надо этой магии. Правильно как-то так:
use utf8;
use open ':locale';
print "Бла-бла". Encode::decode( (split '.', $ENV{'LC_ALL'} ||
$ENV{'LC_MESSAGES'} || $ENV{'LC_LANG'}, 2)[1], "$!" );
Правильно будет написать новую прагму или расширить utf8 или open,
которая ставит GET MAGIC на $! и делает это за вас. Что-то типа:
use open OS_ERROR => ':locale';
Выбран open, потому что он уже поддерживает такой синтаксис для STD
потоков ввода/вывода.
--
Best regards, Ruslan.
Подробная информация о списке рассылки Moscow-pm