Comparing versions
Version 1Current version
TikiPro has a unique translation interface, which allows you to translate strings on this server and then export them here and import them to your own database. Our internationlisation system has some very unique characteristics, which might need some introduction and explanation.

Translation Permissions

If you speak a language other than english and would like to help translate TikiPro, please contact us through this form thread or drop by IRC and we will give you the appropriate permissions.

Languages Menu

as soon as you have the correct permissions, you will see a languages menu which gives you 3 options:
Edit Languages
This takes you to a screen that gives you access to all available languages and thier descriptions.
Import / Export
Here you can get access to the available languages and where you can Import and Export Languages.
Master Strings
A list of all the english master strings, used as a reference for the translations.

Translation Procedure

There are severl methods to approaching this. I will outline the Translation procedure beginning with the creation of the language if it doesn't exist, then working on the strings that need translating and how to make modifications, finally, i will outline how to export the language file from here and import it on your server.

Creating a new Language

go to edit languages where you can see all available languages already defined. if your language (or localosation) does not exist, click on the Create Language button and fill in the information in the form and save the information.

Editing the Translations

Select the language you want to translate TikiPro into and hit the Edit Translations button, which will take you to a screen with the English Master strings and a text box under each one. If you understand the context and know how to translate the text, go ahead and translate it.

Translation Notes

if you come accross {curly brackets} with unreadable stuff within them please copy that into your translation string and try and work out where in the text it should go. also, please maintain any HTML formatting which is present.

e.g.: A gallery named {displayname hash=$gTikiUser->mInfo nolink=1}'s Gallery will be created for you and images will be added to it.

the {} enclose the displayname of a given user. this means you can simply treat the {} as a regular name where the users name and Gallery are surrounded by tags, making this text appear bold in the output.

Where does the master come from?

Unfortunately there is no easy way to work out the context of where the master string has origniated from. it might be easiest if you go to your personal preferences page and set the site language to the language you want to translate to. this way it's easier to spot any untranslated strings or strings that don't match the context.

Translating a specific string

when you spot a string that needs modifying or updating, you can go to the same page as described above and then search for the string using the search box on the edit translations page.

Multiple strings with similar content

due to the continuous developement of TikiPro it can't be avoided that certain strings have to be updated slightly or typos have to be fixed in the templates.

since we record untranslated strings, it will cause the insertion of such strings in the database. this can result in similar strings where only one is used.

for instance, say, this string has been updated:
{code()}
Press this button to be happyy.
{code}

to
{code()}
Press this button to be happy.
{code}

if you have already translated the first string and the typo is adjusted in the template, the translation will not be visible anymore. to rectify this, go to the Master Strings page and search for this string. once you have found the old string, click on it and insert the new string and save. after clearing the language cache, all the translations will strill work, even though the string has been changed!

Importing / Exporting

once the translations have been completed, you can export the language file by visiting the Import / Export page. Pick a language to export and save the file to your server in the mentioned path.

once it is in place, you can visit the Import / Export select the correct language in the import section and import it. this will update your site with all the translations available on TikiPro.

i really hope this short guide helps with any unclear issues regarding translations. please feel free to update this page if you have any ideas on how to improve the tutorial.
 

Bitweaver has a unique translation interface. You can translate strings here on bitweaver.org, and then export them from here to import them to your own site. The added benefit of translating here on this site is that everything will be included in the next programme release for other users.

How to get started

To translate Bitweaver to another language than English, please contact us through this form thread or drop by IRC to get someone to give you the appropriate permissions.

Languages menu

As soon as you are member of the group Translators, you can access a language menu which gives you several new options:
  • Edit Languages: gives you access to all available languages and their descriptions
  • Import/Export: access the available languages, and import or export them
  • Master Strings: list of all English master strings - the references for the translated strings

Translation procedure


Translating

Go to Edit Languages and select the language you want to translate bitweaver into. The button Edit Translation will take you to an alphabetical listing of the English master strings. For each master string there is a text box. If you understand the context and know how to translate the text, go ahead and translate it.

Unfortunately, there is no easy way to work out the context of where the master string has originated from. On bitweaver.org, try going to your personal preferences page and set the site language to the language you want to translate to. This way, it's easier to spot untranslated strings as well strings that don't match the context.

Translating a specific string

When you spot a string that needs modifying or updating, you can go to the Edit Languages page and then search for the string using the search box.

Typos

Typos (or multiple strings with similar content in general) can't be avoided, due to the continuous development of Bitweaver. Certain strings will always have to be updated slightly, when a developer changes them in any template (e.g., /wiki/templates/edit.tpl).

On bitweaver.org, the feature record untranslated strings is enabled, which adds such strings to the database.

For instance, say, this string is adjusted in a template (e.g. buttonform.tpl):
  • Press this button to be happyy, has been updated to
  • Press this button to be happy.

Now to update the old string in the database to the new string, in order to reflect the change in the template: go to the Master Strings page (language menu) and search for the old string, edit it, insert the new string, and save. After clearing the language cache, all the translations will work correctly.

Importing and exporting

Once the translation has been completed, export the language file via Import/Export (language menu). Pick the language you translated to export and save the file to your server. Then, visit the Import/Export on your server, select the correct language in the import section and import that file.

