Continuous translation for MuseScore 2.0
Translating MuseScore 1.3
MuseScore 1.3 has been translated in 47 languages. It's huge! The translation has been made possible thanks to the involvement of translators using our online translation server.
The translation server was a drupal website at "translate.musescore.org" with a set of modules to enable collaborative translation. It served us well, but still we are not satisfied.
Doing better for 2.0
For MuseScore 2.0, we want to do it better. We looked around and we found Transifex, a software dedicated to online collaborative translation.
Transifex is a free and open source sofware and can be installed on your own server. It's also a commercial hosted service, free for open source project. A model we like!
So, we setup a MuseScore project on Transifex.com. Once registered with Transifex, translators will be able to translate MuseScore using one of the best interface in the industry and a lot of great features such as Translation Memory.
Continuous translation
We wanted to make it easy for translators to test their translation with minimal effort. The plan was to add a dialog in MuseScore where users can easily update their translation.
During the GSoC period, we proposed a topic about this problem. Unfortunately, we had many requests and this topic hadn't been selected. Nevertheless Manan Dang, a student from India, reached out to us on IRC (#musescore on freenode.net) and started to work on it. Manan created a script to download the translation from Transifex and upload them on a file server (Amazon S3). This script is now running every 5 minutes. Another script runs every 15 minutes and make sure that transifex gets any new strings that need to be translated.
Manan also created a new dialog in MuseScore, currently under Help → Resource Manager. This dialog displays any new translation update, and the new translation is downloadable and will be installed automatically. When MuseScore will be restarted, the new translation will be used.
The Resource Manager is available in the last nightly and Transifex is open to accept your translations. Feel free to test our new solution, start translating, play with the new toys. We applaud any feedback, so be critical and let us know how we could further improve the workflow and user interface.
Komentarai
If you are behind a proxy and try our the resource manager for updating translations, MuseScore will currently crash.
You can follow up the status of this issue via:
#22971: selecting Menu->Help->Resource Manager results in a crash, when being behind a proxy
In reply to Behind proxy issue by Thomas
If I read the latest commit (060f5ae7a7) correctly, a) the crash should be solved (by changing a call of qFatal() to qDebug()) and b) access via proxy might work, using the system's default proxy. Further testing needed...
Is it needed to restart MuseScore after having loaded an updated Translation?
In reply to Is it needed to restart by Jojo-Schmitz
Yes, you need to restart currently. Lasconic is investigating how to get around that. Tbc.
Transifex seems to have a massive problem working with IE8, the pages look entirely different and translation is not possible at all. Here at work I'm forced to use it that somewhat oudated IE8...
In reply to Transifex vs. IE8 by Jojo-Schmitz
Good catch Jojo. I'll check with Transifex which browser versions are supported.
In reply to Checking by Thomas
Apparently they changed now and don't allow for non-supoorted browsers, although without saying that IE8 is not supported...
Something different: the plugin documentation can't get translated currently, it gets generated from comments in the source and these are not part of what is available on transifex.
And I see some odd effects, some strings that I'm sure to have translated still show untranslated when viewed in a nighly build, after having updated the translation and restarted.
One example: the "Add" from the main menu.
In reply to Apparently they changed now by Jojo-Schmitz
I'll be discussing with lasconic soon how we can handle plugins. The focus for the moment remains on the MuseScore software translation flow. We want to get to the bottom of this and make it the best translation experience before we call out to everything to start translating.
In reply to Translating plugins later by Thomas
I'm not (yet) talking about plugins, but about the plugin documentation, which is embeded in the source code and available in the Plugin Creator as a manual as an integral part of MuseScore
Those translations updated via the Resource Manager get stored in the individual User's space, they don't overwrite the one that come with the package (the nighly build)
Which on is taking precedence, the personal one, the 'system wide' one, or the newer of the two?
I'd hope for the latter...
PS: the German translation is almost complete (as is the Spanish), proof readers needed...
PPS: I miss many of my new translations in the latest nighly build, even after having downloaded the latest translation and restarted MuseScore, why is that?
In reply to Those translations updated by Jojo-Schmitz
For the moment, the user space takes precedence, always.
PPS: investigation is needed...
In reply to For the moment, the user by [DELETED] 5
The last modified file is now loaded as of 2cc7b7cba5
In reply to The last modified file is now by [DELETED] 5
see my reply http://musescore.org/en/node/22982#comment-89372, accidetially attached to a different subtopic
In reply to Not quite by Jojo-Schmitz
and it does not even help to delete the user translations (on Windows 7 in %LOCALAPPDATA%\MuseScore\MuseScoreDevelopement\locale\), download afresh and restart. Don't understand why, as now these files are definitly newer.
Not even a 'dummy' update (changing a translation on transifex) seems to help!?!
In reply to The last modified file is now by [DELETED] 5
This still doesn't seem to work. Loading and running the latest nightly build, upgrading to the most recent German (or Spanish) Translation (100% complete), restarting it, and still see many untranslated strings, (most of) which are translated on Tranisefex.
Example: palatte->"Bagpipe Embellishments" and menu->Help->"Resource Manager"
Could this be because the .ts files in the git(Hub) repository are not updated with the changed strings of the past couple commits?
In reply to This still doesn't seem to by Jojo-Schmitz
It gets better, when overwriting the qm file from the nightly build with that from the translation server (rather than having both and let MuseScore decide which to use), but still not completely: some of the palette items that were recently changed from singular to plural still shod up in English and in singular?!? Example "Breath & Spacer" (vs. "Breaths & Spacers").
Works in the master palette though
In reply to It gets better, when by Jojo-Schmitz
You need to delete your preferences.
In reply to You need to delete your by [DELETED] 5
Nope, doesn't help.
Unless I missed some file/directory belonging to the settings.
I did delete my entire AppData/Roaming/MuseSore/ and AppData/Local/MuseScore/, downloaded a fresh nightly build and unpacked it into a new directory.
Work though when overwriting the qm from the nighly build wit the one from transifex (resp. AppData/Roaming/MuseSore/MuseScoreDevelompent/locale)
Edit: no, not even that: it seems to be a difference between the advanced and the default workspace ?!?
In reply to Nope, doesn't help.Unless I by Jojo-Schmitz
That's possible. The workspace are stored on github so advanced and basic have not being changed if we just changed the strings in the code.
In reply to That's possible. The by [DELETED] 5
And these are apparently compressed xml files, right?
Not easily fixed...
Some Problems:
In reply to Some Problems by Jojo-Schmitz
Thanks for this extensive feedback Jojo.
1/ Indeed. For now we do it manually. Making it automated is still on our todo list.
2/ Could be that 'Resource Manager' string is not translatable in the code. We'll check it out.
3/ Need investigation
4/ A message is needed bc lasconic hasn't found a way to make it happen without restarting MuseScore
5/ http://support.transifex.com/customer/en/portal/questions/3396608-brows…
6/ could you report this in the support forum at transifex please? Thanks a lot!
7/ A valid remark. Let's post this as well on the forum together with a screenshot and potentially some ideas on how they can improve things. Going back to the old translation server is not an option for us unfortunately.
In reply to Answers by Thomas
1/ OK, but the Picture in the 1st post gives a different impession ;-)
2/ No, it is (marked as being) translatable. As is Menu->Add, and the new metronom lead in tick.
5/ yes I saw that, but they should really tell that upfront, accessing with IE( and being told to use IE inestead without mentioning that it needs to be IE9 more higher is... suboptimal (phew, that was close). Not a MuseScore Problem though, same for 6/ and 7/
6/ see http://support.transifex.com/customer/portal/questions/3429697--remembe…
In reply to Answers by Thomas
1/ when can we expect such a manual update to take place?
It seems a "tx push -s" is missing in the picture of the initial article (to update Transifex with new/changed original strings) and it should rather be 'tx pull' (i.e. without the "-s")?
In reply to 1/ when can we expect such a by Jojo-Schmitz
We are currently traveling and getting to the translation server is easier from our home setup. So it will take at least 10 days. Thanks for your patience Jojo.
In reply to Timing by Thomas
me, patient? nah... ;-)
In reply to Answers by Thomas
/5 apparently, as I just found today, having IE10 is not sufficient, it seems that Transifex.com can't deal with me being behind a proxy, the pages looks as garbled as they did with IE8 before they changed to not allow for that anymore. Completly unusable from work here (but then again, I should better do my $dayjob in the first place ;-), also I'm more or less done with the German translation)
In reply to Some Problems by Jojo-Schmitz
Even if loading a new translation via the Resource Manager and restarting MuseScore, the new translations are not shown (mentioned above already, example: Menu->Add, not shown in German regardless being translated in transifex since quite a while).
This point should be fixed in 8a35d821fd It was a bug in the code. If you find a string that should be translatable but it's not, please file a bug report.
In reply to Even if loading a new by [DELETED] 5
Nope, it is not, unfortunatly, as new nightly builds don't pull (not yet?) the newest translations from transifex, but rather build their own qm files from older tm files. These are than newer (but still outdated) than the newest translations from transifex and hence those are not getting used used...
Unless a dummy change is done to them...
It is a good move in itself, but needs another step to be usefull, a new nighly build not only needs to push updated ts files up to transifex (if any), it also needs to pull updated qm files from there rather than building ist own afreash on every build.
In reply to Nope, it is not, by Jojo-Schmitz
What you are talking about is another problem. The problem describes in the previous post was about translation from the resource manager and this is solved.
In reply to What you are talking about is by [DELETED] 5
Oh, right, sorry. I meant to reply to http://musescore.org/en/node/22982#comment-89351, the recent update to use the newer of the 2 translations rather than always the user one
Should the UK English translation be complete or just cater for the few differences between it and US English (e.g. measure->bar, quarter note->crotchet, pickup measure->anacrusis, etc.)?
Currently it is neither ;-)
There is an English US translation in the Resource Manager, but no means of changing that on transifex. I believe that a) this was possible on the old translation server, and b) there are differences between the strings embeded in the source code (the source language) and the US English translation (mainly just for spelling fixes like upper/lower case changes).
In reply to Should the UK English by Jojo-Schmitz
I'm not convinced that a UK translation is necessary. All the UK musicians I have worked with are bilingual in terms of the US terminology, and some, indeed, use it in preference - I always used to teach American time names alongside the English because it made it easier when the student reached the explanation of time signatures.
So the only reason for including it would be for those that insist on UK terms out of sheer frowardness.
Unless, of course, you are seeking academic accuracy.
Just my 2p
In reply to I'm not convinced that a UK by ChurchOrganist
Thanks, I learned a new word today (frowardness) ;-)
I'd rather have it academically correct. I think we had enough questions in the forum which stemmed from the subtle language diffs. And because MuseScore is used for/in education!
So my question still remains whether we'd want a very brief UK translation on just those terms or a complete one.
And the question about the US 'translation'. Either we need one or we should drop the musescore_en.qm completly and just rely on the embeded ones (and get them fixed if/when/where needed, see #23219: Spelling errors in the original embeded texts)
I had though about an Austrian German and Swiss German translation, but regardless of real existing differences (e.g. Januar vs. Jänner), I haven't found any of them being used in MuseScore so far.
Not too sure about Flemish vs. Dutch? I know that my cousins in Belgium frown upon being said to speak Dutch. In these cases we'd need complete translations, even if they overlap in 99%, but for UK English is would be different.
In reply to Thanks, I learned a new word by Jojo-Schmitz
I'm not a specialist, but I played with languages all along my life, and I know languages are a touchy matters. My favorite story is in fact about the very Flemish / Dutch distinction Jojo quotes above: a few decades ago, Belgium and Netherlands discussed a unification of the orthography; the issue got delayed in endless discussions.
The funny point is that they were not disagreeing in whether to accept the Flemish or the Dutch othography for this or that detail; rather, each part was resisting any change which could bring the orthography nearer to the 'incumbent' neighbor: the Flemish objected to any change which looked (even vaguely) French and the Dutch any change which looked (also maybe vaguely) German!
I hope Asturian colleagues will not take offence (none is intended and I know that autonomic languages are a serious issue in today Spain), but I was a little surprized to see there is a (still on-going) Asturian translation of MuseScore; when translations for valencià, balear, aragonese or leonese? (and maybe andalù or other Spanish autonomic speeches I may well have forgotten?) Maybe Italian interested peoples should ask for translations in furlan, in sardo or in engiadinés? How many furlan-speaking users are there?
Generally speaking, Asturia seems to have done a very good job at promoting its language and, if a few Asturian users are willing to implement the Asturian translation, this is fine: a few more happy users and one more language for MuseScore.
If users from Friuli or Sardinia (if any) do not feel the same urge, it's also fine, as it is essentially their own business. And similarly for matters as the distinction between U.S. and UK English (which however probably have a more substantial installed base...).
Ultimately, my opinion is that these matters are better left to the interested parties themselves, particularly if they are also those who do the actual work. The only concern might be not to have too many unfinished translations hanging around...
Just my 2 cents (of $, € or £, at your choice),
M.
In reply to I'm not a specialist, but I by Miwarre
Unless we can define a language as being derived from another (so it takes any untranslated word from its 'parent'), any translation needs to be complete.
Only possible exception is UK English (even when in real life US English isn't the parent, but it is close enough)
In reply to I'm not convinced that a UK by ChurchOrganist
FWIW, should we decide to converge on a single English version, I'd say the term "bar" is probably universal enough to not raise any eyebrows in the US. I think of it as maybe a bit less formal than "measure", but it's extremely common. On the other hand, I doubt 1% of musicians here have any idea what a crotchet is.
In reply to FWIW, should we decide to by Marc Sabatella
Or something bizarre like hemidemisemiquaver :-)
In reply to Or something bizarre like hemidemisemiquaver :-) by Jojo-Schmitz
Or the quasihemidemisemiquaver :)
Even we Brits have to think about those :)
In reply to Or the by ChurchOrganist
Not that difficult, quaver is 8th note, any additional word to it (quasi, hemi, semi, demi) cuts it into half the value, so we have a 128th note here.
Although I must say that calling it 128th directly is far simpler ;-)
Some more remarks
Also there is no mscore_en.ts or .qm in MuseScore locale Directory, just mscore_en_US (and mscore_en_GB). Why offering it, if the source language is US English already and no translation files are required at all? Just to be able to fix typos in the source more easily and from the outside? If so, we need to be able to "translate" it, if not it should not be offered in the first place, as it just overwrites what's already there, build into the program, instead it might be taken as request to fix the builtin strings?
In short: there is an mscore_en.qm in the Resource Manager, but it should not and there is no mscore_en_US.qm, but maybe it should.
BTW: (see above) there is no qt_en*.{ts,qm} at all.
In reply to Some more remarks by Jojo-Schmitz
1. In public, we rather use the full musescore naming instead of the short one. It has no technical consequence.
2. qt_.ts comes from upstream Qt project. We rely on them for the translations.
3. We shall remove mscore_en_US from the locale directory as the English source language is the en_US.
4. We don't think about preventing vandalism unless vandalism happens.
5. Yes, we will grant the reviewer role to translators on Transifex to guarantee the quality of the translations. There will be an update about this after we have implemented all the remaining technical todos.
In reply to Answers by Thomas
4. You should probably also remove the mscore_en.qm from the Resource Manager (and reject me request on Transifex for an en_US one)
In reply to 4. You should probably also by Jojo-Schmitz
Ok, just talked it through with lasconic and we are not going to remove the en_US one. Actually, we are going to add the en_US one on Transifex. This gives us the opportunity to override strings in the code in case there were typos in the original code. If this is not clear, no worries, we got it sorted out. Thanks for bringing this to our attention.
Btw still traveling so we'll get this done next week.
In reply to Not going to remove it by Thomas
Good, thanks
Still needs to remove the plain "en" one from the Resource Manager I guess, this one really doesn#t make any sense, as it is not changable on Transifex
In reply to Good, thanks by Jojo-Schmitz
mscore_en should be removed from the locale manager now.
In reply to mscore_en should be removed by [DELETED] 5
And indeed it is, thanks!
Those who ever loaded the mscore_en.qm would have to delete that manually, I believe?
In reply to And indeed it is, thanks! by Jojo-Schmitz
Yes of course.
In reply to Yes of course. by [DELETED] 5
Would an automatik method to revoke a translation be needed or feasible?
In reply to Answers by Thomas
2. Looks like we'd need to worry about the qt_* files, see #23260: The hyperlinks in the "About Qt" dialog don't work
In reply to 2. Looks like we'd need to by Jojo-Schmitz
I'm fine with the "About Qt" not being translated.
In reply to I'm fine with the "About Qt" by [DELETED] 5
Maybe. It is not translated in 1.3 either. But the hyperlinks should work...
another file that needs translation is instruments.xml
In reply to another file that needs by Jojo-Schmitz
That's a next step. Let's make the UI first and make sure it's working smoothly. More to come next week.
In reply to That's a next step. Let's by [DELETED] 5
How about going forward with translating the rest, like intruments.xml, plugins, etc.
See the topic I started in the translation forum
Other lose end: in http://musescore.org/en/node/22982#comment-88909 I've asked about reviewers on transifex, in http://musescore.org/en/node/22982#comment-88909 the reply was:
Yes, we will grant the reviewer role to translators on Transifex to guarantee the quality of the translations. There will be an update about this after we have implemented all the remaining technical todos.
That too was back in October 2013 ;-)
With the addition of Uzbek I noticed that for that language there is a reviewer, Dutch and French seem to have reviewers too?
FYI, I just started a discussion in the German forum, about the Translation into German:
Übersetzung der zukünftigen Version 2.0
I can't find resource manager ... where is it ? I looked in the help menu and it wasn't there !!!
In reply to I can't find resource manager by MasoudYazdi
You looked in a nighly build? You won't find that dialog in 1.3 or earlier.
To further clarify: there is no longer any (supported) way of making translations for 1.x., only for the upcoming 2.0, of which you can get yourself a preview from http://musescore.org/en/download#Nightly-versions.
YOU DONT NEED TO BE A WELSH SPEAKER TO HELP
Has there been a translation from English to Welsh in previous versions of MuseScore if so can I get to consult them them strings. I have so far translated over three thousand strings there must be some parts in earlier translations that would be helppful to me for finishing my on going work. Hope to finish the whole work this week.
I am stuck on several word.
It would be good to have some one give me some information on some words so that I can finish the work.
For example, the word "Dip", "Closest", "Parc", "sori", "Glissaqndo", I am not looking for a translation but a disruption, If it tells the person playng the piano to do so lively, then I can find a Welsh word. An other way would be to get onto the Transfix and look at the strings that i HAVE NOT WORKED ON SO FAR a send me a description of that word or string.
Looking forward
Wena Parry
In reply to YOU DONT NEED TO BE A WELSH by Wena Parry
Buonasera Wena. I do not think I can help you, but you can try a few things:
Use the button "Settings" to have (in the left column) the term in another language;
Use Wikipedia to get a a reasonable description of the meaning looked for, eg "Glissando" https://en.wikipedia.org/wiki/Glissando
Anyway congratulations and Buon lavoro, Franz
In reply to Buonasera Wena. I do not by Shoichi
Thank you Shoichi, but i didn't understand your instructions how to get that terms in other languages sorry. I am down to just over 800 strings.
Some one has been and added sum suggestions for me.
There is 3 a massive strings at the start with a lot of complected HTML code. they are impossible. If only I could turn the code off so I could see the text.
Wena
In reply to Thank you Shoichi, but i by Wena Parry
Hi Wena,
I added a definition for Sori, Koron, Dip. Let me know if you need more definition
I also added the full text of the HTML but when you translate it, you will need to keep the HTML in place.
Thank you for your help I had hoped to avoid the very large string!! But that will help I am sure I have found that a highlighting copy and passed is useful. I have done that in the strings. I don't understand HTML .
I hope to get back to work this afternoon.
I have sent the strings that are related to Bagpipes to the Welsh University that have a music department in the hope that some who also speak Welsh will translate the parts for me.
Thanks very much
Wena Parry
I managed them two very big strings, down to 440 now. I feel as if some one is adding strings to it. At leases I found some strings that I have done but don't show that their translated.
Hi I am looking forward to do some more music.
Wena
MuseScore's translation system is very impressive. I'm considering setting up something similar for AppImageKit to ensure that messages are displayed in the local language when installing an AppImage.
I just have a couple of questions...
1) Are there separate translations maintained for each branch/release of MuseScore?
In other words, if I open the Resource Manager in a stable MuseScore release (e.g. 2.0.3) and update a translation, does the update contain translations for strings in:
2) If the answer to (1) was B and a particular string from 2.0.3 has been deleted in Master, what gets used as a fallback translation?
In reply to MuseScore's translation by shoogle
1 a
In reply to 1 a by Jojo-Schmitz
Cool, thanks. For anyone else who is interested, I spoke with @lasconic earlier and he explained that the Transifex repository always points to the current release version until shortly before the next version is released. Currently the translations are all for 2.0.3 and the translation effort for 3.0 won't begin until just before its release, at which point the translations for 2.0.3 will be frozen.
So I will have to translate into Welsh ones again. Wow it is a big job, or are we able to just update the translation that is alrady done.
Wena
In reply to So I will have to translate by Wena Parry
Unchanged strings will be kept, only changed and new strings need translation.