标签: gettext

PHP Gettext问题(比如非线程安全的?)

我想开始使用gettext来处理我在Web项目上的翻译(PHP 5).由于它是一个广泛使用的标准,具有良好的声誉,它似乎是最好的选择.

但是,我也听到有关服务器不兼容的事情,并且它是非线程安全的.这对我使用它的项目意味着什么?由于我构建了许多人使用的东西,因此我的代码工作非常重要.

我们是在谈论小问题(比如仍在使用PHP 4的人)还是主要的问题,比如在websevers上分发和安装gettext的问题很少?

php gettext internationalization

11
推荐指数
1
解决办法
3760
查看次数

gettext如何处理动态内容?

在php(或者通常是gettext)中,当gettext看到变量为动态内容时,它会做什么?

我有2个案例.

1)让我说我有<?=$user1?> poked John <?=$user2?>.也许在某种语言中,单词的顺序是不同的.gettext如何处理?(不,我不是在构建facebook,这只是一个例子)

2)假设我将一些类别存储在数据库中.它们很少,但它们存储在数据库中.如果我这样做<?php echo gettext($data['name']); ?> 会怎么样?我希望翻译人员也翻译这些类别名称,但它是否必须在数据库中完成?

谢谢

php gettext internationalization

11
推荐指数
2
解决办法
9600
查看次数

如何在po gettext文件中标记空翻译(msgstr)?

我发现是字符串的翻译(msgid)是空的,所有gettext工具都会将字符串视为未翻译.

这有解决方法吗?我确实希望有一个空字符串作为此项目的翻译.

gettext po

11
推荐指数
2
解决办法
1650
查看次数

合并2个GetText文件

我有两个中型Web应用程序,我正在合并为一个.它们都是本地化的GetText并且具有大量的常见字符串,因此手动合并它们会非常烦人.合并这两个PO文件的最快方法是什么?

web-applications gettext

10
推荐指数
2
解决办法
3629
查看次数

xgettext vs gettext

我有几个问题:

我知道gettext是什么.我读了一些他们提到xgettext的帖子,并对两者之间的区别感到好奇.

如何在Windows上安装xgettext?

最后,是否有人有关于如何安装库的教程php-gettext http://savannah.nongnu.org/projects/php-gettext/(这个通常不附带PHP)我已经读过它了在一篇文章中,我不知道如何让它在Windows中运行.问题是,有时当你进行更改时,你需要重启Apache以使用PHP附带的gettext查看新数据(但是使用库不需要重新启动它)所以我想使用库进行开发.谢谢!

php gettext xgettext

10
推荐指数
1
解决办法
8131
查看次数

在多语言网站中使用PHP Gettext扩展与PHP数组?

到目前为止,我见过的关于使用gettext而不是数组的唯一两件好事是我不必创建"问候""子数组"(或其所谓的).而且我不必为"默认语言"创建文件夹.

是否有其他使用gettext和php数组用于多语言网站的优点和成本?

使用GETTEXT:

西班牙/ messages.po:

#: test.php:3
msgid "Hello World!"
msgstr "Hola Mundo"
Run Code Online (Sandbox Code Playgroud)

index.php文件:

<?php echo _("Hello World!"); ?>
Run Code Online (Sandbox Code Playgroud)

?的index.php LANG =西班牙语:

<?php echo _("Hello World!"); ?> turns to Hola Mundo
Run Code Online (Sandbox Code Playgroud)

使用PHP ARRAYS:

lang.en.php

<?php
$lang = array(
    "greeting" => "Hello World",
);
?>
Run Code Online (Sandbox Code Playgroud)

lang.es.php

<?php
$lang = array(
    "greeting" => "Hola Mundo",
);
?>
Run Code Online (Sandbox Code Playgroud)

index.php文件:

<?php echo $lang['greeting']; ?> greeting turns to Hello World
Run Code Online (Sandbox Code Playgroud)

的index.php?LANG =西班牙语

<?php echo $lang['greeting']; ?> greeting turns to Hola Mundo
Run Code Online (Sandbox Code Playgroud)

(我首先使用gettext,但我的共享免费托管Zymic不支持.我不想使用Zend_translate,我发现它对我的简单任务来说太复杂了,所以我最终使用了php define,但后来又有人告诉我应该使用数组)

php arrays multilingual gettext

10
推荐指数
3
解决办法
9549
查看次数

Django模型翻译:在数据库中存储翻译或使用gettext?

我在django网站的I18N流程中.

我选择了两个可能很好的django-apps:

从您的角度来看,这两种技术的优缺点是什么?

django translation gettext django-models internationalization

10
推荐指数
1
解决办法
4966
查看次数

使用Babel:如何在GNU gettext PO文件中保护翻译者评论(和旧翻译)?

使用基于Python的Babel gettext实用程序,是否有任何技术可以保留文件更新中的翻译者注释和旧("过时")翻译(标记为#~)?.po.pot

第一次过时的翻译在.po文件中并pybabel update运行时,翻译将标记为#~.这样,一方面,它被视为注释,直到翻译人员查看并更改它才会被使用,但另一方面,它不会被删除,因此翻译人员可以引用它,或者复制文本从它到其他翻译.

但是,下次pybabel update运行时,会从文件中永久删除所有注释.这意味着标记的翻译#~也会被删除.

例如,使用Babel版本0.9.6和Jinja2版本2.6,以及以下文件:

./babel.ini:

[jinja2: **/templates/**.html]
encoding = utf-8
Run Code Online (Sandbox Code Playgroud)

./templates/test.html:

<html><body>
<h1>{% trans %}My website{% endtrans %}</h1>
</body></html>
Run Code Online (Sandbox Code Playgroud)

./i18n/pt_PT/LC_MESSAGES/messages.po:

# ... header stuff generated from
#     pybabel init -l pt_PT -d i18n -i i18n/messages.pot ...

# Don't forget, I want to remember something about this!
#~ msgid "My web page"
#~ msgstr "A minha página de …
Run Code Online (Sandbox Code Playgroud)

python gettext babel

10
推荐指数
1
解决办法
991
查看次数

为什么gettext没有db存储选项?

我正在使用Django在基于Web的应用程序上做一些i18n,它使用gettext作为其i18n基础.翻译应该存储在数据库中似乎是一个明显的想法,并不难做到,但文件系统上的po文件仍在使用中.为什么是这样?

我目前的怀疑是,gettext作为一个完善的软件包的可靠性/熟悉程度简直超过了开发数据库的优势所带来的好处.还有其他重要原因继续将翻译存储在文件系统中吗?

django web-applications gettext internationalization

10
推荐指数
1
解决办法
2376
查看次数

使用gettext翻译R脚本

是否可以使用类似gettext的内容来翻译R脚本.如果是这样,怎么样?如果没有,我还有其他选择吗?

localization r gettext internationalization

10
推荐指数
1
解决办法
1032
查看次数