Fixed a typo.
[LameXP.git] / doc / translate.html
blobaaa09f7c886fe6450ffb7ccd48229cce2acfe8fe
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <head>
4 <title>Howto: Translate LameXP v4.xx</title>
5 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
6 </head>
7 <body>
8 <h1>Howto: Translate LameXP</h1>
9 <p><b>If you are willing to contribute a new LameXP v4.xx translation or update/fix an existing translation, then this guide will help you to do so :-)</b></p>
10 <br>
11 <h3>Prerequisites:</h3>
12 <p>LameXP v4.00 is a complete re-write of LameXP. This time LameXP is developed in C++ and it is based on the <a href="http://qt.nokia.com/products/" target="_blank">Qt</a> cross-platform application framework. The good news for translators is that Qt provides <i>full Unicode support</i>, which was also one of the main reasons for the re-write. Consequently there will be no more headache with different Codepages! Furthermore the Qt framework provides a sophisticated translation system, which allows for easy internationalization and localization. There even is an easy-to-use graphical tool for translating Qt application, the <a href="http://doc.qt.nokia.com/latest/linguist-manual.html" target="_blank">Qt Linguist</a>. So before you start translating, you should make yourself familiar with the <i>Qt Linguist</i> application first. As a translator, having a quick look at the <a href="http://doc.qt.nokia.com/latest/linguist-translators.html" target="_blank">guide for translators</a> should be sufficient.</p>
13 <p>You can download <i>Qt Linguist</i> as a part of the Qt Framework, which is available as a free download from the <a href="http://qt.nokia.com/downloads/downloads" target="_blank">Qt download site</a>. You should pick the "LGPL" version and the "framework only" download.</p>
14 <br>
15 <h3>Editing the language file:</h3>
16 <p>LameXP v4.xx translations are created as TS (translation) files, which can be edited using the <i>Qt Linguist</i> application. For new translations an empty TS file ("Blank.ts") is provided in the LameXP Git repository. When you open the empty TS file for the first time, Qt Linguist will ask for some basic settings. Here you must keep the "Source language" options at "English" and "Any Country". Change the "Target language" options to whatever language (region) you are going to translate to. Once you have edited all (or some) text strings, you can save your work to a TS file again. It is recommended to save your work to "LameXP_XX.ts", where <i>XX</i> should be replaced with the suitable upper-case <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php" target="_blank">ISO 639-1</a> country code (for example the German translation is saved as "LameXP_DE.ts"). You can re-open your TS file at any time in order to continue with your work. In case you want to improve an existing LameXP translation, simply download the corresponding TS file from the LameXP Git repository and edit it using the Qt Linguist tool.</p>
17 <p>The latest translation (TS) files can always be found in the LameXP Git repository at:<br><a href="https://github.com/lordmulder/LameXP/tree/master/etc/Translation" target="_blank">https://github.com/lordmulder/LameXP/tree/master/etc/Translation</a><br><br style="line-height:4px">(After you have chosen a file from the directory tree, you can download the file by right-clicking on "raw" an choosing "Save Link Target As...")</p>
18 <p style="border-width:1px;border-style:solid;border-color:darkred"><font color="darkred"><b>Important:</b> Before you start translating, always make sure your download the <i>latest</i> "Blank.ts" file from the LameXP Git repository. If you want to edit an existing translation, including translations you have created yourself, make sure your download the <i>latest</i> TS file from the LameXP Git repository. Never ever do any translations based on an old working copy (TS file) from your local system! The translation files in the repository will be updated continuously, as the development proceeds.</font></p>
19 <br>
20 <h3>Language file editing rules:</h3>
21 Only language files that have been edited according to the following rules can be accepted:
22 <ul>
23 <li>The translated string should <i>not</i> be significant longer (or shorter) than the original string, so the layout isn't destroyed.
24 <li>Strings don't have to be translated literally, as long as the original meaning is retained.
25 <li>Do <i>not</i> use any HTML-style tags, like <tt>&lt;b&gt;&hellip;&lt;/b&gt;</tt>, <tt>&lt;i&gt;&hellip;&lt;/i&gt;</tt> or <tt>&lt;u&gt;&hellip;&lt;/u&gt;</tt> in your translated text, except when present in the original string.
26 <li>Take care of the <a href="http://en.wikipedia.org/wiki/Printf" target="_blank">C printf</a> syntax: All the <tt>%s</tt> and <tt>%d</tt> placeholders <i>must</i> remain in the translated strings, at the appropriate position.
27 <li>All Qt-style placeholders, like <tt>%1</tt>, <tt>%2</tt> and so on, <i>must</i> remain in the translated strings, at the appropriate position.
28 </ul>
29 <br>
30 <h3>Testing your translation:</h3>
31 <p>LameXP v4.xx needs to be re-built from the sources in order to integrate a new translation or to update one of the "built-in" translations. However there is an easy method to test your translation file <i>without</i> re-building LameXP: Open your current translation (TS) file in the Qt Linguist application and goto "File" -> "Release As...", which allows you to save your translation as a "release" (QM) file. Once saved as a QM file, you can load your translation in LameXP. Just goto "View" -> "Language" -> "From File..." and choose the desired QM file. Your translation should be in effect immediately. If you notice that your translation needs further modifications, go back to the TS file for editing. Then, for your next test run, create a new QM file from the updated TS file.</p>
32 <br>
33 <h3>Submitting your translation:</h3>
34 <p>Once you are done with your translation, you can submit it, so it can be integrated into the next LameXP release. You can contact me by e-mail:<br><b><a href="mailto:mulder2%20[at]%20gmx%20[dot]%20de">mulder2<font color="dimgray">[at]</font>gmx<font color="dimgray">[dot]</font>de</a></b></p>
35 <p>It is sufficient to submit the translation (TS) file. Please do <i>not</i> submit QM files. You don't need to compress the submitted file (ZIP, RAR, etc) and you don't need to attach a flag icon file.</p>
36 <p>(Note: Advanced translators can get write-access to the Git repository on request, so they can keep their translations up-to-date easily)</p>
37 <br>
38 <h3>Personalization:</h3>
39 <p>Usually all translators will be mentioned in the "About..." dialogue. If you don't want your name and/or e-mail address to appear there, please tell us how you want to be credited!</p>
40 <br>
41 <br>
42 Thanks in advance !!!
43 </body>
44 </html>