Как перевести строки основного домена CakePHP с помощью POEdit? - PullRequest
1 голос
/ 21 декабря 2011

Я не первый раз настраиваю POEdit для работы с CakePHP, но мне впервые приходится переводить основные строки на сайте.В частности, мне нужно перевести строки на функцию TimeHelper timeAgoInWords().Проблема заключается в том, что все содержащиеся в них строки инкапсулированы в функции __d() и __dn() (вместо обычных __(), __n() и т. Д.), Которые используют имя домена перевода в качестве первого параметра вместо переводимой строки.,Поэтому, если я скажу POEdit включить в каталог ключевые слова __d и __dn, он будет считать, что "cake" и "cake_dev" являются переводимыми строками.

Каков наилучший способ перевести основные строки CakePHP в домен «торт»?

Здесь вы можете увидеть код timeAgoInWords .

Спасибо.

1 Ответ

0 голосов
/ 21 декабря 2011

ОК, я нашел ответ, спрятанный здесь на SO. Сочетание это и это другое вопрос:

  • Во-первых, я добавил ключевое слово __d в форме __d:2, поэтому вместо первого он принял второй параметр.
  • Я также добавил ключевое слово __dn:2,3.
  • Затем я настроил формы множественного числа (nplurals=2; plural=n != 1;) в POEdit, чтобы заставить работать предыдущее ключевое слово.

Все работало как шарм.

Надеюсь, это поможет кому-то еще.

...