上个月17个号,Rust官网简体中文版上线了。本来计划在上线那几天就写这篇文章,可是被种种事情耽误了。今天终于抽时间来写下这篇纪念文。

谨以此文感谢参与Rust官网翻译活动的每个小伙伴!

缘起

Rust官网召集中文翻译这件事,最早是在日报小组内部讨论组由Mike(Rustcc坛主)发出来的。当时Mike说,要不要咱们翻译一下?我一想,官网那么多页面,这翻译得多久,于是就跟Mike说,我恐怕没有时间搞这个事。然后就搁置了。

过了两天,Aimee(from 秘猿)在社区QQ群里也在召集中文译者,想把这事推动起来。此时,我又一想,也许召集大伙一起干这事,可以高效完成这件事。而且,如果官网有了中文的支持,对于Rust在中国的推广更有好处。于是我和Mike一起创建了一个翻译小组群,开始在社区招募感兴趣的译者参与。与此同时,联络Aimee。此时Aimee已经和Rust官方网站翻译负责人Florian联系好了。

最初还以为不会有很多人参与,没想到大家的热情还挺高涨,而且远在澳洲的Rust tg群群主Xidorn Quan也热心参与了进来。由此还发现原来社区里默默隐藏着一个翻译组织(主要成员Aaran Xu和OlingCat),https://github.com/rust-lang-cn,已经翻译了不少Rust官方的相关资源。后来就干脆以该组织为基地,来组织这次官网的翻译工作。

Rust官网翻译那些事_所见即所得

于是翻译就这样顺利开始进行了。

Rust官网翻译那些事_官网_02

协作

Rust官网多语言支持是通过Fluent和Pontoon共同支持完成的。关于Fluent可以参考我这篇文章: Rust I18N 方案梳理。简单来说,Fluent是一个翻译规范,它的特点是翻译和项目分离,并且可以独立于源语言(比如说英语),让翻译人员释放更多的自然语言表现力。在Rust官网源码中,使用flt文件对应不同的页面内容,为翻译工作的协作也提供了方便。再配合Pontoon这个所见即所得的编辑工具,可以很方便地进行各种语言翻译工作的审校和协作。

Rust官网翻译那些事_所见即所得_03

在最初敲定协作方案的时候,大家下意识地都默认使用GitHub fork仓库的方式,因为大家都是技术开发,习惯了以往的这种方式。很快,我们敲定了协作的方式:

  1. 分为翻译和校对两种角色。
  2. 按flt文件来领任务。
  3. 先翻译,后通过发PR的方式来进行校对。

基本上任务推进的非常快、非常自然。两三天的功能基本上页面都翻译完了。虽然速度很快,但是大家都很认真对待这件事。常常因为某个术语的翻译而讨论半天,所以大部分时间都在校对上。

比如官网首页的两处翻译。

  • Rust的宣传语:「Rust,一门赋予每个人构建可靠且高效软件能力的语言。」
  • npm工程师对Rust的赞美:「“对 Rust 最大的赞美,就是它让我太无聊了。这太令人惊叹了!” – Chris Dickinson,来自 npm 公司的工程师」

Rust官网翻译那些事_官网_04

Rust的宣传语,原文是「A language empowering everyone to build reliable and efficient software.」这句话原文含有「赋能(empowering)」之意。短短的几个字,大家讨论了半天,最终才决定了现在这句话。

Rust官网翻译那些事_官网_05

npm工程师对于Rust的赞美,不了解Rust的人恐怕看了之后会一头雾水。最初的翻译是:「对Rust最大的赞美,就是它太无聊了,这是令人惊叹的赞美」。其实,这句话是出自npm的一次分享,大概意思是:他们用Rust写了一个服务,在线上稳定运行了一年半,他们几乎都要忘记这个服务的存在了。所以,他说Rust让他太无聊了,连修Bug的机会都没有。他同时也十分惊叹Rust语言的这种能力,如果是其他语言写的程序,他肯定就不会无聊了。所以,这句话的翻译最终改为了:「对 Rust 最大的赞美,就是它让我太无聊了。这太令人惊叹了!」

除了首页的这两处之外,还有很多地方大家都十分认真地参与了讨论和建议。最终展现在大家面前的翻译结果,不敢说信雅达,但一定是做到了正确和通顺。

交付

本来以为翻译完,直接通过GitHub给官方提交PR即可。但是后来和Florian聊天才发现,官方本就没有打算让翻译小队通过GitHub PR的方式来交付翻译成果。

所以,只能通过Pontoon来直接交付。不过,经过GitHub的一番严格认真的协作,我们只需要复制粘贴即可。然后官方运维组成员Manish,会处理翻译好的文件。经过和Manish的交流,得知官方源码仓库和Pontoon已经设置了自动同步,Pontoon这边的修改,都会定时自动地同步到官方源码仓库。

Rust官网翻译那些事_所见即所得_06

当我们把翻译成果交付到Pontoon上面之后,把Pontoon的链接公布到社区里,让更多的人来参与校对。事实证明,这个决定是正确的。有好几个社区的热心朋友,虽然没有加入翻译小组的QQ群,但是可以通过GitHub登录到Pontoon直接参与审校,并且提出了好几个漂亮的改进翻译和错误。

Rust官网翻译那些事_github_07

小结

Rust的开源文化,深深的影响着社区。包括这次翻译活动,也是一次开源协作的尝试。最终的翻译成果,是中文社区共同完成的。最后,再次感谢每个参与翻译的朋友。

这次翻译活动,也带动了台湾Rust群组翻译官网的兴致和热情,台湾繁体翻译也在近日上线了官网。

预告:Rust中文社区翻译小组,还在计划翻译官方Rustc导读,感兴趣的朋友也可以参与进来。可以加QQ群:7 1 6 3 4 8 0 5 6。