Fixing checks on Weblate

Translating strings isn't the only task to be done on Weblate. If a component has been fully translated in your language, or you don't feel comfortable translating yet, you can still help out by looking through any outstanding checks on Weblate. This will help make sure that all of our translations are as high-quality as possible. Read on to learn more about checks and how you can help.


Contents


About checks

Quality checks, or just checks, are a way that Weblate automatically flags translations that may not be high quality. The number of checks in any component or language can be seen on the project or component page. More information about the types of failing checks can be seen on a language's component page; the following example is the Italian translation of chapter 8.

Screenshot of a Weblate component page with string statuses highlighted

Types of checks

Weblate has many different types of automatic checks, and it is out of the scope of this page to describe them all. However, below you will find a list of common checks that you may find in the LSTN handbook translation project, and ways that you can fix them.

Inconsistent

Screenshot of a translation page on Weblate showing an 'Inconsistent' string status

Inconsistent is the most common type of check you will likely find in the LSTN handbook translation project. This means that Weblate thinks there are similar strings within the project that were translated inconsistently with the current string. There are two things you can do when you fix these checks. You may decide that the two strings are actually not very similar, and dismiss the check. Or, you may think that the strings should be the same, and choose which translation to use throughout the project.

Screenshot of a translation page on Weblate showing where to fix the 'Inconsistent' string status

In the screenshot above, you can see that Weblate is not always smart with its checks! Here, it thinks that "troubleshooting" and "appendix" are the same word, or have the same meaning. In this case, since the strings should NOT be the same, it is safe to scroll up and click "Dismiss" in the "Things to check" box. Otherwise, you could select "Apply selected translation to all propagated strings" to make each string the same throughout the project.

Has been translated

Screenshot of a translation page on Weblate showing a 'has been translated' string status

If a string has been successfully translated, and then the translation is edited, you will see the "Has been translated" check. If this check shows up, you can compare the current translation and the past one (seen in the check box), and choose which is most accurate.

Unchanged

Screenshot of a translation page on Weblate showing an 'Unchanged' string status

If the source string and translation are identical, you will see the "unchanged translation" check. In some cases, like the example above, this may be appropriate. The string shown above only includes proper names or website URLs, which will be the same in any language. If the translation (or lack thereof) is correct, it is safe to choose "dismiss". Otherwise, you can either delete the non-translation entirely or replace it with the correct translation,

Double space

Screenshot of a translation page on Weblate showing a 'Double space' string status

For consistency, the spacing in the original and the translation should be as similar as possible, so you will see an error when a translation has a double space but the original string does not. The double spaces are usually marked by a red box in the translation box. Be careful though, because sometimes a red box indicates a non-breaking space. In this example, both the source string and the translation end with a red box that indicates a non-breaking space; the final red box in the translation is correct, and the rest are double spaces that are potentially unnecessary or inappropriate.

Note that this translation is failing two checks! Strings can fail multiple checks at a time, but the listed number of failing checks in a language corresponds to the number of strings failing checks, not the total number of failed checks.



Last updated: September 30, 2021
Written by: Allie Tatarian