Language Translation

From Mumble Wiki
Revision as of 18:15, 18 November 2012 by PM (talk | contribs)
Jump to: navigation, search

Mumble currently (Oct. 2012) supports 17 different languages. As more people get to know and use Mumble, versions in their native languages become more and more important.

Translating is one way to contribute to the Mumble project, and we’re thankful for any help!

Updating or Adding a Translation

If you want to help extend an existing translation or create one for a language we do not support yet read this guide on how to update the language files for Mumble.

You can find a list of existing translations and their status here.

What You Should Know

If you are planning on translating to a language, please make sure and accurately translate it completely, and when it is added to Mumble, run Mumble and check over all the text, ensuring that it is accurately and properly translated, and that there is no text overlapping/incorrectly formatted. If it has any of these problems then revise the text and resubmit it. However, please at least double check the language before submitting it.

Getting Started

If you are running Windows then go here. Download linguist.7z and extract it using 7-zip. Put the linguist.exe it in your C:\Program Files (x86)\Mumble directory. Make sure you run the latest developer snapshot available from our page.

If you are running Linux you will need the Qt Development kit (you need the Qt Linguist program that comes with it). You can find it here. You can manually compile it but this is much faster.

It is also suggested that you peruse this guide to Qt Linguist before continuing with this guide. Please note if you are using Linux you must adapt this guide to all equivalent Linux related commands and procedures.

You will now need the Mumble ts translation files (e.g. mumble_en.ts) extracted from linguist.7z. Remember that these files will change as new versions of Mumble are released. Make sure to always use the latest linguist.7z (alternatively you can get the newest translation files from our repository).

Launch the linguist.exe you placed in C:\Program Files (x86)\Mumble by double clicking it (we recommend making a shortcut on your Desktop to Qt Linguist to speed up the process). Now click File -> Open... and select the ts file you want to modify:

Qtlinguist open translation files.png

If you want to translate to a new language open mumble_en.ts instead.

For new languages a target language selection dialog should pop up:
Qtlinguist settings for ts file.png

If not open it by clicking on Edit -> Translation File Settings.... In the Target language box make sure the language you are translating to is selected.


Linguist-navigation-buttons.png

You can use Linguists navigation buttons to jump to unfinished translations and mark them as translated once you are done.

There are various mechanisms that aid you in the translations and these are explained in the Qt Linguist guide.

For example, if you open mumble_de.ts, you will see this:
Qtlinguist opened file.png

When you save the file for a new translation make sure to name it in the language you are translating to. For instance if you were translating to Russian you would save the file as "mumble_ru.ts". Otherwise just overwrite the existing file.

When you save the file for an existing translation make sure to change the file type to "Qt translation source (latest format) (*.ts)" and overwrite the existing file:
Qtlinguist save as ts.png


Remember, translations a slow, precise work and require much translation effort. You do not need ANY coding skills in order to translate Mumble however, just time and patience. Take at least a couple of days to make sure you have accurately translated each section. You can periodically save it and come back to it of course. If you come to a word or phrase that cannot be accurately translated, please leave it in the default English language, if an entire entry cannot be translated correctly, just leave that particular entry blank. When you are done with the entire translation, click File -> Save.

Testing The Results

The language file can now be tested. Open your language file in Linguist and do File -> Release As... then save it to your Desktop. You should now have mumble_*.qm (where * is the abbreviation of the language you are translating, for instance if it was Polish you were translating to it would be mumble_pl.qm). Go to your Mumble folder and put the mumble_*.qm file inside of it. Now start Mumble and make sure that your language is set for "System default" in the user interface section of the Mumble configuration. Windows should also be set to use the language you are translating. The language should be displayed in Mumble when you start/restart Mumble.

Submitting The File

Submit the file that you translated (mumble_*.ts) here. Archive your ts file (e.g. zip it) and attach it to the post. On the title put <language you have translated> Translation. The Mumble developers will take your translation file and add it to Mumble. Remember, do not submit the file as a compiled .qm file, as the Mumble developers cannot properly use this type of file.

Installer translations

With the guide above you can translate the client itself. For the windows platform mumble has an installer which has to be independently translated. For information on how to do this see Windows installers translations.

Becoming Part of the Project

If you would like to be a regular translating member of the Mumble project, please apply to be a translator here:

https://lists.sourceforge.net/mailman/listinfo/mumble-translations

Integrating new translations

  • Place mumble_*.ts file in src/mumble/:
  • Add file to TRANSLATIONS in src/mumble/mumble.pro
  • If available add Qt translation to QT_TRANSLATION_FILES_SRC in src/mumble/mumble.pro
  • If available add Qt translation to mumble_qt.qrc
  • Add file to resources in mumble.qrc

Updating translation templates

We do this regularly so unless you are adding new strings to mumble and want to translate them right away there is no need to run this yourself.

To update the .ts translation files we use:

lupdate -no-ui-lines -disable-heuristic similartext -locations relative -no-obsolete mumble.pro