Open main menu

Difference between revisions of "HOWTO-Translate ScummVM GUI"

(→‎Existing translations: add some non obvious instructions to download the po files)
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This page contains instructions to translate the ScummVM GUI.Translations from the community are welcome and should be proposed on the [http://sourceforge.net/tracker/?group_id=37116&atid=418822 patch tracker].
This page contains instructions to translate the ScummVM GUI, the QuickStart file and/or the README file.Translations from the community are welcome and should be proposed on the [http://sourceforge.net/tracker/?group_id=37116&atid=418822 patch tracker].


== Creating or Updating a translation file ==
== Creating or Updating a translation file ==
Translations can be produced with the use of the [http://www.gnu.org/software/gettext/ GNU gettext tools]. To create or edit a translation file you can for example use [http://www.gnu.org/software/hello/manual/gettext/PO-Mode.html Emacs PO-Mode] or [http://www.poedit.net/ Poedit] which are both free and available for various platforms. See [[#Editing Tools|Editing Tools]] for more tools.
We now have a web site where you can directly add new translations and update existing ones: https://translations.scummvm.org
 
Before starting a translation it would be a good idea to check [[#Existing Translations|the list of existing translations]] and to contact the team on the forum or IRC to know if other persons are already working on a translation for this language. That way if there is already a translation in the work you can avoid duplicate efforts and work together.
 
For a new translation, use scummvm.pot (from [https://github.com/scummvm/scummvm/tree/master/po the source code repository]) as a template and fill out the header. Then you just have to translate the strings and save your work in a po file. To download the file, click on scummvm.pot and then the ''raw'' or ''View Raw'' button. If this tries to display the file in your browser, do a right click on that button and select ''Save target file as...'' (the working might be different depending on the browser). You might also need to remove any extension added by your browser (for example for me Safari downloads the file as ''scummvm.pot.pps'', apparently believing it to be a MS Powerpoint file).
 
If a translation already exists for you language, you can get the up to date po file from [https://github.com/scummvm/scummvm/tree/master/po this same source code repository]. As for the template file, you need to click on the file you want and then use the ''raw'' or ''View Raw'' button. You may need to do a right click on the button to save the file on your computer instead of displaying it in the browser. Also some browser may add a ''.txt.. extension that you will need to remove.


Please note that:
Please note that:
Line 17: Line 11:
* Some strings (e.g. button labels) contain the definition of a shortcut key using the ~ characters. For example "~S~tart" will display "Start" and use 'S' has a shortcut.
* Some strings (e.g. button labels) contain the definition of a shortcut key using the ~ characters. For example "~S~tart" will display "Start" and use 'S' has a shortcut.
* '%' character in a string denotes an argument. For example '%d' is an integer and '%s' is a string. They need to be kept unchanged in the translated string and furthermore their order has also to be kept.
* '%' character in a string denotes an argument. For example '%d' is an integer and '%s' is a string. They need to be kept unchanged in the translated string and furthermore their order has also to be kept.
The recommended way to translate ScummVM is to use the web site mentioned above. But you can also download the translations on your computer and work locally. You can get the existing translation files either from our GitHub repository(https://github.com/scummvm/scummvm/tree/master/po - click on the file you want and use the "raw" or "View Raw" button) or from our translation web site (https://translations.scummvm.org). When working locally, translations can be produced with the use of the [http://www.gnu.org/software/gettext/ GNU gettext tools]. To create or edit a translation file you can for example use [http://www.gnu.org/software/hello/manual/gettext/PO-Mode.html Emacs PO-Mode] or [http://www.poedit.net/ Poedit] which are both free and available for various platforms. See [[#Editing Tools|Editing Tools]] for more tools.
Default users of the website can make suggestions and vote on the suggestions, but they cannot save translations or create new translations. Only official translators can start a new translations, accept suggestions and save changes to a translations. Thus if you want to start a translation for a new language you will need to speak to us. Also starting a translation it would be a good idea to check [https://translations.scummvm.org/projects/scummvm/scummvm/ the list of existing translations] and to contact the team on the forum or IRC to know if other persons are already working on a translation for this language. That way if there is already a translation in the work you can avoid duplicate efforts and work together.
You can also start your translation effort offline before it is added to the website by using the scummvm.pot (from [https://github.com/scummvm/scummvm/tree/master/po the source code repository]) as a template and fill out the header. Then you just have to translate the strings and save your work in a po file. To download the file, click on scummvm.pot and then the ''raw'' or ''View Raw'' button. If this tries to display the file in your browser, do a right click on that button and select ''Save target file as...'' (the working might be different depending on the browser). You might also need to remove any extension added by your browser (for example for me Safari downloads the file as ''scummvm.pot.pps'', apparently believing it to be a MS Powerpoint file).
You should also set the 'X-Language-name: Name\n' field in the header of the po file to indicate the name of the language in the ScummVM GUI. If not set, it will use the language code instead (for example 'de_DE' or 'fr_FR').
== Translating the README or QuickStart file ==
You can also provide a translation of the [http://github.com/scummvm/scummvm/blob/master/README README file] or of the [https://github.com/scummvm/scummvm/blob/master/doc/QuickStart QuickStart file] to distribute with ScummVM. The QuickStart file is actually an excerpt of the README file, so you can start by translating that file and later when you have more time translate the full README file.


== Using the translation in ScummVM ==
== Using the translation in ScummVM ==
Line 47: Line 52:


== Proposing your translation to the team ==
== Proposing your translation to the team ==
You are welcome to propose your new translations (or an update of an existing translation) on [http://sourceforge.net/tracker/?group_id=37116&atid=418822 our patch tracker].
The preferred way to propose your new translation (or an update to an existing one) is to use a pull request on [https://github.com/scummvm/scummvm GitHub].
As a simpler alternative you can also use [http://sourceforge.net/tracker/?group_id=37116&atid=418822 our patch tracker]. Please select the ''Translation'' category for the tracker item.


== Existing translations ==
== Existing translations ==
Currently the following translations are present in [https://github.com/scummvm/scummvm/tree/master/po our repository]. They may not be complete and improved translations for these languages are welcome. To download the file from the link above, you need to click on the file you want and then use the raw or View Raw button. You may need to do a right click on the button to save the file on your computer instead of displaying it in the browser. Also some browser may add a .txt extension that you will need to remove.
See https://translations.scummvm.org/projects/scummvm/scummvm/
<br>
{| cellspacing="2" cellpadding="5" width=100% class="chart color4"
|+ Available translations
|- class="color4"
! width=100 align=center|Language !! Translated strings !! Fuzzy translations !! Strings not translated
|- class="color2" align=center
| align=left|Catalan    || 356 || 28  || 120
|- class="color0" align=center
| align=left|Czech      || 493 || 7  || 4
|- class="color2" align=center
| align=left|Danish      || 493 || 7  || 4
|- class="color0" align=center
| align=left|German    || 485 || 7  || 12
|- class="color2" align=center
| align=left|Spanish    || 355 || 29  || 120
|- class="color0" align=center
| align=left|French      || 476 || 11  || 17
|- class="color2" align=center
| align=left|Hungarian || 493 || 7  || 4
|- class="color0" align=center
| align=left|Italian      || 355 || 29  || 120
|- class="color2" align=center
| align=left|Norwegian Bokm&aring;l || 492 || 8 || 4
|- class="color0" align=center
| align=left|Norwegian Nynorsk || 434 || 13 || 57
|- class="color2" align=center
| align=left|Polish      || 593 || 7  || 4
|- class="color0" align=center
| align=left|Brazilian  || 593 || 7  || 4
|- class="color2" align=center
| align=left|Russian    || 363 || 28  || 113
|- class="color0" align=center
| align=left|Swedish    || 490 || 7  || 7
|- class="color2" align=center
| align=left|Ukrainian  || 493 || 7  || 4
|}


Some people has also offered to work on new translations. These are the ones we are aware of:
<div id="mw-scummvm-weblate-status"></div>
<br>
{| cellspacing="2" cellpadding="5" width=100% class="chart color4"
|+ Known interests
|- class="color4"
! width=100 align=center|Language !! Person who contacted us
|- class="color2"
| Croatian  || RedDragon
|- class="color0"
| Dutch      || bhebing
|- class="color2"
| Finnish  || raina
|- class="color0"
| Portugal Portuguese || Jogait
|}


== Limitations ==
== Limitations ==
Line 153: Line 109:
* [http://gtranslator.sourceforge.net/ GTranslator] (Unix Gnome)
* [http://gtranslator.sourceforge.net/ GTranslator] (Unix Gnome)
* [http://translate.sourceforge.net/wiki/virtaal/index Virtaal] (Multiplatform)
* [http://translate.sourceforge.net/wiki/virtaal/index Virtaal] (Multiplatform)
== Contacting the Team ==
There are several ways you can contact the team for translations related question. You can visit the #scummvm IRC channel on [http://freenode.net/irc_servers.shtml irc.freenode.net], use the [http://forums.scummvm.org forum] or send an email to translation(AT)scummvm(DOT)org
TrustedUser
2,147

edits