Совсем-совсем самопильный, с собственноручно написанными несложными регулярными выражениями.
2012/12/13 Иван Бессарабов <[email protected]> > Совсем-совсем самопильными или ты что-то взял за основу с cpan? > Со станартным экстрактором xgettext есть проблема — он не понимает > template toolkit. > > > 13 декабря 2012 г., 12:14 пользователь Alexander Q <[email protected]>написал: > > Лично я в момент раздумий, как бы прикрутить стандартные утилиты gettext к >> этой задаче, вспомнил, на каком языке пишу, и делаю всё это средствами >> перла, самописным скриптом. >> >> >> 2012/12/13 Иван Бессарабов <[email protected]> >> >>> А как ты экстрактишь вот эти pgettext строки из template toolkit >>> шаблонов? >>> >>> >>> 12 декабря 2012 г., 23:07 пользователь Alexander Q >>> <[email protected]>написал: >>> >>> Я использую 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 >>>> >>>> >>> >>> -- >>> 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 >> >> > > -- > 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
