Hello! On Sat, Aug 20, 2016 at 09:27:37AM +0300, Andrey Khlopenov wrote:
> Добрый день. > А unicode-to-nginx.pl в дистрибутиве nginx сейчас актуален? > Ибо при попытке конвертирования http://www.unicode.org/Public/ > MAPPINGS/VENDORS/MISC/KOI8-R.TXT получаю таблицу, которая отличается от > koi-utf, что лежит возле скрипта. > Ну и, соотв., nginx ругается, если подключить такой charset_map. Последние 10 лет его никто не трогал, и, судя по всему, с современным перлом он работает некорректно. Чтобы было правильно, надо добавить "U0" в unpack, как-то так: diff --git a/contrib/unicode2nginx/unicode-to-nginx.pl b/contrib/unicode2nginx/unicode-to-nginx.pl --- a/contrib/unicode2nginx/unicode-to-nginx.pl +++ b/contrib/unicode2nginx/unicode-to-nginx.pl @@ -33,7 +33,7 @@ while (<>) { # Produce UTF-8 sequence from character code; - my $un_utf8 = join('', map { sprintf("%02X", $_) } unpack("C*", pack("U", hex($un_code)))); + my $un_utf8 = join('', map { sprintf("%02X", $_) } unpack("U0C*", pack("U", hex($un_code)))); print " $cs_code $un_utf8 ; $un_name\n"; -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
