翻譯記憶

Weblate 帶有內建的翻譯記憶,其組成部分為:

  • 手動匯入的翻譯記憶(請參閱 使用者介面)。

  • 自動儲存 Weblate 中進行的翻譯(取決於 翻譯記憶範圍)。

  • 自動匯入了過去的翻譯。

翻譯記憶中的內容可以透過多種方式套用於字串:

  • 使用者可以在編輯字串時從 自動建議 標籤頁接受建議。

  • 可以從 操作 選單使用 自動翻譯 處理所選的字串。

  • 自動翻譯 附加元件可以自動將變更應用於新的和現有的字串。

對於安裝提示,請參閱 Weblate 翻譯記憶,它預設是開啟的。

翻譯記憶範圍

翻譯記憶的範圍確保不同專案和使用者的隱私。也可以用來共享譯文。

備註

從較舊的 Weblate 發行版本升級時,既有翻譯記憶項目會由定期 Celery 背景工作轉換成不同作用範圍。在回填完成前,既有項目可能暫時不會出現在建議和翻譯記憶管理檢視中。升級後請讓 Celery 保持執行,以便定期工作開始或繼續移轉。網站管理員可以在 管理 > 效能報告 中監看回填及重複項目整併作業。

已匯入的翻譯記憶

使用 import_memory 指令匯入任何翻譯記憶資料會使記憶內容可用於所有使用者與專案。

每個使用者的翻譯記憶

在每個單獨使用者的個人翻譯記憶中自動儲存使用者的翻譯。

系統會依 自動清理翻譯記憶 設定自動調整新使用者的預設值。如果啟用自動清除,這項設定預設會停用,以免重新加入不一致的翻譯。

每個專案的翻譯記憶

專案內的所有翻譯都自動儲存在專案翻譯記憶中,這個翻譯記憶只在專案內可用。

工作空間翻譯記憶

同一工作空間中的專案可以共用翻譯記憶,而不必啟用全域共用翻譯記憶。工作空間設定和個別專案工作流程設定都必須啟用工作空間翻譯記憶。

共享的翻譯記憶

開啟翻譯記憶共享的專案內的所有翻譯都儲存在共享的翻譯記憶中,可用於所有專案。關閉對共享翻譯記憶的貢獻會阻止之前貢獻的自動條目被用作共享的建議。

對於分享的 Weblate 安裝,請仔細考慮是否開啟這個特性,因為可能導致嚴重的影響:

  • 翻譯可以被任何人使用。

  • 這會導致洩露秘密資訊。

  • 請確保您共享的譯文品質上乘。

翻譯記憶狀態

在 5.13 版被加入.

Translation memory entries can have two different statuses: active and pending. Pending entries are included in suggestions, but with a quality penalty applied. Depending on the configured score threshold, the penalty can exclude even exact matches from suggestions and automatic translation. Entries imported from translation memory files are stored as active. If 自動清理翻譯記憶 is enabled, matching pending entries are removed when a translation becomes active.

自動清理翻譯記憶

在 5.13 版被加入.

對專案啟用後,當翻譯生效時 Weblate 替換舊的自動產生的翻譯記憶條目:

  • 啟用 啟用檢閱 時,清理在批准翻譯時發生。

  • 如果沒有審校,譯文一轉為已翻譯狀態就會被清理。

對於同一來源字串、組件、情境和源/目標語言對,Weblate 從翻譯記憶中刪除相符的非檔案條目,包括目標文字不同的條目。這應用於個人、專案和共享的翻譯記憶範圍。然後目前翻譯被在為此變更啟用的範圍中再次儲存為活躍條目。

不自動清理從外部翻譯記憶匯入的條目。保留情境不同的條目。

在 Docker 容器中這可以使用 WEBLATE_DEFAULT_AUTOCLEAN_TM 設定。

備註

開啟自動清理還會將新使用者個人資料的預設值變更為不錄入個人翻譯記憶。這防止重新引入打算要清理的不一致的譯文。

管理翻譯記憶

使用者介面

可以從 Weblate 使用者介面的幾個地方管理翻譯記憶:

  • 開啟使用者選單,選擇 翻譯記憶 管理您的個人翻譯記憶。

  • 開啟專案,從專案選單選擇 翻譯記憶 來管理專案的翻譯記憶。

  • Open a workspace and choose OperationsTranslation memory to manage automatically created translation memory for that workspace. Editing the workspace is required.

  • 開啟 管理,選擇 翻譯記憶 管理整個 Weblate 執行個體的已上傳的翻譯記憶。

翻譯記憶頁面顯示所選範圍的條目數。根據範圍不同,頁面還按照來源、組件或語言對列出條目。所列條目可下載為 JSON 或 TMX。有所需權限的使用者可以刪除條目,專案檢視可以從目前翻譯重建整個專案或單獨組件的翻譯記憶。

專案檢視還顯示專案是否啟用了共享的翻譯記憶和自動清理翻譯記憶,當使用者可以編輯專案時會顯示到專案工作流設定的連結。

The workspace view can rebuild all currently contributing projects or an individual contributing component. It manages workspace-scoped automatic entries only. Translation-memory files cannot be uploaded into a workspace scope.

Translation memory files can be imported on the same page. Uploaded files are processed during the request, stored as active, and added to the selected scope:

  • 個人上傳在個人翻譯記憶中。

  • 專案上傳在所選專案的翻譯記憶中。

  • 管理性質的上傳作為上傳的共享條目對整個執行個體可用。

提示

Weblate 可以匯入各種格式的翻譯記憶。TMX 格式是為了與其他工具進行互通而提供的。所有支援格式為 TMX 、 JSON 、 XLIFF 、 PO 與 CSV。

如果 XLIFF、PO 或 CSV 檔案本身未提供語言資訊,那麼上傳這些型別的檔案時必須選擇來源語言和目標語言。

../_images/memory.webp

您可以在搜尋翻譯記憶的同時編輯來自 自動建議 分頁的字串。

管理介面

管理型使用者擁有額外的翻譯記憶管理控制。在 管理 > 翻譯記憶 中,此頁面列出 Weblate 執行個體的已上傳共享條目、共享條目和總條目。根據權限不同,它可匯入上傳的共享記憶庫,刪除上傳的條目,下載已上傳的、共享的、或者所有條目為 JSON 或 TMX 檔案。

在 4.12 版被加入.

The project translation memory view also allows rebuilding parts of or the entire project translation memory. Automatically generated entries for the selected component or project are deleted, and the memory is populated again from the current translations in the background. Entries imported from files are preserved.

管理介面

有幾個管理指令可以控制翻譯記憶的內容。這些指令將翻譯記憶視同一個整體進行操作,不受範圍影響(除非透過引數進行請求):

dump_memory

匯出記憶至 JSON

import_memory

將 TMX 或 JSON 檔案匯入翻譯記憶

cleanup_memory

從翻譯記憶中移除所有狀態為待處理的項目

在 4.14 版被加入.

Weblate API 涵蓋了翻譯記憶。這允許出於不同目的或基於翻譯週期事件的自動操控。