Version 16


A guide on how to translate bitweaver into your language

Created by: xing, Last modification: 20 Oct 2008 (16:50 UTC) by xing

Bitweaver has a unique translation interface. You can translate strings here on, 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


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, 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 (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, 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.
The amended phrase will now appear as untranslated.

Master strings

To update an old string in the database to a new string 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.

Creating a new language

Go to Edit Languages where you can see all available languages. If your language or localisation does not exist, click Create Language, and fill in the required information. Then, proceed as above.

Translation notes

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.

Language-specific notes

What to do if:
The Master string is partly in English and partly in another language
There are multiple identical Master strings


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.

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. We should remove this string from the database.

Formal vs. Informal or even Dialect

So, you think you want to have a dialect, formal language version or even a redneck, rude or informal version for a given language. With our translation system this is possible. you can greate a base language using the 2 letter code such as de and then you can 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, it looks 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.

Your preferred Language Nuances

See the dialect section TranslationTutorial.

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:

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.

Page History
29 Oct 2008 (13:43 UTC)
less complex structure
Current • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source
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
View • Compare • Difference • Source
View • Compare • Difference • Source
View • Compare • Difference • Source