То есть как это "не понимает"? xgettext всеравно откуда доставать строки.
Я вот таким скриптом из ТТ доставал: http://pastie.org/5519469 А в ТТ использовал синтаксис l("some text") On 2012-12-13 12:28, Иван Бессарабов wrote: > Совсем-совсем самопильными или ты что-то взял за основу с 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 [1] >>>> >>>> -- >>>> With best regards, >>>> Alexander Q mailto:[email protected] >>>> -- >>>> Moscow.pm mailing list >>>> [email protected] | http://moscow.pm.org [1] >>> >>> -- >>> Moscow.pm mailing list >>> [email protected] | http://moscow.pm.org [1] >> >> -- >> With best regards, >> Alexander Q mailto:[email protected] >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org [1] Links: ------ [1] http://moscow.pm.org
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
