django - 如何将 msgid 复制到 gettext 中的 msgstr 以制作 django i18n/translation?

标签 django internationalization translation gettext django-i18n

在用于 JavaScript“djangojs”的 Django i18n 中,错误假设只有语言是英语 - https://code.djangoproject.com/ticket/20280 .

由于这个限制,如果我的语言不是英语,我必须在字符串提取后将所有 msgid 复制到 msgstr。我在网上搜索,但一无所获。

是否有任何工具可以在 *.po 文件上运行,它将所有 msgid 复制到 msgstr?

我需要将波兰语翻译成波兰语,因为如果我不这样做,Django 会将波兰语 JavaScript 翻译成英语 - 有什么问题。欢迎您提出所有建议。

示例 - 波兰语 *.po:

msgid "Polski"
msgstr ""

应该:
msgid "Polski"
msgstr "Polski"

如果没有完成:
Polski = 波兰语无效:

如果完成 Polski = Polski!

这种需要是因为如果波兰语翻译为空,Django 首先加载英语而不是更新翻译,即使不需要也不会翻译任何内容。除了英语之外的所有语言都应该用这个技巧来完成。

最佳答案

是的,它是 gettext 的一部分,称为 msgen:
http://www.gnu.org/software/gettext/manual/html_node/msgen-Invocation.html

关于django - 如何将 msgid 复制到 gettext 中的 msgstr 以制作 django i18n/translation?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16099769/

相关文章:

python - 带有类别 slug 的 django 组子类别

ruby-on-rails - 如何在 Rails 中对非英文字符进行不区分大小写的搜索?

java - Spring MVC i18n 不工作

extjs 4 和翻译

sql - 如何强制结果顺序

django-rest-framework http 在 django 1.5 上以 415 失败

python - 无法为 xml 下载创建 HttpResponse,Django

java - 国际化 Java Swing 桌面应用程序的最佳实践是什么?

openid - 在英语以外的其他语言中使用 RPX 或类似的 openID 选择器

django - 在端口 80 上使用 runserver 运行没有 Apache 的 Django,并且可以在 LAN 外访问