[Moscow.pm] Мультиязычный сайт на Mojo

Иван Бессарабов ivan на bessarabov.ru
Ср Дек 12 22:36:36 PST 2012


А как ты экстрактишь вот эти pgettext строки из template toolkit шаблонов?


12 декабря 2012 г., 23:07 пользователь Alexander Q <qalexx на gmail.com>написал:

> Я использую Locale::TextDomain, который поддерживает контексты.
> __p('new user form button', 'New');
> __p('show only new books link', 'new');
>
> Вторую проблему я не понял.
>
>
> 2012/12/12 Ruslan Zakirov <ruz на bestpractical.com>
>
>> 2012/12/12 Ruslan Zakirov <ruz на bestpractical.com>:
>> >> В мире Rails принято хранить i18n в config/locales/$LANGCODE.yml
>> >>
>> >> В шаблонах и в коде используются хэлперы типа
>> >> t(ключ_локализации_иерархия_черезз_точку, параметры).
>> >>
>> >> ru:
>> >>   page:
>> >>     title: Привет, %1
>> >>
>> >> Использование
>> >>
>> >> [%= t('page.title', customer_title) %]
>> >>
>> >> В принипе, у меня есть заготовка модуля для CPAN, могу выложить.
>> >>
>> >> По своей практике скажу, что поддерживать такой код удобно.
>> >>
>>
>> Хоть такой код и кособоко выглядит, но из простых альтернатив gettext,
>> который тоже имеет свои проблемы. Из самых назойливых:
>> 1) короткие термины с многими значениями, типа new. Они могут
>> переводится по разному в зависимости от контекста. Контексты в
>> перловых модулях не поддерживаются. Можно обойти вводом контекста
>> прямо в текст и созданием перевода и для основного языка.
>> 2) loc("Created $type"). По другому нельзя, а список возможных типов
>> может быть большим.
>>
>> И так далее и тому подобное.
>>
>> --
>> Best regards, Ruslan.
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>
>
>
> --
> With best regards,
>     Alexander Q                        mailto:qalexx на gmail.com
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20121213/8ef877a2/attachment.html>


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