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

Ruslan Zakirov ruz на bestpractical.com
Ср Дек 12 10:19:25 PST 2012


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