1 (edited by GunChleoc 2014-03-04 15:22:50)

Topic: How to translate Neverball and Neverputt

This post contains instructions for translating Neverball/Neverputt.

How to use Transifex

  • We have set up a translation project on Transifex. If you don't have an account with them, you will need to create one first.

  • Visit our translation project on Transifex and check if your language is already being translated.

  • If your language isn't being translated yet, use the "Request language" button.

  • If your language is already in the list, click on the language, then on the "Join team" button. Make sure you coordinate your translations with the rest of the team! We leave it up to you how you wish to handle that. Transifex has a options to lock a translation for other translators for a fixed time.

  • In any case, let us know if you wish to become a translator or a reviewer. You can do that by posting to this thread.

  • If you have reviewer status, never mark a string as reviewed unless you're 100% certain that it's correct! We will include unreviewed translations into the software as well, so there's no need to worry about getting "reviewed" status for the strings. However, it is important to keep things clean.

  • Transifex allows you to watch the project, so you will get a notification whenever the source file changes.

  • Transifex also allows you to download the file you're translating. Choose "Download for translation" to lock out other translators and prevent any duplicated translation effort. As offline editors, I recommend Virtaal or Poedit.


How to add your translation to the game

In order to add your language to the game, you will have to add a configuration file for it to the <neverball-dir>/data/lang directory. You can use this configuration file for your own testing, but you will also need to provide this file to us when your language is ready to be included in the game.

The filename needs to be ISOcode.txt, e.g. fr.txt for French. The file needs to contain the English name of your language as well as its native name, like this:

name1 French
name2 Français

Make sure to save the file in UTF-8 encoding, otherwise all non-English characters will get messed up.

Finally, you will need an .mo version of your translation file. You can create one by saving the .po file in Poedit, or by exporting it with Virtaal. If you are comfortable with using the gettext utilities on a command line, you can also use that. The file needs to be named neverball.mo, and you have to place it in <neverball-dir>/locale/ISOCode/LC_MESSAGES/.


Defining your font set

If your language contains characters that aren't supplied by our standard font, you can specify that in ISOcode.txt as well, e.g. in zh_CN.txt, we have a third line:

font ttf/wqy-microhei.ttc

You will find the fonts available in data/ttf. If we don't have a font for your character set yet, please talk to us so we can find one.

If you have any further questions/problems with the translation process, please let us know.

Happy translating and thank you for your contributions!

2

Re: How to translate Neverball and Neverputt

I sent you a request for both Italian and Esperanto smile

~DEV

3

Re: How to translate Neverball and Neverputt

I've let you in smile

4

Re: How to translate Neverball and Neverputt

Applied for French translation.

5

Re: How to translate Neverball and Neverputt

I just approved you. Welcome to the team! smile

6

Re: How to translate Neverball and Neverputt

Hearing all this talk about a 1.6.0 I applied for the German translation!

7

Re: How to translate Neverball and Neverputt

Awesome! Approved.

8

Re: How to translate Neverball and Neverputt

smile That was fast!

9

Re: How to translate Neverball and Neverputt

Welcome to the team smile

10

Re: How to translate Neverball and Neverputt

Just in case anyboddy missed it, we have a new string to translate, describing Reshaun's levels

11

Re: How to translate Neverball and Neverputt

I spotted last week that there was an outstanding request on Transifex from somebody who wanted to assist with Catalan translations. I don't know much about how Transifex works, but is that being looked at?

Cheese
==========
cheesetalks.net

12

Re: How to translate Neverball and Neverputt

I noticed that Transifex overrides metadata.

I don't quite like being credited just with my transifex' username, so I edited it to add my full name but the website seems to override the changes I make when I upload back.

~DEV

13

Re: How to translate Neverball and Neverputt

Yeah, I don't really like that either, but not sure what to do about it. We should probably highlight the authors.txt file more, so new translators know that they should get themselves added to it. I can write a script that extracts translation credits with the Transifex API, but that only seems to provide username information.

14

Re: How to translate Neverball and Neverputt

Cheeseness wrote:

I spotted last week that there was an outstanding request on Transifex from somebody who wanted to assist with Catalan translations. I don't know much about how Transifex works, but is that being looked at?

When somebody applies, parasti or me have to let them in. I don't see any open applications, so I think parasti already took care of it.

I usually get a notification + e-mail when somebody applies.

15

Re: How to translate Neverball and Neverputt

Um, well, I receive those emails too!

E.g., on April 29:

The user Catalanoic was accepted to the team Neverball team for Catalan by GunChleoc.

16

Re: How to translate Neverball and Neverputt

Sweet.

At the time I spotted it, there was an activity item at the bottom of the project page saying that nue had been added to a particular language. I didn't see a corresponding one for Catalanoic and misread that as indicating it hadn't been dealt with.

Cheese
==========
cheesetalks.net

17

Re: How to translate Neverball and Neverputt

They only show a few of thise, so it might have dropped below the rim or something.

18

Re: How to translate Neverball and Neverputt

I've requested the Slovak language. smile

19

Re: How to translate Neverball and Neverputt

Great!

I can't find the approve button anymore, so I've written to Transifex.

20

Re: How to translate Neverball and Neverputt

OK, Reply from Transifex is in - they have added a new user role "Team Manager" that I need to allow new languages http://blog.transifex.com/post/86308913 … m-managers

@Parasti, could you please add me to the Team managers, so I can add a Slovak team?

21

Re: How to translate Neverball and Neverputt

I still can't get in, so I've manually created a blank po file for you. You can translate offline and upload once we get this sorted.

Post's attachments

neverball-sk.po 36 kb, 91 downloads since 2014-08-05 

22

Re: How to translate Neverball and Neverputt

GunChleoc wrote:

I still can't get in, so I've manually created a blank po file for you. You can translate offline and upload once we get this sorted.

I've been already doing that, but thanks! Anyway, do you have any idea why there's "menu" prefix included in some translatable strings (such as "menu^Play")? It seems NeverBall implements its own function for prefixes to solve ambiguity instead of using gettext context specifiers.

23

Re: How to translate Neverball and Neverputt

Yes, this works the same as with Wesnoth. Just translate it as "Play", "menu^" is to give the context.

24

Re: How to translate Neverball and Neverputt

I have just approved the request. I also added GunChleoc to team managers and to organization administrators. Not sure why but I never received the new translation notification via e-mail. Sorry for the late response, everyone.

(The best way to get in touch with me is via email or Twitter. Sadly I don't frequent the forum nearly as much as I used to and the forum software still doesn't send notifications for PMs.)

25

Re: How to translate Neverball and Neverputt

parasti wrote:

I have just approved the request.

Nice, thanks!

GunChleoc wrote:

Yes, this works the same as with Wesnoth. Just translate it as "Play", "menu^" is to give the context.

But why do that when gettext has support for contexts? @devs: Out of curiosity, would you mind explaining that decision?