问题标签 [gettext]
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.
php - PHP Gettext 问题(比如非线程安全?)
我想开始使用 gettext 来处理我对 Web 项目 (PHP 5) 的翻译。由于它是一个广泛使用的标准,享有良好的声誉,因此它似乎是最佳选择。
但是,我也听到有关服务器不兼容的事情并且它是非线程安全的。这对我使用它的项目意味着什么?由于我构建了许多人使用的东西,因此我的代码能够正常工作非常重要。
我们是在谈论小问题(如仍在使用 PHP 4 的人)还是在网络服务器上分发和安装 gettext 低等大问题?
html - 获取 HTML 或 LaTeX 的文本?
有类似gettext
HTML 或 LaTeX 的东西吗?它非常适合生成简单的双语网页或应保持同步的 LaTeX 文档。已经有类似的东西了吗?我想肯定有一些 Perl 脚本,但我找不到。:-)
谢谢!
php - 如何将 PHP 的 gettext 与 python 的 gettext 结合使用?
我有一个应用程序,我正在将其部分迁移到 Django,但 Python 和 PHP 具有不同的字符串格式,例如,"Hello %1s"
在 PHP 与"Hello {0}"
Python"Hello {name}"
中。
我们将维护这两个应用程序一段时间,但有没有办法在 PHP 中使用 Python 格式,反之亦然?
php - 如何让 Dreamweaver 显示 php gettext 文本?
是否有允许 Dreamweaver 在我键入时实际显示“Hello World”的扩展或设置<?php echo _("Hello World"); ?>
?
相反,它只显示一个“php”图标。
我的意思是,我通常将 HTML 和 PHP 混合在一起,例如:
这样,在 Dreamweaver 中,我可以在设计模式下轻松查看页面的总体布局和静态文本(Dreamweaver 只是用 php 图标替换 php 代码)。
但是,现在我需要使用 php 'gettext' 进行国际化。为此,我必须这样做:
所以现在我的静态文本在 Dreamwever 的眼中变成了 php 代码,所以它不再显示了。我想知道是否有任何扩展或其他东西可以使我的工作更轻松。
php - 如何在 Dreamweaver 或 Notepad++ 中创建宏/快捷方式
我从来没有用任何程序制作过“宏”或类似的东西。
我正在移动我的 php 代码以使用“gettext”,所以我必须查找所有静态文本并进行更改。
例如,我需要更改page title
为<?php echo _('page title'); ?>
.
我不认为有一种方法可以一次性更改所有内容,因为它涉及查看它是否看起来像静态文本,但我确信在其中一个编辑器中可能会选择一个文本,按一些键盘快捷键,它会代替我。
那可能吗?如何?
我手头有 Dreamweaver 和 Notepad++。我愿意使用其他工具。
谢谢!
php - gettext 如何处理动态内容?
在php中(或者可能是一般的gettext),当gettext看到动态内容的变量时会做什么?
我有2个案例。
1)假设我有<?=$user1?> poked John <?=$user2?>
。也许在某些语言中,单词的顺序是不同的。gettext 是如何处理的?(不,我不是在建立 facebook,这只是一个例子)
2)假设我将一些类别存储在数据库中。它们很少,但它们存储在数据库中。如果我这样做会发生什么<?php echo gettext($data['name']); ?>
?我希望翻译人员也翻译这些类别名称,但必须在数据库本身中完成吗?
谢谢
php - PHP:获取文本问题
我似乎无法让 gettext 工作,在这里。
我正在使用 MAMP Pro 并phpinfo();
说 gettext 已启用。
我遵循了本教程:http: //zez.org/article/articleview/42/1/
- 我在我的代码中声明了我的字符串,如下所示:
_('test string');
- 然后我跑了
xgettest -L PHP test.php
,它生成了我的messages.po
文件。 - 我在poedit中打开了这个文件并翻译了我的字符串,然后保存了这个文件,这就是一个
messages.mo
文件。 - 我拿了两个文件
.po
并将.mo
它们移动到[webroot]/locale/es/LC_MESSAGES/
(在这种情况下,我的翻译是西班牙语) 在我的代码中,我设置了以下内容:
$lang = $_SESSION['lang']; // available to all views that include this file
putenv('LC_ALL='.$lang);
bindtextdomain('messages','./locale');
textdomain('messages');
...我可以轻松地在和
$_SESSION['lang']
之间切换。en
es
我重新加载我的页面,然后单击切换到的链接
es
,但我的字符串仍然显示为英文版本而不是西班牙文版本。切换回en
显示没有变化;它总是英文版本。
我在任何地方都没有收到错误消息,所以我对为什么会遇到这个问题有点迷茫。谁能给我一些指导/帮助?我错过了什么?
zend-framework - i18n:gettext + Zend_Translate - 命名空间/将字符串分组在一起?
我正在将当前框架的 i18n 方法从将语言字符串存储在数组中的 Localization 类更新为gettext
+ Zend_Translate
。
有一种情况让我感到困惑,单个字符串输出很简单,但使用我当前的方法,我将某些字符串组合在一起,用于城市、州、前缀等集合,以便它们可以被操作并轻松转换为 html (例如下拉选项)。
我是否别无选择,只能存储如下所示的数组,以便它们仍然组合在一起?或者是否有某种我在使用时遗漏的方法gettext
,它可以让我以更方便的方式做到这一点?
重申一下,我希望能够基本上保留我的方法,其中调用是这样使用的:
这将从本地化字符串集合中获取一组前缀,包括文本值和实际表单值。
我目前仍然依赖数组,然后对它们应用 Zend_Translate 调用。
zend-framework - 有人可以分解本地化文件( .mo , .po )生成的工作原理吗?
我试着摸索gettext
。
这是我认为它的工作原理 -
首先,您使用某种 po 编辑器并告诉它为您的应用程序扫描目录,创建这些“.po”文件,应用程序为每个扫描的文件创建一个 po 文件,其中包含编程语言中的字符串,然后将它们编译为二进制 mo 文件,对其进行gettext
解析,并且您使用高级 API 调用方法,例如Zend_Translate
并指定要使用的方法gettext
,可以将其设置为缓存翻译并返回这些翻译。
我真正不清楚的部分是如何真正完成 po 文件的编辑,它是手动的 - 对吗?然后,当编译完成时,应用程序当然依赖于二进制 mo 文件。
如果有人可以提供有用的 linux 应用程序来编辑.po
文件,我将不胜感激。
php - Gettext:翻译带有 HTML 的字符串?
我当前的实现是基于数组的在字典中存储键和值,例如:
我意识到在这样的字符串中存储 html 可能是一个坏主意,但是如果我使用 gettext 那么在我的 .mo/.po 文件中我应该如何处理存储类似的字符串?我应该只存储单词,例如“粘贴a”和“下面的URL”和“flickr”吗?