LMMS / lmms

Cross-platform music production software
https://lmms.io
GNU General Public License v2.0
7.98k stars 995 forks source link

Consider using a localization platform? #2676

Closed liushuyu closed 8 years ago

liushuyu commented 8 years ago

AFAIK, LMMS is very difficult to translate, for it contains many technical lingos. And thus a co-operative translation team should be established to care for the translations. So I suggest you to use a sort of localization platform like Crowdin and Transifex. They are totally FREE for FOSS projects. (I personally recommend Transifex https://www.transifex.com ๐Ÿ˜ƒ)

I hope this can help you a bit. Thanks!

liushuyu commented 8 years ago

Ah, I consider this can be tagged as 'enhancement'

tresf commented 8 years ago

@liushuyu can you help us understand what's needed to integrate with a service like this? I assume you've worked with a translations service like this in the past?

liushuyu commented 8 years ago

@tresf Yes, I introduced someone to explain how this works for you. @MingcongBai

MingcongBai commented 8 years ago

@liushuyu can you help us understand what's needed to integrate with a service like this? I assume you've worked with a translations service like this in the past?

For instance, the usage of Transifex.

We have been using Transifex (yes, with @liushuyu) in our community to host some large scale translation projects (LMMS is among one of the largest that we've been putting our hands on. Services like Transifex can provide:

Just my two cents. But I do agree with @liushuyu (as you could probably tell) on using a 3rd party translation hosting service. Just imagine developing LMMS without the help of Git...

I am willing to answer further questions.

Best Regards, Mingcong (Jeff) Bai

tresf commented 8 years ago

@liushuyu @MingcongBai we may have a great candidate now with the back-and-forth with our Spanish translations, but I don't know the pain points currently.

2359

@DiegoAccorinti @IvanMaldonado @GNUMariano, since you're working on a collab translation now, do you have time to see if this could help us?

IvanMaldonado commented 8 years ago

This reminds me how Gnome manages its translations, using a system like this so the current translations could be improved and things that aren't translated are easier to find and easier to get translated since there is more than one person reviewing it.

When @DiegoAccorinti pull-requested the translation, I was half the way doing it so I just focused on what was missing or what could be improved. Then @GNUMariano appeared and made a work far better I could have ever done, so we move forward to talk about how difficult words could be translated.

Notice how 3 people were working on the exact same language at more or less the same time. It's a yes for me.

DiegoAccorinti commented 8 years ago

ok, l'm in :+1: @tresf @IvanMaldonado @GNUMariano @liushuyu @MingcongBai

MingcongBai commented 8 years ago

Awesome. One more vote to go.

eagles051387 commented 8 years ago

Good Afternoon,

I would like to propose a different platform.

http://pootle.translatehouse.org/

What I like about pootle is that most of the translations are done online, and even have the option for translations to be done offline. We would need people to take charge of the Loco teams to ensure that the translations are accurate. One massive projects that uses pootle is Libreoffice. I am willing to help and work on getting this setup and integrated into our workflow.

Jonathan Aquilina

On Tue, Mar 15, 2016 at 2:57 PM, Mingcong Bai notifications@github.com wrote:

Awesome. One more vote to go.

โ€” You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/LMMS/lmms/issues/2676#issuecomment-196832537

liushuyu commented 8 years ago

It seems that we have stuck here... But, as the LMMS will roll up to 1.2 soon, from my perspective, we can not put off the topic for another week.

MingcongBai commented 8 years ago

+1 to @liushuyu. But at the same time... I don't know, the sooner the change, the less the pain.

tresf commented 8 years ago

@liushuyu what are the next steps? I don't think anyone is intentionally holding this up. :+1:

liushuyu commented 8 years ago

@liushuyu what are the next steps? I don't think >anyone is intentionally holding this up.

Okay, next we need to decide which platform we are going to use. In fact, each platform comes with its unique advantage and disadvantage, and many of them have similar functions like translation memory, offline transition, and terminology lists.

From my perspective, if I were you, I will choose Transifex, as this one has good support for Qt translation files, and it is famous for having many talented translation volunteers online. The Poolte is also good but I am afraid this platform mainly focus on po translation files.

tresf commented 8 years ago

we need to decide which platform we are going to us [...] I will choose Transifex

This is up to the translators, so decision has been made as far as I'm concerned. :smile:

liushuyu commented 8 years ago

This is up to the translators, so decision has been made as far as I'm concerned.

Hmm, no. For you need to upload the translation files to the platform , assign language team, and keep translation files up-to-date. We will need to arrange the translations before you collect the translations and merge back to git here.

If you choose to use Poolte, you'll need a server to host it, and if you choose to use Transifex or Crowdin, I and @MingcongBai can help you with that.

tresf commented 8 years ago

For you need to upload the translation files to the platform , assign language team, and keep translation files up-to-date.

Let's not point any fingers here. If someone needs elevated access, email an admin, please. I'm not the one that proposed this technology, so respectfully, no.

liushuyu commented 8 years ago

Let's not point any fingers here. If someone needs elevated access, email an admin, please. I'm not the one that proposed this technology, so respectfully, no.

Sorry about that. But my point here is that we need a general localization manager, who has the direct write access to LMMS repo and has strong sense of responsibility. This person will take care of the things I mentioned before.... (Sorry, once I thought your were responsible for everything ๐Ÿ˜ƒ )

tresf commented 8 years ago

Sorry, once I thought your were responsible for everything

When a bruise gets poked over and over, it starts to get sore after a while.

This codebase is 500,000 lines long, and in addition to that, we maintain builds for dozens of operating systems (and many iterations of each OS) as well as release cycles, a website, an annual competition, social media, etc.

We're downloaded thousands of times per day, just for Windows and Mac alone.

So, yes, some of us are responsible for everything, but I'm not sure how that matters. This isn't a corporation, this is a free piece of software that you decided to open a bug report on.

we need a general localization manager, who has the direct write access to LMMS repo and has strong sense of responsibility

We NEED:

But somehow we're doing alright, so unless you're volunteering, I recommend you stop making claims like:

LMMS will roll up to 1.2 soon, from my perspective, we can not put off the topic for another week

as this can come off as quite insulting to the people who are already responsible for everything. :wink:

IvanMaldonado commented 8 years ago

@tresf, I think he is just talking about what it's needed to implement the idea here presented, and not what lmms needs in general.

If someone is needed to make this happen, count with me, I have seen how platforms like this work before and since we are just going to work with the translation files, those are the only things from the repo that we will need.

Everybody have access to the repo. ๐Ÿ‘

liushuyu commented 8 years ago

Okay, @tresf maybe we have some misunderstanding, I thought you'll in charge of this. Now, I have set up the project on Transifex here : https://www.transifex.com/lmms/lmms/

Thanks for your patience!

liushuyu commented 8 years ago

Just wait a few minutes while I am importing existing translations

tresf commented 8 years ago

@IvanMaldonado :+1: @liushuyu :+1:

Please speak up if access rights need to be changed.

IvanMaldonado commented 8 years ago

Maybe there could be another branch or repo exclusive for lmms translations (lmms-translations) so the changes in the translation files (done online) could be updated there to be then merged to the master branch.

tresf commented 8 years ago

Maybe there could be another branch or repo exclusive for lmms translations (lmms-translations) so the changes in the translation files (done online) could be updated there to be then merged to the master branch.

We always can, but translations aren't something that get a whole lot of scrutiny today, because the admin approving it quite often doesn't speak the language being translated, so if the service you are using has its own inherent workflow, I'm pretty sure the admins will be happy with that.

On that note, if you're uncomfortable with turning on pushes to our live repo right away, you can always point it at your own personal forks until the "kinks are worked", so to speak. :+1:

Edit: If this service does cause a lot of commit chatter to our system, we'd be happy to operate from a dedicated fork or branch, but that can get messy as we'll still need someone familiar with doing a fast-forward occasionally to fix conflicts, etc and then approve the PRs and all that. I have hopes that this service helps mitigate most of that.

liushuyu commented 8 years ago

Progress update: All existing translations have been successfully imported. Cheers! @tresf @IvanMaldonado @GNUMariano Next, we need the existing translators to register an account on Transifex: https://www.transifex.com/signup and please, post your Transifex names on this thread, or email to me, or even better, find LMMS project on Transifex and fire a request to me XD

tresf commented 8 years ago

@liushuyu thanks for setting this up. Very nice.

A good way to ping some translators is to browse through the changes made to our locale directory and check for GitHub IDs which were use for translation commits.

image

liushuyu commented 8 years ago

Further more, I have set up serveral interesting tags to attract more volunteers on Transifex to join our project. And so far, I witnessed serveral strangers have joined already! ๐Ÿ˜ƒ

liushuyu commented 8 years ago

A good way to ping some translators is to browse through the changes made to our locale directory and check for GitHub IDs which were use for translation commits.

Okay, I have invited as many people as I can, so far we've got 13 people here, more to come soon!

IvanMaldonado commented 8 years ago

@liushuyu You must be aware that LMMS use a lot of technic words and there should be just people who know about music production in general, for real, the last translation for spanish lmms had, had some bad interpretations about the controls, because we in spanish use words to define different things when english usually uses just one and you have to find the most coherent context.

I imagine that other languages have this issue too, just saying.

liushuyu commented 8 years ago

So, what do you suggest me to do about it?

IvanMaldonado commented 8 years ago

@liushuyu Do not let any person to join, they have to know what they are working with first.

liushuyu commented 8 years ago

I am aware of that, thanks! Actually, when someone want to join, they will wait until @Tresf or I to accept the request. So I will take care of that. Thank again! ๐Ÿ˜ƒ

Umcaruje commented 8 years ago

Hey, so @liushuyu is this a paid service?

Edit: I just saw its free for Open Source projects, never mind.

Also how do we update the translations with new strings? IIRC translators used to lupdate to manually update the translations with new/changed strings ( I recall @midi-pascal talking about that ). How does transifex handle this?

Also, how will you commit the new changes to the repo?

liushuyu commented 8 years ago

Well, it's free for open source projects. And I am setting up automatic updating bot for you to update translations simultaneously. And when translations reached certain progress, the bot will merge the translations back....

Umcaruje commented 8 years ago

Closed by #2706

GNUMariano commented 8 years ago

Hi @liushuyu ! I've missed this issue because of mail problems (I've received the mails from the last 20 days just today! Maybe I must change my mail account this delay causes me a lot of trouble...) I want to say it's a great idea to coordinate efforts this way. I've already joined Transifex 'bout 2 hours ago and [almost] completed the Spanish translation. I hope @IvanMaldonado can help me reviewing it! Good luck everyone :+1:

liushuyu commented 8 years ago

Well, you are also a coordinator, so you can 'review' some by yourself๐Ÿ˜ƒ. If you encounter any problem leave me an email.

GNUMariano commented 8 years ago

Thanks! I'll keep in touch :smile: