[Moscow.pm] tie на стандартные переменные

Ivan Petrov i.petro.77.00 на gmail.com
Вс Янв 23 06:21:20 PST 2011


> Почему Флейм?


потому что это уход от обсуждения проблемы к обсуждению деталей.


> Мне допустим интересно как научить перл говорить по
> русски, я если честно первый раз вижу, что ошибки у перл бывают
> локализированными (мне очень стыдно :).
>
> полагаю надо установить libc, который поддерживает локализованные сообщения
об ошибке. Потому что чтобы увидеть этот русский текст об ошибке не
обязательно использовать perl, например программа на C делает то же что
делает указанный пример на перле:

#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>
#include <string.h>
#include <errno.h>
#include <locale.h>

int main(int argc, char **argv) {
        setlocale(LC_ALL, "");
        int res = open("abrakadabra/not-found", O_RDONLY);
        if (res == -1) {
                printf("Ошибка открытия файла: %s\n", strerror(errno));
                return -1;
        }
        return 0;
}

как видно, сообщение об ошибке локализовано "где-то вне" программы. Думаю
что в моем перле где-то тоже скомпилено использовать локали из енвиронмента
и он их использует. А в Вашем это либо отключено опциями компиляции, либо в
/usr/share/locale/ru у Вас какой-то файлик отсутствует либо не знаю почему
оно у Вас по русски не говорит. Какой-то очень древний libc?
----------- следущая часть -----------
Вложение в формате HTML было извлечено&hellip;
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20110123/d48af13b/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm