Firetext 应用的翻译

历史

Firetext 是一款 开源 文字处理器。该项目由 @HRanDEV@logan-r 和我 (@Joshua-S) 于 2013 年初启动。该项目的目的是提供友好的编辑体验,并填补 Firefox OS 功能上的主要空白。

Firetext 0.3Firetext 0.3

自启动以来的一年里,Firetext 成为 Firefox 应用商店中最受欢迎的十大生产力应用程序之一。我们添加了许多新功能,Firetext 现在支持 Dropbox 集成,用户可以将文档存储在云端。我们还添加了夜间模式,该功能会根据周围的光线水平自动调整界面。还包括新的界面设计、更好的性能和 Web 活动支持。

尽管拥有所有这些功能,Firetext 的受众仍然很小。我们只支持英语,根据 Exploredia 的数据,世界上只有 17.65% 的人口能流利地说英语。因此,我们决定对 Firetext 进行本地化。

方法

在阅读了关于 本地化 Firefox 应用 的 Hacks 文章后,我们决定使用 webL10n 和 Google 翻译的组合作为我们的本地化工具。我们决定将语言本地化为我们的贡献者所知的语言(西班牙语和德语),然后使用 Google 翻译完成其他语言。最终,我们计划建立一个社区,为翻译做出贡献,而不是仅仅依赖于经常不稳定的机器翻译。

发现

几个月过去了,仍然没有进展。这项任务非常艰巨,我们不知道该怎么做。这种停滞一直持续到我偶然发现另一篇 Hacks 文章,本地化 Firefox OS 模版应用程序

这简直是梦想成真。Mozilla 启动了一个计划,帮助小型应用开发者进行本地化流程。我们可以从他们更大的贡献者群体中获益,同时帮助他们向外国社区提供更多应用程序。

我立即联系了 Mozilla 关于这个计划,并被邀请到 在 Transifex 上建立一个项目。比赛开始了!

代码

我首先创建一个 locales 目录,用于存放我们的翻译文件。我在该目录中创建了一个 locales.ini 文件,以向 webL10n 显示在哪里找到翻译。最后,我为每个区域设置添加了一个文件夹。

locales.ini - Firetext

然后,我在 html 文件中用 data-l10n-id 属性标记每个可翻译元素,并通过使用 webL10n 的 document.webL10n.get() 或 _() 函数对 alert() 和其他脚本通知进行本地化。

现在是添加翻译的时候了。我在 locales/en_US 目录中创建了一个 app.properties 文件,并从 locales.ini 中引用它。完成此操作后,我添加了所有需要翻译的字符串。

app.properties - Firetext

webL10n 会自动检测用户的默认区域设置,但我们还需要能够手动更改区域设置。为了实现这一点,我在 Firetext 设置面板中添加了一个选择器,其中包含所有预期的语言。Settings - Firetext

即使完成所有这些步骤,Firetext 实际上并没有进行本地化;我们只有英语翻译。这就是 Transifex 派上用场的地方。

翻译

我在 Transifex 上为 Firetext 创建了一个项目,然后为我们在 GitHub 问题中使用的每种语言添加了一个团队。然后,我将 app.properties 文件上传为资源。

我还将我们 manifest.webapp 中的应用描述上传为单独的资源进行翻译。

Firetext on Transifex

在几个小时内,翻译开始涌入。在第一个星期内,希伯来语、法语和西班牙语的翻译就完成了!我通过下载翻译属性文件并将其放置在相应的区域设置目录中,将它们添加到我们的 GitHub 存储库中。然后,我在设置面板中启用该语言。整个流程非常简单快捷。

提交

现在 Firetext 已经完成了本地化,我需要将其提交回 Mozilla 应用商店。这是一个相当简单的流程;只需下载压缩文件,解压缩 git 文件,并添加我们错误报告系统的 API 密钥即可。

不到一天的时间,Firetext 就获得了批准,并可供全球用户使用。Firetext 现在提供八种语言,我迫不及待地想看看未来的反馈!

最后的想法

回顾过去,可能对 Firetext 进行本地化最困难的部分是支持 RTL(从右到左)语言。这是一个相当艰巨的任务,但结果完全值得付出努力!总而言之,本地化是我们实施的最简单的功能之一。

正如瑞士应用开发者 Gerard Tyedmers 所说,他是 grrd’s 4 in a Rowgrrd’s Puzzle 的创建者,

“…我可以说,本地化应用程序绝对值得付出努力。它真的有助于找到新用户。

l10n.js 解决方案是一个非常有用的工具,易于实施。我很高兴能够以最小的代码影响添加更多语言…”

我完全同意!

Firetext Editor - Spanish

编者注:邀请

你也有像 Firetext 一样的很棒的应用程序吗?你也被邀请了! 我们鼓励你加入 Mozilla 在 Transifex 上的应用程序本地化项目。通过本地化应用程序,你可以扩大受众范围,包括来自世界各地的用户,并通过这样做,帮助支持全球开放 Web 应用用户群体。

对于翻译人员来说,移动应用本地化带来了一些有趣的翻译和界面设计挑战。你需要以移动规模思考你正在使用的字符串,因为它们是在小屏幕上的交互元素。本地化人员在创建界面方面发挥着重要作用,使不同国家/地区的人们可以轻松地使用和理解该界面。请 参与 Firetext我们的其他项目

这个项目刚刚起步,而且 我们正在不断学习。如果你有任何问题或问题没有在现有的资源中得到解决,例如 关于应用本地化的 Hacks 博客文章系列、Transifex 帮助页面以及上面提到的其他文章和存储库,你可以 联系我们。我们会尽力为你指明方向。谢谢!

关于 Joshua Smith

演员、程序员、Mozilla 员工和来自纽约的学生。Joshua 是 Codexa 的创始人之一,并启动了 Firetext 项目

更多 Joshua Smith 的文章…


2 条评论

  1. Abin Abraham

    我如何开始翻译 Firefox OS 应用?

    2014 年 3 月 25 日 下午 10:36

  2. Havi Hoffman

    @Abin – 感谢你的兴趣和支持。请在此注册以帮助翻译应用程序:https://www.transifex.com/organization/mozilla-tech-evangelism/

    单击“创建免费帐户”按钮开始。然后,你就可以请求访问权限来翻译任何你感兴趣且需要翻译字符串的应用程序项目。你的帮助将非常宝贵!

    2014 年 3 月 25 日 下午 12:17

本文的评论已关闭。