Translation System

General
In the development cycle from Eden (V11) to Frodo (V12) the translation system has been revised.

The former strings.xml file has been superseeded by the appropriate strings.po files. Due to that the way how translations are handled has been changed, too.

Transifex
The whole translation system has been moved to Transifex. So if you want to help translating XBMC into your native language, first thing you need to do is to sign up at Transifex.

Next Step would be to check the current project for XBMC. Currently it is this one:

XBMC Main Translation Project for master (Gotham)

On that page you should see the available languages that can be translated:



Check your native language and request to join the translation team. In this example I choose Greek:



The appropriate coordinator of your language will approve or deny your request.

By approval you can start translating immediately.

Currently this project is for core XBMC only! So no third party addons or stuff like that!

This will follow later on. So stay tuned in the appropriate forums section for translations

Translating XBMC
''Note: Please do not download files, modify them and upload again! Always use the "Translate Now" Button!''

Ok, let's get to work!

Search that part of the project that needs updating. You can see the percentage of the translations to the right:



You might note that there is something missing in "visualisation milkdrop". So we click on it to translate it.

The red marked area is button mentioned before. Always use this one!



Check the missing strings on the right side. After you completed them hit the "Save and Exit" button down on the left.



Useful hints
This part shows some additional information for developers and translators to make things more easy. So it's worth taking a look.

Details & Comments
The developers can set special marks in the strings.po file to give a useful comment on that string. e.g. what it exactly does or where it can be found in the GUI. Additionaly there is a field for the occurence which shows in which file this strings is mentioned. You get these info by hovering over the buttons of the source strings.



In the source file it looks like this:

With #. we can add a helper comment or context to help translators understand the meaning or usage of string.

with #: we can specify where the string is used. Sometimes this could also be a useful info.

Group Discussion
Another useful feature is the discussion board for the team. That way you can can speak about issues or just state some suggestions. You can get in conteact with other team members or the coordinator.



''NOTE: This board is not for off-topic discussions! Everything besides translations should be disucussed on the forums!''

Addons/Skins
The process is the same for 3rd party addons/skins, except they are hosted at a different Transifex link. For current links please visit this thread.

Contact
If you have problems with Transifex your first person to contact should be the coordinator of your language!

If you have more general questions you might head over to the forums and post your question in the translation are there. Alanwww1 and others can help you there.

Sync time schedule
We plan to make regular sync procedures from XBMC-master to Transifex weekly and from Transifex to XBMC-master monthly at the last week of the month. For addons we do more frequent updates, with 2-3 syncs a week.

Syntax verification
For keeping the strings correctly formatted, we do a constant syntax verification at each sync occasions. The results are in sync syntax-check logs. Please check these links regularly if you find any problems for your language. The following logs are available:
 * The xbmc-main-gotham syntax-check log
 * The xbmc-main-frodo syntax-check log
 * The xbmc-addons: syntax-check log
 * The xbmc-skins: syntax-check log

For more info on syntax checking, please check out this thread!