翻譯是軟件本地化的重要一步,使軟件在全球可用並影響國際用戶體驗。近年來,本地化流程在全球範圍內擴展,通過自動化使其持續、快速和高效。 在 Fedora 上,開發 工藝 平台及其插件,以及 翻譯過渡到 網頁版 該平台是這個共同的、持續的目標的一部分。 Fedora 等桌面操作系統的本地化非常複雜,因為它取決於 Fedora 打包的各種上游項目的許多因素(各種翻譯計劃、資源、工具等)。
什麼是翻譯?
Transtats 是一個網絡應用程序,連接上游存儲庫、翻譯平台、構建系統和產品發布計劃,以幫助及時解決差異、不同步情況並打包高質量的翻譯。在實踐中,它收集和分析翻譯數據以創建有意義的表達。
Fedora Transstats 託管於 https://transstats.fedoraproject.org/
如何查看包裹的翻譯狀態?
只需選擇 組合 左側導航欄中的選項卡。這將調出包列表視圖。然後搜索包並單擊其名稱。

以蟒蛇為例。在包裹詳情頁面,找到:

這是翻譯平台的翻譯統計數據。 工藝 什麼時候 哪個 建立一個系統。計劃與平台和構建系統同步,定期進行差異更新。紅色語言表示尚未被翻譯平台拉取打包的翻譯字符串,藍色表示構建的包無法100%完成翻譯。
損壞的(或修改過的?)字符串
翻譯軟件包的挑戰之一是防止字符串截斷。軟件包維護者應盡量遵守計劃的 Fedora 發布字符串凍結。但是,在某些情況下,可能需要解凍字符串並通過郵件列表通知翻譯團隊。然後在您的翻譯平台中更新最新的翻譯模板 (POT) 文件。如果您認為缺少這些操作,則可能是您的翻譯人員在翻譯新字符串方面落後了,或者您的應用程序有未翻譯的字符串。在最壞的情況下,舊翻譯字符串的不匹配會導致崩潰。同步和自動化管道可以防止這種情況發生,但這取決於包開發人員或維護人員遵循的推或拉方法。
為了處理相同的情況,可以使用 Transstats 作業模板來檢測此字符串中的更改。在字符串凍結 Fedora 的發布計劃後特別有用。這對於那些尋找沒有字符串損壞的打包翻譯、將他們的翻譯模板 (POT) 文件與他們的翻譯平台同步以及本地化他們的應用程序以實現翻譯完整性以進行回溯的人很有用。這對於測試表單的人非常有用。
如何檢測字符串變化?
的選項之一 工作 該選項卡是“基於 YML 的作業”。我在哪裡可以看到可用的工作模板?

作業框架執行 YAML 中描述的所有任務,創建適當的日誌並保存結果。字符串修改跟踪基本上是這樣工作的:
- 克隆相應包的源存儲庫。
- 嘗試生成翻譯模板 (POT) 文件。
- 從對應的翻譯平台下載POT文件。
- 還要找出兩個 POT 文件之間的區別。
事實上,Transstats 為每個包維護著上游存儲庫、翻譯平台項目和相應構建標籤的映射。

讓我們仔細看看這個 YAML。您可以在下一步中為 %PACKAGE_NAME% 和 %RELEASE_SLUG% 指定值 – 環境!示例:anaconda 和 fedora-32。另請注意以下事項:
- 如果上游軟件存儲庫為 Fedora 版本維護單獨的 git 分支,請將“branch: master”編輯為“branch:”。
‘ - 在生成塊中,編寫生成 POT 文件的命令。默認值應該只適用於“intltool-update”,但許多包都有自己的。
- 某些包的 gettext 域名可能與包名不同。如果是這樣,也請讓我們知道 gettext 域。
當作業被觸發時,日誌將被填充。如果這不是臨時運行,您還應該在最後創建一個唯一的 URL。

左邊是輸入 YAML,右邊是每個任務對應的日誌。在這裡您可以發現差異或發現字符串不匹配。

存在 翻譯,您可以以作業模板的形式創建各種問題的解決方案。安排這些工作可能是邁向自動化的一步。