Introduction to Translation Memory
Transifex has a built-in Translation Memory (TM). TM is a powerful tool that helps with translation quality and consistency. It can even save you money by reducing the amount of repeat and new work a translator has to do.
Without going into too much technical detail, Translation Memory is a database of previously completed translations. Each time a translation is submitted, it's saved to this database. In the future, if a phrase similar to the original source string appears, the translation is presented to the translator as a suggestion. Let's look at an example.
Say we have one string in our file: "It is sunny and warm in California." When we translate it, the translation is automatically saved to the TM. Then we add another string to the file: "It is sunny and warm in Greece." When the translator goes to work on the new string, they'll see the translation for the first string as a suggestion. While the two strings are not exactly the same, they share a lot of words – both contain the phrase "It is sunny and warm in." By seeing the suggestion, the translator can translate the new string quickly while keeping it consistent with the other translation.
This concept of looking at two phrases which are similar but not exactly the same is known as a fuzzy matching.
In some cases, you may have two phrases which are exactly the same. This is known as a 100% match. Most of the time, if one of the phrases was already translated, you can reuse the translation for the other phrase.
Each project in Transifex has its own Translation Memory (TM) instance. It is updated whenever a new translation is submitted. All these translation entries are automatically stored in your project’s TM whether they have been marked as reviewed or simply translated. An exception is that automatically machine translated strings are added to your TM only when they are marked as reviewed. The same is true for strings that were machine translated in bulk (by selecting multiple strings within the Editor).
When a new project is created, a TM is automatically generated for this project.
To have a shared TM across multiple projects, you would need to create a TM group, as described here.
Please note that TM doesn’t share the same TM suggestions across languages that have the same country code but different locales. For example, es and es_ES are treated as different languages and don’t share the same TM entries.
Translation Memory suggestions can be exported and imported in a TMX format allowing you to massively update your project’s TMs. Please note that no saved translations are deleted from the TM until the maintainer manually removes it from TM or overwrites the existing TM with an updated version of a TMX file.
- If you delete a language or a resource(s) from your project, all the TM entries will be preserved and available as TM suggestions for future translations.
If you delete the whole project, translations for that project will be deleted from the TM, so those TM suggestions will not be available for future translations.
If you archive a project, the project’s TM suggestions will still be shared with other projects if the archived project belongs to a TM group.
The unit of storage in TM is a segment (also referred to as a string), not a sentence. A segment might contain one, a few, or many sentences - depending on the structure of the source file.
TM compares a new segment with the segments that it has in its database. Then, it identifies the similarity match. If the similarity match is 60% or higher, those segments will appear for a translator in the “Suggestions” tab.
The information about the TM leverage before the translation process starts can be seen in the pop-up window for each resource on a language level.
The detailed statistics about how much TM leverage was used during the translation can be found in the Translation Activity Report.
When an existing translation is replaced by a newer version and it is not used anymore in a project or projects that belong to the same TM group, then this old version is no longer exposed as a suggestion in Transifex Web Editor.
A translation version is not removed from the TM, when:
1) The corresponding translated source string is removed/deleted from the resource
2) The translation version is deleted without being replaced by a newer version (the source string returns to the untranslated state)