Use Launchpad Rosseta to centralize the translations

• Sep 27, 2009 - 13:31

Hi guys,

the translation of this program is quite messy, people posting in forum posts to not duplicate translation works, etc.

Let's do it using the launchpad tool named rosetta, so simple.

For example, my project babiloo is being translated into many languages without having to care about the organization at all,

https://translations.launchpad.net/babiloo/trunk/+pots/babiloo

Please admins of this site and I can help you to do it.


Comments

In reply to by Thomas

Not yet, in fact it's a very good question, that's why i'm subscribed to that feature bug to see when it will be integrated.

https://bugs.edge.launchpad.net/rosetta/+bug/68959

New Qt 4.5 comes with lconvert, which can convert translation files from ts to po and vice versa (also handles xlf). This enable to convert Qt translations and upload them to Launchpad. Still, that's nothing but a workaround, but it can really work in your case. In the future, when launchpad will give you directly .ts translated files, u just remove the work around.

I can help you to have this automatized if you want.

In reply to by capiscuas

So what are the options once this lconvert solution has been integrated. When we wish to make use of Rosseta, does this mean the code repository has to move from Sourceforge to Launchpad? Or could we checkout the ts files from SF SVN into the LP CVS, in an automated manner?

Hi, yeah sure, automatization is the goal here, I won't propose you another system where is more difficult to gather translations.

Launchpad supports daily exportation of the translated .po into a bazaar repository
http://blog.launchpad.net/general/exporting-translations-to-a-bazaar-br…

so I suggest that you or the admin for packaging can automatize the importation of that bazar, reconversion into .ts files and, compilation of these, and packaging of the .deb , .tar.gz , etc

That way, user won't have to care about these .ts things and they won't overwrite the work of other users, they will profit of launchpad translation suggestions(from other LP projects) and everybody will be happy.

Again, I can help u out to set up all that.
Ivan.

In reply to by capiscuas

Hi Ivan,

Do you see a solution to integrate the translation workflow with Rosseta while leaving the MuseScore code repository on SourceForge? So an automated or manual triggered checkout from the SVN repository to Rosseta and a manual commit back to the SVN.

In reply to by Thomas

yeah, you can still leave your code in the sourceforge SVN + the translation files.

The import/export method we can do is the following:

You register a new LP project for Musescore, you activate the translation part and also the bugs(bugs in LP are really good and they don't affect ur code). The easier way (what I do with FLOSS projects) is to do a manual importation of the translations (they send a .zip with the .po to my mail) so I download it to /tmp and I run a .sh in my project locale to reconvert all those .po into the necessary format that the application needs, and then, I can do a commit.

Once you have ur Rossetta translations activated, I'll help u to upload the current .ts u have.

Best Regards

In reply to by capiscuas

Hi Ivan,

Thanks for your extensive answers. I'm quite interested in the solution you proposed, since anything that should be possible with Rosetta should be possible with Drupal as well. Drupal is the content management system which we use for running musescore.org as well. And since Drupal has a localization server similar to Rosetta (http://drupal.org/project/l10n_server), it might be interesting to integrate it on translate.musescore.org in such a way that all musescore.org users can help the translation work. Would you be interested to help testing this Drupal localization module and see whether it fits our needs? And if not, potentially adapt it?

In reply to by Thomas

Hi,
it seems quite interesting the drupal port of the rosetta, I see here some pros/cons:

Cons:
- Need to install the drupal module instead of using the service directly from launchpad.
- Due that is not centralized, it cannot profit the translations of other projects in launchpad for other services.

Pros:
-Not centralized gives u more freedom and independency and people remain in your domain.
-It's drupal module so it can profit the drupal users you have already and keep the drupal style of ur site.

I can help in both ways, I just want the best for the opensource movement and I think that optimizing the translations is a good way to go.

In reply to by capiscuas

I'll start the investigation for setting up a translation server on translate.musescore.org after musescore.org is moved to a new hosting facility. In the meantime, there is much work being done on the Drupal based translation server. See this video http://vimeo.com/6944071 for the latest changes.

Thanks again for noting the cons & pros. The biggest pro for me is that all users registered at musescore.org can all help with the translations since they have already a musescore.org login. Needing to create a new login on Launchpad is perhaps the major drawback I see.

I understand your worry about having to create a new username for launchpad rosetta,

in the other hand, I see it that with Rosetta and my help you can have that done in a day or 2 maximum, I just helped another project based on java .properties translations to move to launchapd and it was a matter of 1 day.

Here is the proof: https://translations.edge.launchpad.net/sheltermanager

Also launchpad users can later help in other projects ,and translating will be easier with launchpad suggestions.

Maybe setting up in your own server can be more difficult , up to you.

Bye.
Ivan,.

In reply to by Thomas

The translation server now export the ts files. The connection with the SVN is another issue since it will require dedicated hosting to run the appropriate software on. For now, we'll handle it manually. Next step, setup the translate.musescore.org domain and run some tests.

Do you still have an unanswered question? Please log in first to post your question.