如何翻译
如何翻译
我们使用 Crowdin 作为我们的翻译系统。要提交翻译,请创建一个 帐户,点击所需的语言并申请成为翻译员。一旦您被接受,您可以点击浏览各种文件并建议翻译。
一个通用的经验法则是:质量,而非数量
!如果您不确定字符串的上下文或其含义,请保持原样不动。拥有正确的英文原文字符串远比拥有一个用户看不懂的错误翻译要好得多。
LineageOS 和 LineageOS AOSP 之间的区别
在 Crowdin 上,您会注意到两个不同的项目
LineageOS
项目包含 LineageOS 附加功能和应用程序的翻译,适用于 AOSP 支持的语言。LineageOS AOSP
项目适用于非上游 Android 源代码包含的语言。它包含 LineageOS 功能和附加组件的字符串,但也允许翻译操作系统的其余部分。
我的语言不在那里,并且我已经检查了好几次
您似乎说的是一种没有人说的语言……或者只是缺少愿意提供支持的人。请联系其中一位管理员,以便我们可以通过添加您的语言来支持您。
我已经翻译了很多,我现在如何将这些应用到我的设备上?
每种语言都应该(或应该)至少有一名校对员(如果没有,您可以申请)。校对员将浏览字符串,并验证他们认为符合上下文且质量足够高的字符串。如果您没有看到对您的(或替代的)建议进行积极审查或接受,您可以联系右侧边栏上的校对员之一。为此,只需输入“@”后跟姓名,然后添加消息(例如“@NameHere:请查看我在这个文件上的翻译”)。
在字符串被验证后,将运行一个脚本作业(由一位 管理员 完成)将字符串导入到 Gerrit。在成功的测试构建之后,它们将被合并到源代码中,并将成为每个新的官方构建的一部分。
更正错误的字符串
已翻译的字符串
有时您会注意到翻译后的字符串似乎与您期望的略有不同,或者干脆是错误的。发生这种情况的原因有很多,但无论如何,唯一相关的事情是如何改进翻译。就像您对待任何未翻译的字符串一样,提出您的翻译建议。保存后,您将可以“通知校对员”。
原始字符串
无法保证您要翻译的原始字符串是完美的。如果您注意到那里的问题,请使用侧边栏并标记“问题”字段,然后输入一些您认为错误的信息。如果错误只是轻微的,请在您的翻译中更正此错误,并提交它。
什么不翻译
保持源代码和 Crowdin 字符串同步不是一件容易的工作,并且可能会遗漏一些东西。一般来说,您需要注意以下几点
- 以
@
开头的字符串(在@string/<something>
等字符串中非常常见) - 这些字符串在不应该翻译时被标记为可翻译。请使用屏幕右侧的issue
复选框通知我们。 - 带有
xliff
标签的字符串,例如<xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g>
:保持整个内容原样不动,并将其嵌入到您翻译的适当位置。示例只是告诉您可以插入什么来代替操作系统中的 %1$s,以便您知道在翻译中将其放置在哪里。也没有必要修改它。
校对
每个字符串都需要由校对员验证。如果您的语言没有活跃的校对员,您可以申请成为校对员。作为校对员,您还必须确保提交的字符串与上下文匹配。
除了有责任只批准适合在系统中使用的字符串,并确保避免批准 什么不翻译 中提到的字符串外,还有其他需要注意的事项
数量和产品字符串
各种字符串针对不同的产品(主要是 平板电脑
、手机
、设备
或 其他
)和数量(一个
、两个
、多个
、少量
、其他
)存在多次。一旦其中一个字符串被翻译和批准,Android 构建系统(特别是用于资源构建的 aapt2
)要求整个链都存在。作为校对员,您必须确保批准字符串的所有变体。