跳转到主要内容

zope.i18n.translationdomain的增强版本

项目描述

此软件包为Zope 3和Zope 2 + Five提供组件,实现了ITranslationDomain和ILanguageAvailability,同时支持记录未翻译的msgids。这意味着组件不仅支持提供给Zope 3 i18n框架所需接口,还可以使用类似于以下代码的代码生成可用语言列表

from zope.component import getUtility
from zope.i18n.interfaces import ILanguageAvailability
from zope.i18n.locales import locales, LoadLocaleError

domain = 'myproject'

def getLanguages(self):
  options = getUtility(ILanguageAvailability,
                       domain).getAvailableLanguages()
  options.sort()
  result = []
  for option in options:
      lang = option[0]
      try:
          locale = locales.getLocale(lang)
      except LoadLocaleError:
          # probably not a real locale
          continue
      result.append(
          {'code':lang,
           'name':locale.displayNames.languages[lang],}
          )
  return result

要求

需要Zope 2.12.0或更高版本。

安装

要安装,只需将分发中包含的sx文件夹放置在您的PYTHONPATH中。

配置

配置通过ZCML完成,下面是一个完整的示例

<configure xmlns="http://namespaces.zope.org/zope"
           xmlns:i18n="http://namespaces.simplistix.co.uk/translations">

<!-- make the sx.translations' registerTranslations directive
     available -->
<include package="sx.translations" file="meta.zcml" />

<!-- register our locales using sx.translations -->
<i18n:registerTranslations locales="../locales"
                           missing="../locales/myproj.pot"
                           encoding="utf-8"/>

</configure>

locales 是指向包含标准GNU gettext布局的本地化信息的文件夹的路径,目前由Zope 3支持。

missing 是一个文件,未翻译的msgids将附加到其中的.pot格式。

encoding 是可选的,用于指定“missing”属性中指定的文件的编码。如果未提供,则默认为utf-8。

许可协议

版权所有 (c) 2006-2009 Simplistix Ltd

此软件根据MIT许可协议发布: https://open-source.org.cn/licenses/mit-license.html 有关更多详细信息,请参阅license.txt。

更改

1.2 (2009年4月16日)

  • 记录找到缺失msgids的日期

1.1 (2009年4月12日)

  • 更新到zope.i18n 3.7.0

1.0 (2006年9月18日)

  • 初始发布

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源码分发

sx.translations-1.2.tar.gz (8.6 kB 查看哈希值)

上传时间 源码

由以下支持