如何说服其他程序员使用Gettext?

Ren*_*soo 5 javascript php gettext

我已经在我工作的许多项目中成功使用了GNU Gettext,但在我最近的工作中,我突然发现自己被迫使用一个非常笨拙的本地化系统.

当前系统将翻译存储在数据库中,并添加新的翻译,如下所示:

  • 添加带有翻译键的函数调用到源代码,例如 print translate('foo');
  • 将少量SQL INSERT语句添加到translations.sql文件中.
  • 用名称创建文件 (current revision nr + 1).sql
  • 在数据库中执行.sql文件.
  • 提交您的更改(在其他人设法提交并更改当前修订号之前).

所有这些过程都是完全手动的,即使您需要修复一个小错字,也必须重复几乎全部.不支持复数形式.整个翻译数据库非常混乱,因为翻译几乎从未被删除 - 仅添加和更新.

我已经尝试了几个参数来说服其他开发人员(特别是一个特定的开发人员):

  • 我已经谈到Gettext正在建立标准,并且有许多工具可用于处理PO文件.
  • 我试图解释在数据库中存储翻译没有将其存储到文本文件中的好处 - 我们只是按键从数据库中检索翻译,仅此而已.
  • 另一个开发人员正在开发我们应用程序的PHP部分,PHP内置了Gettext.我正在开发JavaScript方面,它没有Gettext支持,但我过去已经为它构建了自己的工具.
  • 我们的应用程序不是那么大,即使手动完成,从旧系统转换为Gettext也需要花费大量时间,我确信它可以轻松实现自动化.
  • 我甚至成功地将Gettext用于我们公司的一个小应用程序.

但人们仍然不相信.我可能做错了什么?

编辑:

在发布此问题几个月后,我们现在终于转换到Gettext.当我们需要支持两种以上语言时,我们当前系统的缺点对于那些抵制它的人来说更加明显.

ste*_*ell 6

你做错了什么告诉他们如何解决他们心中不存在的问题.

你需要让他们看到它实际上是一个需要解决的问题.

编辑:
很高兴看到你最终到达那里,第二个语言似乎让他们承认房间里的大象!


chi*_*s42 2

我可以为您提供几种选择:

  • 您可以尝试估计使用您的方法节省的时间(金钱)。
  • 您可以展示(演示?)维护起来有多容易(更少的麻烦)。
  • 您可以继续使用现有的系统。