标签: gettext

是否可以将两个.po翻译文件组合在一起?

我们有两个.po文件,每个文件来自一个软件的不同分支.

我们需要将它们组合成一个.po文件.

这两个文件之间存在重复,理想的处理方式是使一个文件的字符串受到青睐(一致).

我们有一个SUSE系统,因此--output-file似乎没有根据我从网络搜索中找到的手册页忽略/合并Sun版本所具有的重复项的行为.(我们没有太阳机方便!)

translation gettext msgfmt

24
推荐指数
2
解决办法
2万
查看次数

是否有用于解析gettext PO文件的Java库?

有谁知道一个Java库,它会让我解析.PO文件?我只想创建一个ID和值的Map,这样我就可以将它们加载到数据库中.

java api scala gettext po

22
推荐指数
3
解决办法
8475
查看次数

PHP本地化最佳实践?gettext的?

我们正在使我们的网站国际化,允许多种语言.

我已经研究过php的"gettext"但是,如果我理解正确,我会看到一个很大的缺陷:

如果我的网页让"Hello World"作为静态文本.我可以把字符串作为<?php echo gettext("Hello World"); ?>,使用工具生成po/mo文件.然后我会把文件交给译员继续工作.

几天后,我们想用英文改成文字说"Hello Small World"?我是否更改了gettext中的值?我是否创建了一个英文PO文件并在那里进行更改?如果您更改了gettext,它会将其视为一个新字符串,您将立即松开当前的翻译...

在我看来,渐渐地,php文件的内容到处都会有旧文本.或者翻译人员可能必须被告知"当你看到Hello World,而不是翻译Hello Small World".

我不知道我感到困惑.

在其他编程语言中,我看到他们使用的关键字如web.home.featured.HelloWorld.

在PHP中处理翻译的最佳方法是什么?

谢谢

php localization gettext internationalization

21
推荐指数
3
解决办法
1万
查看次数

Django i18n:翻译的常见原因没有出现

我正在制作一个多语言的Django网站.我创建了一个消息文件,填充并编译它.我用我想要的语言(希伯来语)检查了网站(在这种情况下是管理员),并且大多数短语都像希伯来语一样出现,但有些则没有.我检查了源代码,这些仍然显示为_('Whatever')他们应该,它们也被翻译在消息文件中,是的,我记得这样做compilemessages.

翻译的一些常见原因是什么?

python django translation gettext django-multilingual

20
推荐指数
6
解决办法
6260
查看次数

如何在GTK3下将文本域绑定到gettext的本地文件夹

随着gettext你要么可以使用默认的系统范围内的区域设置目录,或使用指定一个自己bindtextdomain.当编译的.mo转换文件在系统的默认位置不可用时,直接从源运行程序时这很有用.

在Python中你会这样做:

import gettext
from gettext import gettext as _
gettext.bindtextdomain('nautilus-image-manipulator', '/path/to/mo/folder')
gettext.textdomain('nautilus-image-manipulator')
Run Code Online (Sandbox Code Playgroud)

其中/path/to/mo/folder包含熟悉的fr/LC_MESSAGES/nautilus-image-manipulator.mo结构.这样的电话:

print _("Delete this profile")
Run Code Online (Sandbox Code Playgroud)

从本地.mo文件返回正确翻译的字符串,非常感谢.

在GTK + 2/pygtk中,存在gtk.glade.bindtextdomain,但我想知道GTK + 3/PyGObject中是否有任何等价物.

为了给你一个具体的例子,这是Nautilus Image Manipulator的UI是如何从它的Glade文件创建的:

from gi.repository import Gtk
builder = Gtk.Builder()
builder.set_translation_domain('nautilus-image-manipulator')
builder.add_from_file(ui_filename)
return builder
Run Code Online (Sandbox Code Playgroud)

不是从Glade文件构建的UI部分(即从代码中设置)显示正确翻译,但Glade文件中的字符串仍显示为英文.

在我看来,在打电话builder.bind_text_domain('nautilus-image-manipulator', '/path/to/mo/folder')之前我错过了某种呼叫builder.set_translation_domain......任何想法如何执行此操作?

python translation gettext pygobject gtk3

20
推荐指数
1
解决办法
3801
查看次数

如何在不重启Apache的情况下清除php的gettext缓存,也不更改域名?

这是php手册中的一小段代码片段:

putenv('LC_ALL=zh_CN');
setlocale(LC_ALL, 'zh_CN');

bindtextdomain('domain', './locale');
textdomain('domain');

echo gettext('Hello');
Run Code Online (Sandbox Code Playgroud)

哪个会输出domain.mo文件中定义的,但问题是只要Apache正在运行,gettext()总是返回缓存的结果.

如果我改变的翻译你好您好domain.mo,它仍将输出你好.

但是,通过更改和新名称的domain参数可以解决此问题.像到.但是每次更新文件时编辑php文件真的很痛苦.bindtextdomain()textdomain()"domain""domain2".mo

有没有更好的方法来做这个,比如删除一些文件夹或调用一些PHP函数来完成这项工作?这样我就可以为此编写一个小脚本.

php gettext php-gettext

20
推荐指数
3
解决办法
2万
查看次数

在线编辑gettext文件?

在线编辑gettext文件,有可能吗?

我对我所有的PHP项目使用gettext,但是有一个小问题的方面,想要我的用户可能会将我的语言从丹麦语翻译成挪威语,但是在这种情况下它是enste我知道是我需要从Poedit导出我的文件有任何.其他可以导出/导入我的文件的软件?对于Poedit我可以用export作为.

希望我能帮助我一点.

php gettext php-gettext

19
推荐指数
2
解决办法
6488
查看次数

如何使用PO编辑器将新字符串添加到*.po文件中

我手动创建了一个文件:test.po,内容如下:

msgstr"问候"
msgstr"Hello World"

现在我可以在编辑器中编辑翻译(hello world),如"poedit"和"GTranslated"(我正在使用Ubuntu).我甚至可以为该翻译添加评论.然而,"poedit"和"GTranslated"都不会让我添加一个新的翻译字符串 - 我在网上看起来没有用,看着其他编辑的截图,似乎没有一个"新"按钮.

我错过了什么?使用"普通"文本编辑器编辑新密钥然后在这些PO编辑器中编辑它们(无论它们可能是什么)似乎很愚蠢.(如果你不能说我是这个'gettext'世界的新手 - 我正在用Zend/PHP构建一个网站.)

translation gettext poedit

18
推荐指数
3
解决办法
4万
查看次数

找不到msguniq.确保安装了GNU gettext工具0.15或更新版本.(Django 1.8和OSX ElCapitan)

我正在尝试通过遵循精彩的Django文档来国际化Django应用程序.问题是当我尝试运行命令来创建语言文件时:

python manage.py makemessages -l fr
Run Code Online (Sandbox Code Playgroud)

它输出一个错误:

CommandError: Can't find msguniq. Make sure you have GNU gettext tools 0.15 or newer installed.
Run Code Online (Sandbox Code Playgroud)

我的配置:

  • 操作系统:OSX El Capitan v10.11.3
  • Python:v3.5
  • Django:v1.8

python django macos gettext osx-elcapitan

18
推荐指数
4
解决办法
9803
查看次数

如何使用带有python> 3.6 f-strings的gettext

以前您将使用gettext以下内容:

_('Hey {},').format(username)
Run Code Online (Sandbox Code Playgroud)

但是新的Python的f-string怎么样?

f'Hey {username}'
Run Code Online (Sandbox Code Playgroud)

python gettext f-string

18
推荐指数
2
解决办法
1314
查看次数