@relaxpor:
It's very simple actually. If you've never done this before, I suggest to use the Web interface. You can start with the "smallest" project, i.e. the gettext resources.
- Go here (for example).
- Click on any of the resources, then click "Translate now".
- On the left side, you see the english text, on the right side is where you enter your translation.
Note that you will sometimes find special characters (like "choose %s as device language", or
MessageFormat strings). Translate them to your language, while keeping the special characters etc.
Also note that not everything is actually meant to be translated. If you are unsure, it is best to either leave strings untranslated and come back later, or to simply copy the original text. See also
this post.
As for trying out the translations, we are developing some tools, but they are not ready for "public use". If you're adventurous, you can keep track of the
repository. Otherwise, you'd need to deploy things manually. Both of these are not suggested currently, unless you know what you are doing. It's still fairly simple to brick your device.
@eureka: I had been thinking about a less "brutal" way for semi-translated resources. Forcing 100% completion is technically ok, but it's not ideal, because people will probably tend to copy over the english strings, instead of leaving them untranslated. This makes it harder to find strings which actually are, in fact, still untranslated inside a "100% translated" resource.
For gettext, this is not a big issue, as there are only few strings. For Java, the problem is that untranslated keys get assigned an empty string as the value. However, since I'm parsing the resources anyway, I could simply throw away such key/value pairs. This would have the advantage that one can also test-drive semi-translated languages. Should I implement this?