Translation Guide for Nabble

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

Translation Guide for Nabble

Hugo <Nabble>
Administrator

If you want to help with translations, please read this guide first.

Nabble uses an XML-based language to map sentences in english to sentences in a foreign language. Let's start with a simple example:
<translation>
    <from>New Topic</from>
    <to>Novo Tópico</to>
</translation>
The translation document will have hundreds of tags like the one above. The sentence in english should NOT be changed, otherwise the system would not know how to make the translation work. You don't have to keep the tags indented or well-aligned, so this would also work:
<translation><from>New 
Topic</from><to>Novo
 Tópico</to></translation>
You can even keep everything in just one line to save space:
<translation><from>New Topic</from><to>Novo Tópico</to></translation>
We actually prefer this collapsed format because it keeps the translation files smaller, but feel free to change the format when you translate the texts to your language.

There are a lot of things you have to pay attention to when you create a new translation file. Let's go through the most important ones.

(1) Punctuation

Please make sure you follow the same punctuation as the sentence in english. For example:
<translation>
    <from>An email has been sent to you.</from>
    <to>Um email foi enviado para você.</to>
</translation>
Note there is a period (dot) at the end of the english sentence, which is also true for the portuguese sentence. Some sentences don't have a period, so you have to pay attention and make sure every sentence is consistent with the english part.

(2) Uppercase and lowercase

You also have to pay special attention to each word in each sentence and make sure your translation follows the uppercase/lowercase pattern. Let's see one example:
<translation>
    <from>Confirm Password</from>
    <to>Confirme a Senha</to>
</translation>
Note that both words start with uppercase letters. This is also true for the sentence in portuguese, although it has a lowercase connector that is part of the sentence and thus cannot be removed. Here is another example:
<translation>
    <from>Data successfully saved</from>
    <to>Dados salvos com sucesso</to>
</translation>
Now only the first word of the sentence starts with a capital letter, so the same rule applies to the portuguese sentence. You should understand that the rules of your foreign language must be followed as well. For example, in German all nouns start with capital letters, so this should always be true in the translation, even if the english sentence doesn't have capital letters at all. In fact, this is another reason we don't force to-lowercase and to-uppercase conversions. So you will probably notice sentences that look pretty similar, but the difference is in the capital letters:
<translation><from>users</from><to>usuários</to></translation>
<translation><from>Users</from><to>Usuários</to></translation>

(3) Variables

The sentences may have variables that will be replaced later by the system. For example:
<translation>
    <from>Page <t.number/></from>
    <to>Página <n.number/></to>
</translation>
In this case, the page number is placed in the sentence. The first thing you must note here is that the variable in the FROM starts with "t." (t.number) and the variable in the TO starts with "n." (n.number). This is how our technology was implemented and we will not go into the details for now, so you should only understand this basic difference at this point. You should also understand that the order of words and variables can be changed without problems:
<translation>
    <from>AAA <t.variable/> BBB</from>
    <to>AAA BBB <n.variable/></to>
</translation>
In some cases, the sentence will have tags to build links:
<translation>
    <from>You can try <n.register_link.>registering again</n.register_link.> or contact <n.support_link/>.</from>
    <to>Você pode tentar <n.register_link.>registrando-se novamente</n.register_link.> ou entrar em contato com <n.support_link/>.</to>
</translation>
As you can see, those tags should still be present in the translated sentence and should be used in the same context. Note also that – in this case – all variable tags start with "n." and this is also correct. Since you will receive a file will all sentences in english ready to be translated, the only rule you should remember about this is: variable tags in the translated part (<to>...</to>) should ALWAYS start with "n.".

(4) Declension

Declension is a very important topic and should be handled properly. In some languages – like portuguese – nouns, pronouns, adjectives, etc. must be changed based on the words they relate to. For example, in english we have "Your forum" and "Your gallery". The "your" pronoun doesn't change, but in portuguese we have "Seu fórum" and "Sua galeria". Forum is a masculine word and gallery is feminine. So we must change the pronoun accordingly. Since Nabble has sentences like "Create a new forum" and "Create a new gallery", we need some logic to build those sentences correctly in other languages. Here is how we do this for the portuguese language:
<macro name="is_masculine" dot_parameter="noun">
	<n.not.regex_matches text="[n.to_lower_case.noun/]" pattern="galeria|mensagem|subcategoria|categoria"/>
