Alex Tutubalin <lexa@miracle.geol.msu.ru> wrote:
> Solution:
> 1) man perllocale :)
°Полегчало... :) Кстати, уже нашлись грабли модуля POSIX. :)) Демонстрирую:
% echo $LC_CTYPE
ru_RU.KOI8-R
% perl -e 'use locale; print lcfirst uc "Проверка\n";'
пРОВЕРКА
% env - perl -e 'use locale; print lcfirst uc "Проверка\n";'
Проверка
% env - perl -e 'use POSIX qw(locale_h); setlocale(LC_CTYPE,"ru_RU.KOI8-R");
use locale; print lcfirst uc "Проверка\n";'
Проверка
Нравится? Я протащился... Хотя, с другой стороны, приятно осознавать,
что Perl имеет такой могучий оптимизатор кода. :) Лечится так:
% env - perl -e '$s="Проверка\n"; use POSIX qw(locale_h);
setlocale(LC_CTYPE,"ru_RU.KOI8-R");
use locale; print lcfirst uc $s;'
пРОВЕРКА
К Апачу это никакого отношения не имеет, конечно, просто к слову пришлось.
> Да, оба варианта я проверил под FreeBSD 2.2.6 и под Solaris/SPARC.
Linux 2.0.33, libc-5.3.12. Работает. Спасибо!
--
Eugene Berdnikov
"Russian Apache" includes software developed
by the Apache Group for use in the Apache HTTP server project
(http://www.apache.org/) See
Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C)
1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.