TDE Weblate Translation Workspace

From Trinity Desktop Project Wiki
Revision as of 05:57, 10 March 2019 by SlavekB (Talk | contribs)

Jump to: navigation, search

About Weblate

Weblate is an open source web-based translation management system with tight version control integration. It provides simple and clean user interface, quality checks and automatic linking to source files.

TDE Weblate

The TDE Weblate is our own instance of Weblate designed to manage TDE translations. It is tightly integrated with TDE Gitea Workspace (TGW). It provides:

  • simple and clean user interface for work on translations
  • integrated quality checks of translations
  • displaying referenced source files in TGW
  • retrieving translations and templates from TGW
  • automatic update of translations according to the templates
  • automated pushing of translations into TGW
  • proper crediting of translators in commits

Thanks to TDE Weblate you do not have to learn how to work with the GIT, you do not have to deal how to get translation files from GIT, how to merge it back to GIT, how to update translation files by templates,… You can focus to work on translations.

TDE Weblate intro.png

Integration with TGW

TDE Weblate manages its own clone of repositories, but is very tightly integrated with TGW.

Commits to TGW automatically invokes the update repository in TDE Weblate. If the translation template is updated, TDE Weblate will automatically update the translation files and immediately push them back to TGW. The translation files are therefore primarily maintained by the TDE Weblate.

During work on translations, individual translated strings are not immediately pushed into TGW. In order for translators to have enough time to work and also to check their translations, while avoiding too many small commits to TGW, pushing translations into TGW takes place after one day delay.

Work on translations is done on the master branch – on the latest development branch. In order to update the translations into a stable branch, a regular merge of the translation files between the master and the stable branch is performed.

Therefore translators do not need to work directly with GIT repositories.

Structure of translations

Each individual translation template in GIT is as an individual component in TDE Weblate. For better orientation, the components are grouped into projects – such as tdelibs, tdebase,… All applications are as components of project applications. Component names were chosen so that translators could reliably determine to which program and part the translation belong.

Using TDE Weblate

Start with registration

To work properly with TDE Weblate you need to register and log in. This will allow you to work on translations, and your work will be pushed to the TGW with your name as author.

To register, use the Register button in the upper right corner of the TDE Weblate. After registration will be sent a confirmation email to activate your account. After confirming your account activation, you will set your password. In your profile settings, you can then choose the language of the TDE Weblate interface and the languages you want to contribute to their translations.

Although TDE Weblate allows to work as an unregistered user, it's not a good idea. In such a case, it is not possible to work on translations, but only to make suggestions. But we do not have enough translators for each language to review and approve the proposals. Suggestions are not forbidden, but we recommend not using it. Instead, it is good to consider registering.

Work on translations

In order to work on translations, you must first of all be logged in. Then you select the component you want to translate. Based on the results of the checks and the status of the translation, you can choose the strings you want to deal with and start working on translations.

Component selection

There are several ways to select a component to translate:

  1. If you just want to translate, but it's not important to you what component, you can use Suggested translations on the Dashboard.
    • You get a list of ten components in your language so you can choose one.

      TDE Weblate suggested.png
  2. If you want to translate a specific part – such as application TDEPowersave – you choose the project and the component in this project. In this example, the applications project and the tdepowersave component.
    • If you use the Projects in the top bar, you get a component with a list of all the languages for which the component has already been translated.
    • If you use the links below in Dashboard – like applications, you get the component directly in your language.

      TDE Weblate component languages.png
  3. If you want to translate the string that appeared on the screen but you do not know which components this string belongs to, you can use the search.
    • In the Dashboard use Tools / Search, type the string you want to search for – for example Closing applications, select your language if it is not already selected and click on Search.

      TDE Weblate search string.png
    • In search results, you can then click either the component name or the specific occurrence of the string. If you use a component name, then you will be able to select the strings you want to translate. If you use a specific occurrence of a string, the editor will be opened directly for the specific occurrence of the string.

      TDE Weblate search results.png
    • Please use search rarely – it is currently slow and very memory intensive.

Strings selection

TDE Weblate performs many useful checks to help improve the quality of translations. After selecting a component, you have the option to choose the strings that you want to deal with. Strings selection is based on test results.

TDE Weblate component strings.png

After selecting the strings, the translating editor will be opened.

Translating with full editor

TDE Weblate editor full.png


Translating with zen editor

TDE Weblate editor zen.png


Adding a new language

Translation templates are contained in GIT repositories. This allows TDE Weblate to create translations for new languages. When a new translation is created, it automatically pushes a commit with translation for a new language into TGW. Similarly, translation from TDE Weblate can be removed. Again, commit will be automatically pushed to remove the translation from TGW.