Код: Выделить всё
#!/usr/bin/perl -w
use utf8;
$s = "превед";
print("$s\n" . reverse($s) . "\n\n");
while (<>) {
chomp;
print(reverse . "\n");
}Результат:
Код: Выделить всё
phobos@zeus:~/just-for-fun/perl$ ./test.pl
Wide character in print at ./test.pl line 6.
превед
деверп
qwerty
ytrewq
123456
654321
превед
´евеЀѿÐ
какдела
°ледкакÐпрямо даже и не знаю в чем дело, "Programming Perl" Ларри Уола и гугл говорят что use utf8 достаточно для корректной работы с уникодными строками.
ps В терминале (rxvt-unicode) никаких проблемм с юникодом нет, все отображается корректно, Debian Etch, perl v5.8.8,
локаль:
Код: Выделить всё
LANG=en_US.UTF-8
LC_CTYPE=ru_RU.UTF-8
LC_NUMERIC=POSIX
LC_TIME=POSIX
LC_COLLATE=POSIX
LC_MONETARY=POSIX
LC_MESSAGES=POSIX
LC_PAPER=POSIX
LC_NAME=POSIX
LC_ADDRESS=POSIX
LC_TELEPHONE=POSIX
LC_MEASUREMENT=POSIX
LC_IDENTIFICATION=POSIX