</macro>
The concept of macro above will be explained later when we release the templates feature. In summary, a macro works just like a function that you can call from other tags. In this example, this macro returns TRUE if the "noun" parameter isn't found in the pattern "galeria|mensagem|subcategoria|categoria" (which is a pipe-separated list of feminine words from the Nabble interface). So let's consider the sentence "Congratulations on your new forum!" and "Congratulations on your new gallery!". This is how it looks in practice:
<translation>
    <from>Congratulations on your new <t.app/>!</from>
    <to>Parabéns <n.pelo_seu_novo.app/>!</to>
</translation>
Note that in the portuguese sentence we use a command called "pelo_seu_novo", which is implemented like this:
<macro name="pelo_seu_novo" dot_parameter="what">
	<n.if.is_masculine.what>
		<then>pelo seu novo</then>
		<else>pela sua nova</else>
	</n.if.is_masculine.what>
	<n.what/>
</macro>
This macro has a parameter called "what" (it is defined as a 'dot' parameter because we want it to be called after a dot). The macro returns "pelo seu novo <n.what/>" if "what" is masculine and "pela sua nova <n.what/>" if "what" is feminine. With this type of logic you can build any sentence in portuguese (at least for what Nabble really needs). If your language has declension, you should create a logic like the one above. We can help you with that, if needed.
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

sagaro
Olá, antes de tudo quero felicitá-lo sobre o seu trabalho e acho que a maioria dos usuários estão dispostos a ajudar Nabble apenas uma sugestão que você pode fazer negrito ou sublinhado texto em português acho que seria mais ágil tradução para outras línguas novamente parabéns e cumprimentos
Visita mi foro Los vivales no duran
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

Peter <Nabble>
Não podemos colocar negrito, sublinhado ou qualquer outra formatação pois o arquivo é de texto simples, como o do bloco de notas do windows, por exemplo.
Nabble staff. We never ask for passwords.
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

sagaro
porque era apenas uma idéia que talvez poderia ser copiado para um editor de texto como o Word e de lá criar o documento no idioma que você precisa só de ver que as palavras mudam, mas de qualquer forma obrigado e saudações


Gracias solo era una idea que quizas se pudiera copiar en un editor de texto como word y a partir de ahi crear el documento en el idioma que necesitemos solo era para ver cuales son las palabras a cambiar pero de todas formas gracias y saludos
Visita mi foro Los vivales no duran
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

sagaro
In reply to this post by Hugo <Nabble>
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

sagaro
In reply to this post by Hugo <Nabble>
http://nabble-support.1.n2.nabble.com/file/n6710333/de_prueba.txt
Hi maybe this can serve
regards
Visita mi foro Los vivales no duran
Reply | Threaded
Open this post in threaded view
|

Translation Guide for Nabble - Swedish

bautaman
In reply to this post by Hugo <Nabble>
Hello!

I want to translate from English to Swedish.

What file can I download and start working with?
How do I upload it to see my changes?

I'll probably make some database structure for this,
that can be useful for other languages as well.

I wish to do it in small steps.

Please respond with instructions to bautaman@mdb.nu

bab
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

bab
In reply to this post by Hugo <Nabble>
Hello,

I would be glad to help you with the translation my way by sending you digital copys or a Wordfile with the content in Swedish. Please send me a mail if you want my help and I will show you what I mean.

Best regards
Bert-Åke, Tryckerikontakten
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

Hugo <Nabble>
Administrator
Please read the getting started guide here:
http://support.nabble.com/Getting-Started-tp6670642.html

You can edit the sample translation file (portuguese) to swedish. Thank you!
bab
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

bab
In reply to this post by Hugo <Nabble>
Hello again!

Just saw that the Swedish language was incorrect and incomplete and, as I said, I will be happy to help. But if the question is about programming I neither have the time or knowledge. Looks like a great site you have. Looking forward to test nibble.

Best regards
Bert
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

madamKighal
In reply to this post by Hugo <Nabble>
Hi!
I want to translate to Serbian (and that is the Montenegrian, Croatian and Bosnian, too) Why should I do to start?
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

Pedro <Nabble>
Please read the getting started guide here:
http://support.nabble.com/Getting-Started-tp6670642.html
My test forum.
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

Deki
In reply to this post by Hugo <Nabble>
Nabble helped me very much and least I can to nabble is to try to translate it on my native language, Serbian which is almost same like few languages around like Croatioan, Bosnian. So I will try as much as I can.
Reply | Threaded
Open this post in threaded view
|

Re: Translation Guide for Nabble

bimup
In reply to this post by Hugo <Nabble>
Hi,

I have a question: What do I need to do after I finish the translation to get it available in the system? What can I do to apply the new language on my forum?

Thanks a lot in advance!