Once you are at the import screen, you can choose between three modi. You can either overwrite all strings from your local install with the ones you are about to import, or never overwrite local strings if they were changed locally before, or solve these kinds of conflicts manually. Choose manually to be safe. This will give you an overview of all strings you just translated on bitweaver.org and contrast them with the old local strings you want to update.

Notes and Recommendations

Creating a new language

Go to Edit Languages where you can see all available languages. If your language does not exist, click Create Language, and fill in the required information. Then, proceed as above: go to Edit Languages and select the language you want to translate bitweaver into, and so on. This procedure of creating a new language also applies if you want to create a localalisation, a dialect, or a formal/informal version of an existing language.

Source code snippets

If you come across {curly brackets}, please copy them and their contents into your translation string. Try to work out where in the text this part should go. Please maintain any HTML formatting which is present. As an example, a master string like
  • A gallery named {displayname}'s Gallery will be created for you and images will be added to it, would be translated to
  • Die Galerie {displayname}s Galerie wird erstellt und Bilder hinzugefügt, if the language was German. Note how curly brackets (and HTML code, if in place) are preserved. The curly brackets enclose the displayname of a given user, in this example. This means you can simply treat the string in curly brackets as a regular name.

Master string is not English

If you come a accross a master string that is not in English, something like 'Viimeiset Foorumin Lähetykset' you can ignore this. This means that a particular string was translated twice. We have fixed the code that caused these problems, but there might still be such strings in the database. Let us know of such strings and we will remove them. If you edit the translations here on bitweaver.org, you can safely remove non-english master strings. Just don't delete master strings that appear to have typos (without checking if a translation exists anyway).

This is also true for cases where the master string might already look translated. e.g.: You are translating to German and you see the master string: 'Apfel'. You don't have to translate this again. It will eventually be removed from the database.

Formal, Informal, Dialects

To have a dialect, a formal language version, or even a redneck, rude or informal nuance for a given language: greate a base language using the two-letter code such as de. Then, add your own dialects such as de-at (Austria) or de-ch (Swiss German) or even something like de-formal (formal). It's important to have a base translation in de and then have modifications in the dialect.

Say you set your homepage language to de-at, your Bitweaver will look for the translation of a string in that set of translations. If it can not find the translation of the string there, it will look in de (the base translation of that language). If it still can't find the translation, it will return the original English string.

The Master string is the name of a package

Well... this is a bit tricky. I'd say that we shouldn't translate package names, but we put them in there that they could be translated if so desired. Suppose this is a personal preference thing.

Incomplete sentences

These are difficult to deal with since it's difficult to determine where the string came from. In terms of coding it's sometimes necessary to do this, otherwise we'd end up with strings like:

<?php
You have 2 unread messages
.
You have 3 unread messages.
You have 4 unread messages.
You have 5 unread messages.
?>

In a case like this, a coder might decide that it might be best to translate You have and unread messages. We have restructured most sentences to avoid this sort of broken sentence but sometimes it's unavoidable. I'm afraid there's no easy answer to deal with this question.

Wrong Master Strings

What to do if
The Master string is partly in English and partly in another language
see below and 'Vytvořit Wiki Page Body'
There are multiple identical Master strings
'This plugin creates a expandable box of text. All text should be entered between the '
There are many variants - do they all need to be translated
See "R" (there are mixed language master strings, foreign language master strings and permutations).


<?php
Recent Images autor
: <a title="Visit the userpage of: Anna" href="http://66.179.240.126/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://bonnie.bitweaver.org/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://com.bitweaver.org/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://content.schedulewire.com/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://testing.bitweaver.org/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://www2.bitweaver.com/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://www.bitweaver.org/schuflada">Anna</a>
Recent Images autor: <a title="Visit the userpage of: Anna" href="http://www.schedulewire.com/schuflada">Anna</a>
?>


Language-specific notes

In a language where there is a formal and an informal expression, consider avoiding the active mode. "If you enable this, feature X will do Y" can easily become "If enabled, feature X will do Y" (even in English).
Page History
Date/CommentUserIPVersion
29 Oct 2008 (13:43 UTC)
less complex structure
laetzer141.20.150.4325
Current • Source
laetzer85.178.7.21623
View • Compare • Difference • Source
laetzer85.178.7.21622
View • Compare • Difference • Source
laetzer85.178.26.24221
View • Compare • Difference • Source
kinderlehrer118.90.21.12620
View • Compare • Difference • Source
xing62.47.239.13516
View • Compare • Difference • Source
kinderlehrer118.90.21.12615
View • Compare • Difference • Source
kinderlehrer118.90.21.12614
View • Compare • Difference • Source
kinderlehrer118.90.21.12613
View • Compare • Difference • Source
kinderlehrer118.90.99.22512
View • Compare • Difference • Source
kinderlehrer118.90.99.22511
View • Compare • Difference • Source
laetzer85.178.31.15510
View • Compare • Difference • Source
Kozuch85.207.244.1609
View • Compare • Difference • Source
xing194.152.164.457
View • Compare • Difference • Source
AC van Rijn146.50.201.1546
View • Compare • Difference • Source
AC van Rijn146.50.201.1545
View • Compare • Difference • Source
AC van Rijn146.50.201.1544
View • Compare • Difference • Source
xing194.152.164.453
View • Compare • Difference • Source
xing194.152.164.452
View • Compare • Difference • Source
Neanderthal194.152.164.451
View • Compare • Difference • Source