我正在查看用于创建多语言应用程序的gettext
文件.po
。我的理解是,.po
文件msgid
中是源,msgstr
是翻译。因此,我看到了两种定义方式msgid
:
使用全文(例如"My name is %s.\n"
)具有以下优点:
- 打电话
gettext
时可以清楚地看到要翻译的内容 - 翻译文件更容易,
.po
因为它们包含要翻译的实际内容
my-name %s
使用具有以下优点的键(例如):
- 当源文本很长(例如关于公司的段落)时,
gettext
调用更简洁,这使您的视图更清晰 - 更容易维护多个
.po
文件和视图,因为密钥不太可能更改(例如,密钥更改的company-description
可能性远低于实际的公司描述)
因此我的问题是:
有没有一种方法可以结合两种方法的优点来处理文件gettext
,.po
即:
- 使用键来gettext
调用
- 翻译人员能够看到需要翻译的全文?