Я использую Locale::TextDomain, который поддерживает контексты.
__p('new user form button', 'New');
__p('show only new books link', 'new');Вторую проблему я не понял. 2012/12/12 Ruslan Zakirov <[email protected]> > 2012/12/12 Ruslan Zakirov <[email protected]>: > >> В мире 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 > [email protected] | http://moscow.pm.org > -- With best regards, Alexander Q mailto:[email protected]
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
