Translation Memory¶
Weblate comes with a built-in translation memory consisting of:
Manually imported translation memory (see User interface).
Automatically stored translations performed in Weblate (depending on Translation-memory scopes).
Automatically imported past translations.
Content in the translation memory can be applied to strings in several ways:
User can accept suggestions from the Automatic suggestions tab while editing the string.
The selected strings can be processed using Automatic translation from the Operations menu.
Automatic translation add-on can automatically apply changes to new and existing strings.
For installation tips, see Weblate Translation Memory, which is turned on by default.
Translation-memory scopes¶
The translation-memory scopes ensure privacy for different projects and users. Sharing of translations is also available.
Imported translation memory¶
Importing arbitrary translation memory data using the import_memory
command makes memory content available to all users and projects.
Per-user translation memory¶
Stores all user translations automatically in the personal translation memory of each respective user.
The default value for new users is automatically adjusted based on the Autoclean translation memory configuration. If automatic cleanup is enabled, this is disabled by default to prevent reintroducing inconsistent translations.
Per-project translation memory¶
All translations within a project are automatically stored in a project translation memory only available for this project.
Translation memory status¶
Added in version 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. If Autoclean translation memory is enabled, stale and obsolete entries with pending status are automatically removed when a translation is approved.
Autoclean translation memory¶
Added in version 5.13.
The translation memory is automatically cleaned up by removing obsolete and outdated entries.
In the Docker container this can be configured using WEBLATE_DEFAULT_AUTOCLEAN_TM.
Note
Enabling automatic cleanup also changes the default for new user profiles to not contribute to personal translation memory. This prevents reintroducing inconsistent translations that were supposed to be cleaned up.
See also
Managing the Translation Memory¶
User interface¶
Personal translation memory management is available by clicking the user avatar in the top-right corner of the UI and selecting “Translation memory” from the dropdown menu. Entries attributed to the user are listed in scopes – total, for each respective project, component, or language contributed to, with options to download (as JSON, or TMX) or delete them.
In the basic user interface you can manage per-user and per-project translation memories. It can be used to download, wipe or import translation memory.
There are multiple options to download the translation memory of the whole instance.
Hint
Translation memories in various formats can be imported into Weblate, the TMX format is provided for interoperability with other tools. All supported formats are TMX, JSON, XLIFF, PO, CSV.
See also
You can search for translations in the view built for this.
Admin interface¶
There is a platform-wide interface to manage the translation memory.
Added in version 4.12.
It has the same options as the user interface, but also allows rebuilding parts of or the entire translation memory. All old entries can be flushed and re-created from a component or project by selecting “Administration” from amidst the different tabs at the top of the screen, and then “Translation memory”.
Management interface¶
Several management commands can manipulate translation memory content. These operate on the translation memory as a whole, unfiltered by scopes (unless requested by parameters):
dump_memoryExports the memory into JSON
import_memoryImports TMX or JSON files into the translation memory
cleanup_memoryRemoves all entries with pending status from the translation memory
Added in version 4.14.
The Weblate API covers the translation memory. This allows automated manipulation for different purposes, or based on events in the translation cycle.