История изменений
Исправление outtaspace, (текущая версия) :
#!/usr/bin/perl
use utf8;
use strict;
use warnings;
use Data::Dumper;
# укажет что от нас ждут юникодный "выхлоп"
# без этого будут варнинги: Wide character in print
use open qw/:encoding(UTF-8) :std/;
# собственно "выхлоп"
print {*STDOUT} "привет\n";
print {*STDERR} "привет\n";
my @files = glob './*';
# проверяем, скорее всего у кириллических строк (имен файлов)
# не установлен юникодный флаг
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
# теперь надо явно поднять юникодный флаг для элементов массива
@files = map { utf8::decode($_); $_ } @files;
# проверяем еще раз
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
Исправление outtaspace, :
#!/usr/bin/perl
use utf8;
use strict;
use warnings;
use Data::Dumper;
# укажет что от нас ждут юникодный "выхлоп"
# без этого будут варнинги: Wide character in print
use open qw/:encoding(UTF-8) :std/;
# собственно "выхлоп"
print {*STDOUT} "привет\n";
print {*STDERR} "привет\n";
my @files = glob './*';
# проверяем, скорее всего у кириллических строк (имен файлов)
# не установлен юникодный флаг
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
# теперь надо явно поднять юникодный флаг для элементов массива
my @files = map { utf8::decode($_); $_ } glob q{./*};
# проверяем еще раз
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
Исправление outtaspace, :
#!/usr/bin/perl
use utf8;
use strict;
use warnings;
use Data::Dumper;
# укажет что от нас ждут юникодный "выхлоп"
# без этого будут варнинги: Wide character in print
use open qw/:encoding(UTF-8) :std/;
# собственно "выхлоп"
print {*STDOUT} "привет\n";
print {*STDERR} "привет\n";
my @files = glob q{./*};
# проверяем, скорее всего у кириллических строк (имен файлов)
# не установлен юникодный флаг
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
# теперь надо явно поднять юникодный флаг для элементов массива
my @files = map { utf8::decode($_); $_ } glob q{./*};
# проверяем, скорее всего у кириллических строк (имен файлов)
# не установлен юникодный флаг
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
Исходная версия outtaspace, :
#!/usr/bin/perl
use utf8;
use strict;
use warnings;
use Data::Dumper;
# укажет что от нас ждут юникодный "выхлоп"
# без этого будут варнинги: Wide character in print
use open qw(:encoding(UTF-8) :std);
# собственно "выхлоп"
print {*STDOUT} "привет\n";
print {*STDERR} "привет\n";
my @files = glob q{./*};
# проверяем, скорее всего у кириллических строк (имен файлов)
# не установлен юникодный флаг
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;
# теперь надо явно поднять юникодный флаг для элементов массива
my @files = map { utf8::decode($_); $_ } glob q{./*};
# проверяем, скорее всего у кириллических строк (имен файлов)
# не установлен юникодный флаг
printf qq{%s => %s\n}, $_, utf8::is_utf8($_) for @files;
print {*STDOUT} Dumper \@files;