【问题标题】:.po file for default cakephp libs translations默认 cakephp 库翻译的 .po 文件
【发布时间】:2011-05-26 19:33:06
【问题描述】:

如何将 cakephp 库文件的翻译添加到 default.po 文件
例如
- 月份名称
- 日期名称
- timeAgoInWords

我尝试手动将字符串添加到 default.po
但每次我从 default.pot 更新它(使用 poedit)
琴弦不见了。

请帮我解决
使用单独的 .po 文件可以找到解决方案

【问题讨论】:

    标签: cakephp internationalization translation poedit po


    【解决方案1】:

    我解决了
    - 创建 /app/views/dummy.ctp
    - 复制从 cake\libs\view\helpers\time.ctp 到 dummy.ctp 的翻译
    - cake i18n 会将翻译添加到 default.pot

    【讨论】:

      【解决方案2】:

      您可以看到timeAgoInWords at the end of TimeHelper::timeAgoInWords 的相关字符串。它们只是按照'year''years''month''months' 等行的普通翻译字符串,只需将这些翻译放入通用域 .po 文件中即可。

      有一种特殊情况,可以打印完整的日期字符串,如'on 18/2/09'。 “on”可以通过本地化字符串'on %s'来本地化,但是需要将日期格式传递给timeAgoInWords函数:

      $this->Time->timeAgoInWords($time, array('format' => __('Y-m-d', true)));
      

      月份名称follow the same schema,只需在您的通用域翻译文件中添加'January''February' 等的翻译。不太确定 Cake 在哪里输出需要翻译的 day。请详细说明。

      【讨论】:

      • 翻译没问题,但如何将它们放到单独的文件中。我知道我可以使用域解决方案来制作单独的文件,但它不是编辑 cake\libs\view\helpers\time.php 以添加域的方式
      • @baur 啊,现在我明白你在问什么了。是的,恐怕没有编辑或覆盖 Cake 方法没有真正的解决方案。您需要更加小心地将新翻译合并到现有文件中...:-/
      猜你喜欢
      • 2015-07-22
      • 2017-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-10
      • 1970-01-01
      • 2012-04-30
      • 2018-12-13
      相关资源
      最近更新 更多