This is a project page for Translators. Translators can check in here to find out what they can do. If you have any questions about this information, or suggestions for improving this page, please discuss in the Doc Helpers board
Languages to Translate
Below is a list of the 40 languages which SMF has been translated into. The links show the percentage of the translation completed in the Translation Extension for each language. This is the place to check to see what still needs to be translated. If the English text of these pages is modified, translations may need to be updated, so also please keep checking for updates from the Documentation Team in the Documentation Help board regarding changes to these pages. If the language you are interested in translating is not in this list feel free to contact the Documentation team at the above email address and let us know which language you want to translate and we will work with you on seeing if you can add it.
- Albanian
- Arabic
- Bulgarian
- Catalan
- Chinese (Simplified)
- Chinese (Traditional)
- Croatian
- Czech
- Danish
- Dutch
- Esperanto
- Finnish
- French
- Galician
- German
- Greek
- Hebrew
- Hungarian
- Indonesian
- Italian
- Japanese
- Lithuanian
- Macedonian
- Malay
- Norwegian
- Persian
- Polish
- Portuguese
- Romanian
- Russian
- Serbian Cyrillic
- Serbian Latin
- Slovak
- Spanish
- Swedish
- Thai
- Turkish
- Ukrainian
- Urdu
- Vietnamese
How to translate these pages
These translations will be done using a wiki extension called the Translate extension, provided by the translatewiki team. To begin, go to the base page to be translated. If you have permission to translate, you will see a link titled "Translate this page" before the content of the page. Follow the link to the Translate form. You'll see the page's name listed in "Group". Choose the language from the drop-down list, and hit the "Fetch" button.
You will see all the language strings which need to be translated. The translation tool calls them messages. The link for the language message is on the left, and the content is on the right. Click on the link to start an editing window for that message. Above the editing window, you will see the source text, labeled "Message definition". In the textarea below, you may begin typing in the translation. If you wish, enter a Summary to discribe the changes you have made. When you have completed translating the language message, you must use the "Save page" button to save the language message you are editing on this page.
For more information on translating, please see the Page translation feature documentation from the translatewiki team
Translating links
The standard method for creating Wikilinks doesn't work very well in the Translation Extension, so the llink template method is used instead.
- 1. Linking to another wiki page:
English version:{{llink|Main menu|text=Main menu}}
Esperanto version:{{llink|Main menu|text=ĉefa menuo}}
"Main menu" is the name of the original English version of the page. You should never translate this as the llink template will automatically redirect users to the translated version. You should however translate the part after text=. In the example, the Esperanto translation "ĉefa menuo" has been entered.
- 2. Linking to a certain section of another wiki page:
English version: {{llink|Profile|anchor=Personal_Messaging|text=Personal Message Options}}
Dutch version: {{llink|Profile|anchor=Persoonlijke_berichten|text=Persoonlijke berichten opties}}
Again, don't translate the English name of the original page ("Profile" in this case). But do translate the words after text=, as these are the words that will appear in the link on the page. The anchor= marks the part of the Profile page that the link will lead to. The target of anchor= has to be changed in order to work correctly on the translated page. For example, in the case of the Dutch translation it has to be changed to anchor=Persoonlijke_berichten. You can discover what to enter after anchor= by going to the translated version of the page (in this case, Profile), then click on the the translated title of Personal Messaging in the Table of Contents. You will then see the required text in the address bar of your browser, the part after the hash sign (#). For example, in the case of the Dutch version:
http://wiki.simplemachines.org/smf/Profile/nl#Persoonlijke_berichten
Note that for languages which use certain special characters, the text after the above hash sign might have been automatically converted into a compatible format, which might seem a little confusing at first. For example, in the case of Esperanto, the above link appears as ...#Privataj_mesa.C4.9Doj rather than ...#Privataj_mesaĝoj. Make sure that you use the converted form.
How to translate a template
In wikimedia a template is a special page that can be used within other pages to repeat consistently informations and/or structures (e.g. boxes like Template:Version specific). Templates can contain HTML, formatting entities, logical constructs and of course text. HTML, formatting and logical operators must not be translated, while text should be.
The translation of a template follows a different approach then the translation of a normal page.
- Create a new sub-page of the template.
The first step is create a new sub-page of the template. The name of this sub-page must correspond to the code of the language you want to translate the template to (we will provide a list of codes as soon as possible, in the meantime you will find few links already created in each updated template).
Example: For the template Template:Add_new_template_translation , you can see the existing subpages at Special:PrefixIndex/Template:Add_new_template_translation/. Here's how the /it sub-page was created- Go to the template. You'll find it at http://wiki.simplemachines.org/smf/Template:Add_new_template_translation
- Edit the address bar on your browser. Add a slash, followed by the correct language code. For italian, this was done by adding /it, so the address bar now said http://wiki.simplemachines.org/smf/Template:Add_new_template_translation/it
- Copy the entire template to the sub-page.
- Now, at the template's base page (for example, http://wiki.simplemachines.org/smf/Template:Add_new_template_translation), use the "edit" or "view source" button to see the complete source of the base page. Copy all of this
- If the translated template sub-page already exists, you should see an "edit link" (for example, at http://wiki.simplemachines.org/smf/Template:Add_new_template_translation/it). If it does not yet exist, you will see a message such as "There is currently no text in this page. .... edit this page". This is the English-language version of the message. The actual message content may depend on the localization settings you have chosen on the wiki. Follow the link to edit this page.
- Paste the content you copied from the template's base page into the sub-page you are creating.
- Translate ONLY the text that needs to be translated, and keep everything else just as it was. Complex templates will be marked up with contents to tell where to begin and end translation (<!-- start translate -->) and the end (<!-- stop translate -->).
- A list of the templates ready for translation can be found in the Category:Translatable templates
Tips and trick about translations
Headlines, templates, other formatting and line spacing
Just noticed:
{{Other languages}} {{TOCright}} <translate><!--T:1--> ===View All Members===
will result in the headline no being properly displayed in translated pages (i.e. the triple equals doesn't get translated to a heading and remains as it is). To solve the issue, please use an empty line between the last template and the translate tag:
{{Other languages}} {{TOCright}} <translate><!--T:1--> ===View All Members===
The same applies to any kind of text: always leave a white line between the templates at the beginning of the page and the translate tag.
Redirects
Once a page is marked for translation is impossible to "revoke" this mark and let the page behave like a normal one. The same applies to redirects too.
But redirects are more complicated: for example if the content of a page (let's say page_A) is moved to another page (page_B for this example), page_A is redirected to page_B and page_B is marked for translation, the translate extension will show the entries twice. Additionally if a placeholder is used in the redirect (e.g. in page_A) and is marked for translation, for sure if the id of the translation unit is the same as one of the ids in page_B there will be problems in particular while translating the unit with the same name.
The workaround used temporarily is to avoid the redirect and use a message in the page that should contain the redirect with a link to the new page and being sure that there are no conflicts between .
Alternative solution to be tested
Use a placeholder in the redirect page and name the translation unit something totally different from any other unit in the proper page.