翻译片段

Snipp 由社区成员翻译,我们非常需要您的帮助。如果您精通其他语言,您可以改进现有翻译,或帮助 Snipp 翻译成新的语言。本指南涵盖您需要了解的一切。

奖励

  • 做出有意义的贡献,即可在 Snipp 个人资料中获得专属的“翻译者”徽章。

  • 你还将在我们的 Discord 服务器中获得翻译员角色。

  • 贡献较大的用户可能会获得 Snipp PLUS 作为感谢。

入门

最好的起点是我们的 Discord 服务器 这里是译者们协调合作,认领翻译语言并互相帮助的地方。请告诉我们您想翻译哪种语言,以免重复劳动。

两种翻译方式

有两种方式可以贡献翻译。选择适合你的一种即可,无需两种方式都使用。

克劳丁

最简单的选择。无需任何 JSON 或 Git 知识,即可直接在浏览器中进行翻译。Crowdin 会显示每个字符串的上下文,并自动处理格式。推荐给大多数译员使用。

开放人群

GitHub

对于熟悉 Git 的开发者,可以直接编辑本地化 JSON 文件并提交 pull request。如果您需要完全控制或添加新语言,这是最佳选择。

打开存储库

文件工作原理

每个语言环境都是一个扁平的 JSON 文件。键是一个固定的 ID,永远不会改变。值是向用户显示的文本,这也是你唯一需要翻译的内容:

{
  "SETTINGS_PREFS_AUTO_COMPRESSION_LABEL": "Automatic Compression",
  "SETTINGS_PREFS_PARTY_MODE_LABEL": "Party Mode"
}

英文文件是权威来源。其他所有语言环境都使用完全相同的键值对,因此您只需更改值即可。

规则

  • 切勿添加,删除或重命名键。新键来自 Snipp 代码库。如果您的语言环境中缺少某个键,网站将回退到英文。

  • 保持占位符不变。类似 {count} 或 {username} 的文本会在运行时被替换。请保留完全相同的占位符,但您可以根据您所用语言的词序调整它们的位置。

  • 请遵循大小写规则。简短的 UI 标签在所有语言中均使用标题大小写。完整的句子使用您所在语言的正常句子大小写。

  • 请勿翻译品牌或技术标识。请保留 Snipp,Discord,ShareX,URL,API,PLUS 和文件扩展名等信息。

  • 请保持 JSON 格式有效。使用双引号,除最后一个条目外,每个条目后都要加逗号,并且不要在条目末尾加逗号。

  • 如果值中包含前导空格和尾随空格,请保留它们。这些空格是特意设置的,用于连接句子。

通过 GitHub 提交

如果您选择使用 GitHub,流程如下。Crowdin 译者可以跳过此部分,您的更改直接在 Crowdin 平台提交。

译文通过以下方式提交: GitHub 上的 i18n 代码库 使用标准的 fork 和 pull 请求流程:

  • 先 fork 该仓库,然后克隆你的 fork 版本,并为你的更改创建一个新分支。

  • 编辑你所在语言的区域设置文件,并翻译你想要改进的值。

  • 从仓库根目录运行验证脚本,并在提交之前修复它报告的任何问题。

  • 提交、推送到你的 fork,然后向主分支发起 pull 请求。维护者会审核并合并它。

不想使用命令行?GitHub 网页编辑器也适用。打开本地化文件,点击铅笔图标,进行编辑,然后提交您的更改。

添加新语言

Snipp 还不支持您的语言?请在 GitHub 上提交一个 issue,提出您想要的语言及其对应的语言环境代码,复制英文源文件作为起点,翻译其中的每个值,然后提交一个 pull request。维护者会将新的语言环境注册到网站上。

准备好帮忙了吗?

加入我们的 Discord 服务器,认领一种语言,结识其他翻译人员,并开始翻译工作。

更多文章