Cthulhu 12.03.2013 15:08 work

Интересно, о чем думали ублюдки, писавшие gettext, когда решили не предусматривать в нем никакого механизма для определения того, почему перевод строки не находится? Интересно, какое особо изощренное наказание придумано для таких в аду?

Recommended by: @4da, @komar
1. generatorglukoff 12.03.2013 15:09 Воркота

а что бы ты делал, если бы не находил перевода строки?

2. Cthulhugeneratorglukoff /1 12.03.2013 15:10 work

Возвращал бы оригинал, как и они. Но у меня была бы возможность определить, откуда оно брало перевод, почему именно оттуда и тд.

3. overmind88Cthulhu /2 12.03.2013 16:31

подробнее можно?

4. Cthulhuovermind88 /3 12.03.2013 16:46 Miranda

О чем конкретно подробнее?

5. overmind88Cthulhu /4 12.03.2013 16:52 Psi+

Несколько недогоняю что тебе нужно и чего не хватает. Например когда кеды переводишь, там видно добавленый авторами контекст оригинала, известен файл, откуда берётся строчка и можно добавлять примечания, но это, конечно, в основном навороты над программой перевода, хотя всё равно оно всё хранится в .po

6. generatorglukoffovermind88 /5 12.03.2013 16:56 Воркота

вопрос как дебажить это говно, без засовывания рук по локоть в сорцы геттекст

7. Cthulhuovermind88 /5 12.03.2013 16:59 Miranda

Нет, я не о том. Допустим я в своей софтине пользую геттекст. И одна из строк не переводится. Прототип вызова там const char *gettext(const char *msg). Я никак не могу определить, почему она не переводится. Я забыл вызвать textdomain? Перевода нету в .mo? Я передал кривой путь в bindtextdomain? Геттекст выбрал локаль, для которой перевода пока нет? Я положил файлы с переводом по неверному пути? Что-то еще? Все эти варианты я должен проверять вручную — у геттекста нет никакого способа просигналить мне о том, что конкретно произошло.

Еще, конечно, разработчиков надо бы поиметь раскаленным ломом за то, что я не могу сказать ему "используй сейчас конкретно вот этот файл, сука", кроме как меняя вручную локаль для этого. Ну и докучи за навязывание структуры — переводы должны обязательно лежать в %prefix%/%locale%/%category%/%package%.mo, иначе никак.

8. CthulhuCthulhu /7 12.03.2013 17:03 Miranda

При этом я-то могу открыть исходники glibc и угадать, что там происходит (хоть сегодня от этого у меня вытекли оба глаза и умерло 5 братьев); а как с ним живут, например, php-бляди — вообще страшно представить.

9. overmind88Cthulhu /7 12.03.2013 17:39 Psi+

В кедах можно .mo кидать в локальный префикс

10. Cthulhuovermind88 /9 12.03.2013 17:40 Miranda

Што. Я тоже могу кидать в локальный префикс, но внутри него структура каталогов должна быть обязательно такой, как описано выше.

11. overmind88Cthulhu /10 12.03.2013 17:44 Psi+

Да, но при желании можно кидать туда нужный файл, например в кдешном lokalize есть пункт меню, который автоматом компилирует текущий файл в mo и кидает его в локальный префикс

12. Cthulhuovermind88 /11 12.03.2013 17:48 Miranda

Можно, все можно, для всего тулзы есть. Но почему нету функции "сука, бери переводы вот из этого файла", безо всякой ебли с префиксами/локалями/структурой каталогов?

13. overmind88Cthulhu /12 12.03.2013 17:49 Psi+

enjoy your opensource

14. generatorglukoffovermind88 /13 12.03.2013 17:51 Воркота

вот это выворот мозгов

15. generatorglukoffovermind88 /13 12.03.2013 17:52 Воркота

впрочем да, запили модификацию либы и нееби другим мозги :D

Do you really want to delete ?