中文化與文件翻譯¶
文件站三語同步流程¶
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 專案 提交。
上游翻譯工作流:從 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 使用者文件的新家。