问题标签 [po]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1955 浏览

json - 从纯 html 文件创建用于翻译的 .po 文件的工具

我正在使用http://i18next.com/来翻译托管在 github gh-pages 上的静态网站。

有什么工具可以用来首先从 index.html 文件中提取并创建一个 index.po 文件,翻译人员可以在其中本地化/国际化页面,然后使用http://pypi.python.org/之类的工具pypi/pojson将此 po 文件转换为 json 以供 i18next 使用?

0 投票
1 回答
2509 浏览

python - 在 Python 中使用 polib 修改/更新 po 文件中的条目

polib似乎是在 Python 中处理 gettext/po 文件的首选库。文档展示了如何遍历消息字符串、保存 po 和 mo 文件等。但是,我不清楚,如何编辑特定条目?

比方说,我遍历现有 po 文件中的所有消息,并以带有 textareas 的 HTML 表单显示它们。通过提交表单,我得到 - 例如 - 原始 msgid = "Hello World" 和 via textarea 翻译的 msgstr = "Hallo Welt"

po 文件中的原始部分可能如下所示:

或设置模糊标志:

现在我如何在实际的 po 文件中更新这个特定的翻译?如果这条消息被标记为“模糊”,我该如何删除这个标志?

任何帮助表示赞赏...

0 投票
3 回答
4055 浏览

django - django po文件中的换行符

如何在.po文件内的翻译字符串中使用换行符?目前我添加了“ \n ”并{{msg|linebreaks}}在我的模板中使用,但字符串打印在一行中......我怎样才能在多行上打印它?

0 投票
0 回答
1208 浏览

localization - 如何合并两个 .po 文件?

我有 2 个问题来合并 2 个 .po 文件。

  1. 我有 1 个 .po 文件 (trans.po) 用于我的应用程序本地化,还有一个 ( transNew.po) 我最近制作。我需要合并它们。但是当我运行以下命令时,我总是会得到与 相同的内容transNew.pot,根本没有旧的翻译。

    msgmerge --previous trans.po transNew.pot -o transfinal.po

  2. 我之前使用 textedit 手动添加了一些翻译字符串trans.po,我不想丢失它们,即使上面的命令可以成功,我也会丢失这些字符串。我找不到任何选项可以解决它。

0 投票
2 回答
2983 浏览

php - PO、MO 翻译文件

我想制作一个多语言应用程序 我听说过.po文件但我找不到它 我制作了这段代码

我在我的应用程序中创建了一个名为的目录languages并将ar_EG.po文件放入其中并尝试languages\ar\LC_MESSAGES了但它也不起作用

0 投票
1 回答
514 浏览

django - 如何让 django 在启动时编译 .mo 文件?

我想要实现的是当 django 项目启动时,让它以跨平台的方式自动运行编译消息。这样,mo 文件就不需要检查到源代码管理中,并且当在分支中添加翻译然后合并回冲突时,不会发生冲突。

我遇到了这个问题,因为从我收集的信息来看,compilemessages 取决于 settings.py,所以如果你尝试从 settings.py 运行它,它会检测到循环引用然后不运行。

0 投票
1 回答
707 浏览

internationalization - 将两个 .po 翻译文件一旧一新合并替换的最佳方法/工具是什么?

我想将两个 .po 文件合并在一起并生成新的 .po 文件。我假设许多人会提供不同的翻译,需要合并为一个。

首先,我想用其他 .po 文件中的新翻译替换 .po 文件中的所有旧翻译,并生成新的合并文件以用于批处理或 GUI。怎么做?

其次,我想合并两个 .po 文件,并在 GUI 中手动决定如果发生冲突,哪种翻译是最好的,只需在空翻译上添加所有新翻译。怎么做?

请提供一些解决方案,因为问题微不足道,但我花了很多时间寻找合适的工具,但没有结果。

0 投票
2 回答
2339 浏览

localization - 使用 gettext 和 .po 文件时组合键和全文

我正在查看用于创建多语言应用程序的gettext文件.po我的理解是,.po文件msgid中是源,msgstr是翻译。因此,我看到了两种定义方式msgid

使用全文(例如"My name is %s.\n")具有以下优点:

  • 打电话gettext时可以清楚地看到要翻译的内容
  • 翻译文件更容易,.po因为它们包含要翻译的实际内容

my-name %s使用具有以下优点的键(例如):

  • 当源文本很长(例如关于公司的段落)时,gettext调用更简洁,这使您的视图更清晰
  • 更容易维护多个.po文件和视图,因为密钥不太可能更改(例如,密钥更改的company-description可能性远低于实际的公司描述)

因此我的问题是:
有没有一种方法可以结合两种方法的优点来处理文件gettext.po即:
- 使用键来gettext调用
- 翻译人员能够看到需要翻译的全文?

0 投票
1 回答
2462 浏览

localization - Orchard Localization PO 文件使用和 Vandelay.TranslationManager

我试图了解如何管理和翻译 Orchard PO 文件,如下所述: http ://weblogs.asp.net/bleroy/archive/2011/01/13/creating-and-maintaining-orchard-translations.aspx

当我尝试使用在互联网上找到的一些编辑器时,问题就开始了,我注意到:

  • Vandelay.TranslationManager 生成的果园翻译文件可能无效
  • 在外部编辑器中编辑的文件可能会破坏 PO 翻译文件并阻止使用同步(有效键被标记为过时,新键被添加为未翻译)

首先,我试图获得 PO 文件格式的可靠解释,我在这里找到:http: //pology.nedohodnik.net/doc/user/en_US/ch-poformat.html

规格摘要:

  • PO 文件中的消息由其 msgid 字符串唯一标识
  • 当在不同的文件中使用相同的 msgid 时,可以使用可选的上下文来区分相同的 msgid

在 Vandelay.TranslationManager 和所有翻译文件中挖掘了一下之后,我想我找到了问题所在。

Vandelay.TranslationManager 将两个值的组合假定为唯一键: - #| msgid(用作翻译键) - msgctxt(可选上下文,在 Orchard 中始终定义)

问题是 Vandelay.TranslationManager 用作唯一键 "#| msgid" 而不是 "msgid" "#| msgid" 用于模糊字符串并说明以前未翻译的字符串,在果园中用作额外信息,看起来更像是“ #。”

提取的 PO 文件示例:

请注意,即使“#| msgid”不同,根据规范,上面的两个条目确实是重复的。

现在的问题是:这只是一个错误还是一个精确的设计?Afaik Vandelay.TranslationManager 是在 Orchard 中处理 Po 文件的推荐方法。还有其他人在使用此功能时遇到问题吗?谢谢

0 投票
1 回答
1968 浏览

c++ - 提升翻译:po 文件不起作用

我曾使用 boost::locale 制作多语言 exe,但它不起作用。exe 始终输出“Hello World”。它如何输出“您好”?

我使用了来自http://www.boost.org/doc/libs/1_53_0/libs/locale/doc/html/messages_formatting.html的示例代码

并制作一个po文件和一个mo文件。po文件是: