中文化与文件翻译¶
文件站三语同步流程¶
anoni.net 文件站维护 zh-TW、zh-CN、en 三个语系。zh-TW 是 single source of truth,新文章先写 zh-TW,zh-CN 与 en 从 zh-TW 同步。
zh-TW → zh-CN¶
社群采用 Claude Code 直接翻译做候选稿,不采 OpenCC 半自动方式。理由:
- OpenCC 的 phrase 库对「核心」这类词会误译成「内核」(kernel 语境替换误套)
- 纯机翻无法做语境化的政治措辞调适与读者轮廓判断
- zh-CN 既有的人类校对档已示范这个深度(例如针对 zh-CN 读者轮廓写的政治脉络描述)
每篇翻译流程:
- Claude Code 读 zh-TW 来源文件
- 同时做台繁→简 + 台式→中式词汇转换(网路→网络、资料→数据、档案→文件、影片→视频、伺服器→服务器、讯息→消息、预设→默认、连结→链接、登入→登录、注册→注册等)、政治措辞适配、外部链接适配
- 保留:技术术语英文原文(Tor、Tails、OONI、ASN、VPN)、品牌名
anoni.net、URL、code 区块 - 输出到 zh-CN 对应位置,标注「Claude Code 候选稿、待人类校对」
- 社群成员 review 词汇与政治措辞差异,合入
重要规则:
- 结构搬迁时不重翻覆盖既有文件。zh-CN 既有人类校对的内容直接
git mv,只调整 frontmatter 与内部链接 - 同步机制:当 zh-TW 既有文件有更新时,做 zh-TW 新旧 diff、把 diff 套到 zh-CN,不是用最新 zh-TW 整个重翻覆盖
- 标点集合保持台繁版本「、」「,」「。」「:」「「」」「()」(简中渲染兼容、与 zh-TW 一致)
zh-TW → en¶
en 需要更多人工,因为文化脉络转换比语系翻译费时。流程跟 zh-CN 类似但更倚重人类校对:
- Claude Code 起草初译
- 在地脉络(台湾法规、政治敏感词)需要重新组织说明,给国际读者背景
- 链接优先选国际读者熟悉的来源(例如 EFF、Reuters、HRW,而非台湾媒体中文版)
zh-CN 与 en 的翻译不必同步上线,依社群人力滚动处理。每次只修一个语系时,记得在 PR 描述标注「zh-CN/en 待同步」。
相关规则文件¶
- 写作风格与品牌名称见
.claude/rules/anoni-docs-style.md - 目录归属与分类规则见
.claude/rules/sitemap.md - 三语同步的历史脉络见 anoni-net-ws#266
社区参与过的上游翻译¶
社区对外贡献的翻译工作会记在这里。每个案例附起点 PR、翻译平台、完成 release,方便接手的志愿者知道从哪里延续。
CryptPad(zh_Hant、zh_Hans)¶
| 项目 | 内容 |
|---|---|
| 上游项目 | CryptPad(XWiki SAS 开发,AGPLv3) |
| 翻译平台 | Weblate cryptpad |
| 范围 | 主应用、Accounts plugin、User Guide 全部子段,合计上千条字串 |
| 起点 PR | cryptpad#1329(2023/12/05,修正语言选单用词并询问新增 zh_Hant 流程) |
| 完成回报 Issue | cryptpad#2237(2026/03/13) |
| 收进 release | CryptPad 2026.5.0(2026/05/13,含 locale alias 机制 #2254) |
| 累计工作时间 | 约两年半 |
完整叙事见 CryptPad 2026.5.0 上线:正体中文(zh_Hant)正式收进内建语系。要接着补新版本字串或修错字,直接到 Weblate 上的 zh_Hant 或 zh_Hans 项目提交。
上游翻译工作流:从 Weblate 到 release¶
想参与某个开源项目的中文化,可参考下列流程。CryptPad 的两年半经验大致照这条走完一轮。
1. 确认项目的翻译平台与贡献管道¶
开源项目常见的翻译平台是 Weblate 与 Transifex,少数会自架。先到项目的 GitHub README、CONTRIBUTING.md、或官网「Localisation」分页找链接。没有现成链接时,到 issue tracker 开一个「How can I contribute zh_Hant translation?」询问。
2. 注册翻译平台帐号、找对应子项目¶
确认项目是否已开 zh_Hant、zh_Hans 两个语系子项目。没有的话,请 upstream 维护者开(CryptPad 的 PR #1329 就是这一步)。
3. 翻译时保留三件事¶
- 界面情境:每条字串要对齐它在界面出现的位置,翻译前先把 app 跑起来看看,避免「保存」、「另存」这类词混用。
- 既有词表:先翻过几条后就会建立词汇惯例,后面要保持一致。多人协作时建议在 issue 或 pad 上维护词汇表。
- 不要过度本地化:技术术语(API、Tor、relay、E2EE)保留英文原文,比硬翻成中文更贴近实际使用脉络。
4. 主动跟 upstream 维护者沟通¶
翻完一个子项目后,到 issue tracker 开 issue 回报进度,请 upstream 在下一个 release 启用为内建语系。具体做法可参考 cryptpad#2237。没有主动回报,翻译有可能停在 Weblate 上不会自动进到 release。
5. release 之后持续维护¶
软件会继续开发,新功能会带来新字串,每个版本上线前都建议回头再校一轮。Weblate 上没翻完的字串会显示为「未翻译」,定期扫一遍就能跟上版本。
6. 跟社区分享¶
完成后在 anoni.net 社区 Matrix 或社区 newsletter 上 announce 一次,把案例补到本页的「社区参与过的上游翻译」表格,方便日后有人接力或想复制这套流程。
找翻译伙伴一起做
上千条字串的工作量一个人扛两年很累,找 2-3 个伙伴分头负责不同子项目,整体进度会稳定很多。CryptPad 案例最后是社区成员协同完成的。要找伙伴可在社区 Matrix 公开征集,或来信 whisper@anoni.net。
OONI 工具¶
OONI 目前有许多工具与网站服务是通过 Transifex 协作翻译平台进行的,请先在平台上注册后,再依各产品前往协助翻译。
- OONI Probe 应用程序:加入翻译项目,并阅读翻译手册。
- OONI Explorer:加入翻译项目,并阅读翻译手册。
- OONI Run:加入翻译项目。
前往翻译
如果您已有相关中文化与翻译的经验,欢迎直接前往各翻译项目页面参与翻译。
OONI Blog¶
我们也将逐步翻译 Blog 上的文章内容,让台湾本地伙伴可以快速了解当前 OONI 项目的进度与脉络。
翻译后的呈现
目前还在规划翻译后的文章将以何种方式呈现以及文章的翻译流程,预计在 2025/Q1 后会有详细的说明与指引。
Tor 文档翻译¶
Tor 于 2025/10 推出全新的支持门户网站,将 Tor 浏览器手册与原支持门户合并至同一处,并开放多语言翻译贡献。
目前支持门户网站已有多种语言版本,但正体中文(zh-Hant)尚未包含在内。如果你希望让 Tor 文档也有正体中文版本,可以透过 Weblate 翻译平台参与贡献:
- 前往 Weblate:Tor new-support-portal 翻译项目。
- 若你是第一次参与 Tor 翻译,请先阅读「成为 Tor 翻译者」入门指引。
- 翻译完成后,可透过 Tor 的本地化社区门户进一步了解更多参与方式。
语言支持状态可能有所变动
以上为目前观察到的现况,实际语言支持情形请以 Weblate 即时语言列表为准。
关于此次 Tor 支持文档整合的背景说明,请参考:Tor 使用者文件的新家。