django中额外的gettext关键字处理

django-extra_keywords的Python项目详细描述


版权所有2014-2015 Thomas Khyn

使用django 1.4到1.8以及所有受支持的python版本进行测试。

关于

djangomakemessagemanagement命令解析应用程序的代码 如果要翻译的字符串是 由类似getText的函数调用(getText,ugettext,ngettext, 或者_别名。

但是,使用_以外的其他别名是很常见的,例如 懒翻译,可以使用_l

在版本1.7之前,django不提供指定其他别名的方法 可用于翻译字符串的这个插件填补了这个空白,没有 必须修补django代码本身。

在版本1.7中,可以在自定义 makemessages命令。使用此应用程序可省去编程的麻烦 自定义命令。

安装

尽可能简单,使用pip

pip install django-extra_keywords

然后需要将'extra_keywords'添加到INSTALLED_APPS中。 请注意,将此应用程序安装在 它只能在开发设置模块中使用。

用法

安装后,您可以:

  • settings模块中将GETTEXT_EXTRA_KEYWORDS定义为 包含要添加的关键字的元组或列表:

    GETTEXT_EXTRA_KEYWORDS = ('_l', '_n:1,2')
    
  • 或者从命令行使用它,使用--extra-keyword选项 否,若要添加多个关键字,必须重复此选项):

    manage.py makemessages [...] --extra-keyword=_l [...]
    

关键字格式

为一个参数函数(ugettext,^{tt14})使用别名时$ …),只需将别名用作关键字。当使用多个别名时 参数函数,需要指定它们,如下所示 表格:

Function typeKeyword format
gettext*X
ngettext*X:1,2
pgettext*X:1c,2
npgettext*X:1c,2,3

示例:如果_nungettext的别名,则要在中使用的关键字 GETTEXT_EXTRA_KEYWORDSmakemessages命令是'_n:1,2'

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java编辑并重新运行spring引导单元测试,无需重新加载上下文即可加快测试速度   为什么我不能做演员?   java为什么是线程。join通常用于停止安卓中的线程   java从weblogic服务器调用JSON POST REST服务时收到400:错误请求   java在DeviceAdmin模式禁用时设置身份验证?   java SortedMap的keySet()能否始终安全地强制转换到SortedSet?   安卓 java。lang.NoSuchMethodException可包裹类   java JOGL库安装   javatomcat内存管理   java使用getString()中的变量   java将最小星号设置为评级栏   Java中字符串相等的println()方法。。。它到底是如何工作的?   java如何从文本中输出的数组中放入随机图像