2011-12-20 50 views
1

這不是我第一次將POEdit設置爲與CakePHP一起工作,但這是我第一次需要翻譯網站上的核心字符串。具體來說,我需要翻譯TimeHelpertimeAgoInWords()函數的字符串。問題是,那裏的所有字符串都封裝在__d()__dn()函數(而不是常規的__(),__n()等)中,它們使用翻譯域名作爲第一個參數,而不是可翻譯的字符串。所以如果我告訴POEdit在目錄中包含__d__dn作爲關鍵字,它認爲「cake」和「cake_dev」是可翻譯的字符串。如何使用POEdit翻譯CakePHP的核心域字符串?

什麼是翻譯CakePHP在「蛋糕」域中的核心字符串的最佳方式?您可以看到timeAgoInWordshere的編碼。

謝謝。

回答

0

好的,我找到了隱藏在SO上的答案。的thisthis other問題的組合:

  • 首先,我添加了__d關鍵字的__d:2形式,從而它採取了第二個參數,而不是第一個。
  • 我還加了一個__dn:2,3關鍵字。
  • 然後我在POEdit上配置了複數形式(nplurals=2; plural=n != 1;),以使前面的關鍵字有效。

所有的工作都像一個魅力。

我希望這可以幫助別人。