翻譯是軟件本地化的重要一步,有助於在全球範圍內傳播軟件並影響國際用戶體驗。近年來,本地化流程在全球範圍內不斷發展,通過自動化使其更加連續、快速和高效。 在 Fedora 上開發, 工藝 平台及其插件,以及 翻譯現在繼續 網頁版 該平台是這一共同持續目標的一部分。 Fedora等桌面操作系統的本地化是複雜的,因為它取決於Fedora中打包的各種上游項目的許多因素。例如,各種翻譯時間表、資源、工具等。

什麼是翻譯?

Transtats 是一個 Web 應用程序,它連接上游存儲庫、翻譯平台、構建系統和產品發布計劃,以幫助解決差異、異步條件並及時打包高質量的翻譯。實際上,它收集和分析翻譯數據以創建有意義的表達。

Fedora Transstats 託管在 https://transstats.fedoraproject.org/

如何查看包的翻譯狀態?

只需選擇 組合 左側導航欄中的選項卡。這將打開包列表視圖。然後搜索包並單擊其名稱。

例如,Python。在包詳細信息頁面上,找到以下內容:

以下是翻譯平台的翻譯統計信息。 工藝 什麼時候 哪個 構建系統。計劃與平台和構建系統同步,他們將定期更新差異。紅色語言表示翻譯平台上仍有翻譯字符串需要拉取打包,藍色語言表示編譯後的消息無法100%完成。

斷弦(或改變?)

翻譯軟件包的挑戰之一是防止字符串損壞。包維護者應該努力遵守預定的 Fedora 發布字符串凍結。但是,在某些情況下,您可能需要解凍字符串並通過郵件列表通知翻譯團隊。然後更新翻譯平台上最新的翻譯模板(POT)文件。翻譯器可能會非常緩慢地翻譯新字符串,或者您的應用程序可能包含未翻譯的字符串,以防這些操作似乎丟失。在最壞的情況下,由於舊的翻譯字符串不匹配,可能會發生崩潰。同步和自動化管道可以防止這種情況發生,但這取決於包開發人員或維護人員遵循的推或拉方法。

要處理相同的上下文,您可以使用 Transstats 作業模板來檢測此字符串更改。這在字符串在 Fedora 發布計劃中凍結後特別有用。這是一種本地化格式,適用於尋找沒有字符串損壞的打包翻譯、正在將翻譯模板 (POT) 文件與翻譯平台同步以及回溯翻譯完整性的用戶。對於測試應用程序的任何人都非常有用。

如何檢測字符串變化?

選項之一 工作 該選項卡是“基於 YML 的工作”。我在哪裡可以找到可用的工作模板?

作業框架執行 YAML 中描述的所有任務,創建適當的日誌並保存結果。跟踪字符串更改基本上有效。

  1. 克隆相應包的源存儲庫。
  2. 嘗試生成翻譯模板 (POT) 文件。
  3. 從相應的翻譯平台下載 POT 文件。
  4. 還要找出兩個 POT 文件之間的區別。

事實上,Transstats 維護了每個包的上游存儲庫、翻譯平台項目和相應的構建標籤的映射。

讓我們仔細看看這個 YAML。你可以在下一步中提供%PACKAGE_NAME%和%RELEASE_SLUG%的值—— 環境!!示例:anaconda 和 fedora-32。還有一些事情要記住。

  • 如果您的上游軟件存儲庫為您的 Fedora 版本維護一個單獨的 git 分支,請將“branch: master”編輯為“branch:”。
  • 生成塊描述了生成 POT 文件的命令。默認值應該只適用於“intltool-update”,但許多包都有自己的。
  • 某些包的 gettext 域名可能與包名不同。在這種情況下,還要提及 gettext 字段。

觸發作業時,日誌中會填充數據。如果這不是臨時運行,您還需要在最後創建一個唯一的 URL。

左邊是輸入的 YAML,右邊是每個任務對應的日誌。在這裡您可以找到差異並找到字符串差異。

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