Michal Čihař - Quality assurance of translations with Weblate

Quality assurance of translations with Weblate

One of features I wanted to introduce with Weblate is ability to do some quality checks while translating. We want contributors to have easy access to translating, but still we need to ensure some quality of translations. That's why Weblate comes with set of quality checks which are performed on every translation unit. The current set of checks (see documentation) is pretty basic and more might be easily added in the future pretty easily.

There are two ways how checks are used in Weblate. During translating, if any of checks fires, translator stays on current translation with warning that something might be wrong. This is not a hard error as he still can be correct, but should at least prevent accidental mistakes like corrupted format strings or missing trailing colon.

The other way is to do review of a translation. Failing checks are shown on each translation page or you can browse them by project to give you overview what can be wrong.

For example with phpMyAdmin this helped me discover that there were few languages where almost half of translated strings are actually not translated but simply copied from English. There were also other problems like inconsistent translations across branches. All in all using these features helped me to improve quality of translations in phpMyAdmin quite a lot and I hope we will keep it for the future.


wrote on March 29, 2012, 8:29 p.m.

Completely agree and appreciate those features that helped me catch some other inconsistencies in the Spanish translations.

I think, though, that the exclamation mark check is kind of annoying as some languages need to change the order of the sentence so the exclamation is left in the middle (or you need to double-check every string that shows that).

wrote on March 30, 2012, 1:22 a.m.

I'm open to changing the checks so that they are not annoying. For example they handle special rules for such marks in French or Breton and if there is other language which needs special handling, just let me know!