我几乎觉得这很愚蠢,但是......那里有没有好的样本.po文件?我一直在阅读GNU gettext手册,虽然它指定了一般结构,但它并没有像我希望的那样详细.另外,我真的想利用其更先进功能的实际充实.po文件(如msgctxt,#| msgctxt等),这样我就可以对其运行测试.
关于在哪里找到这样的东西的任何提示?
首先,我的问题类似于这两个问题:
我想使用GNU Gettext实用程序对我的应用程序进行国际化。我设法通过创建translations.properties具有适当键值对的文件来使其工作,但是translations_fr_CA.properties即使我将语言环境显式设置为fr_CA或Locale.CANADA_FRENCH,也无法正常工作。这是我的第一个问题。
第二个也是最重要的问题:由于无法使用漂亮的gettext complete msgid,因此我无法摆脱被废话的.properties文件。我设法将.po文件编译为.class,msgfmt --java2 [...]但是ResourceBundle没有.properties文件将无法加载。
这是我当前测试项目的zip文件:java_gettext_testing.zip
我将zip中包含gnu.gettext.GettextResource简化了。您可以编译javac test/*.java并运行java test.test
谢谢你的帮助!
当我翻译一些东西时,有时会有一些字符串被放入注释中并保留在其他内容之后。这些评论有什么用?
\n\n例如:
\n\n#~ msgid ""\n#~ "You tried to register but your email is already known.\\n"\n#~ "To try again to login, click on the following link:\\n"\n#~ "{}{}"\n#~ msgstr ""\n#~ "Vous avez essay\xc3\xa9 de vous enregistrer, mais votre email est d\xc3\xa9j\xc3\xa0 connu."\n#~ "Pour vous connecter, cliquez sur le lien suivant :\\n"\n#~ "{}{}"\nRun Code Online (Sandbox Code Playgroud)\n\n这是做什么~用的?\n有时会有这样的管道:
#~| msgid "Show your activity"\n#~ msgid "your activities"\n#~ msgstr "Montrer mon activit\xc3\xa9"\nRun Code Online (Sandbox Code Playgroud)\n\n是|为了什么?
.po将 GNU gettext (可移植对象)文件编译为.mo(机器对象)的好处和主要原因是什么?
我看到很多程序.po直接读取/解析。
我没有使用 wordpress,但在他们的文档中它说:
https://codex.wordpress.org/I18n_for_WordPress_Developers
PO 文件被编译为二进制 MO 文件,可以在运行时更快地访问字符串
更快的访问速度是真的吗?PO 只能读取一次并缓存在某个哈希表中,MO 可能也是如此
我想在 gettext.po文件中以某种方式使用变量,例如:
msgid "ui_settings_connect_text"
msgstr "Connect to another running instance of " APP_NAME
Run Code Online (Sandbox Code Playgroud)
以前有人尝试过做这样的事情吗?
我使用msgmerge将我现有的po文件与更新的pot文件合并,例如
msgmerge test-zh_TW.po test.pot > test.po
Run Code Online (Sandbox Code Playgroud)
我发现在msgmerge之后,有些字段被标记为fuzzy,为什么会这样?
(我想知道原因,我知道我可以通过-N关闭它们,但为什么它是第一位的默认值?)
蛋糕版是2.x. 我__用./Console/cake i18n extract命令提取了函数内的所有文本,将default.pot文件移入app/Locale/[iso3]/LC_MESSAGES/default.po并将其翻译成相应的语言.一切都很好.
一段时间后,我在网站中添加了一些新功能,我需要将这些消息添加到po文件中.但是,如果我使用相同的命令,它将创建一个新的锅,我必须手动合并它们或替换为新的po文件并复制/粘贴翻译 - 两者都是太多的手工工作,因为我有几千行文本.
有没有办法告诉蛋糕更新我的po文件只添加那里不存在的消息?
谢谢
我有一个使用php内置的Gettext/PO支持进行国际化的网站
echo _("string to be translated");
该网站处于测试阶段,肯定会有一些字符串无法翻译.为了帮助调试,有没有办法记录gettext错误,即PO没有在PO文件中找到任何匹配条目的日志字符串?
使用Angular-gettext,我们从html中提取带注释的字符串,如下所示Gruntfile.js:
grunt.initConfig({
nggettext_extract: {
pot: {
files: {
'po/template.pot': ['src/views/*.html']
}
},
},
})
Run Code Online (Sandbox Code Playgroud)
是否有可能从javascript文件中提取字符串?
我有一个案例,我正在从angularjs控制器生成字符串:
<textarea ng-model="generatedCSV"></textarea>
Run Code Online (Sandbox Code Playgroud)
CSV的标题行是:
"Full Name", "Email"
Run Code Online (Sandbox Code Playgroud)
哪些需要翻译成其他语言.
使用angular-gettext有一个很好的方法吗?
po ×9
gettext ×7
translation ×4
angularjs ×1
cakephp ×1
cakephp-2.x ×1
gnu ×1
java ×1
javascript ×1
localization ×1
mo ×1
php ×1
poedit ×1
variables ×1