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.
评论
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
回复Thomas的Behind proxy issue
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?
回复Jojo-Schmitz的Is it needed to restart
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...
回复Jojo-Schmitz的Transifex vs. IE8
Good catch Jojo. I'll check with Transifex which browser versions are supported.
回复Thomas的Checking
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.
回复Jojo-Schmitz的Apparently they changed now
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.
回复Thomas的Translating plugins later
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?
回复Jojo-Schmitz的Those translations updated
For the moment, the user space takes precedence, always.
PPS: investigation is needed...
回复[DELETED] 5的For the moment, the user
The last modified file is now loaded as of 2cc7b7cba5
回复[DELETED] 5的The last modified file is now
see my reply http://musescore.org/en/node/22982#comment-89372, accidetially attached to a different subtopic
回复Jojo-Schmitz的Not quite
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!?!
回复[DELETED] 5的The last modified file is now
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?
回复Jojo-Schmitz的This still doesn't seem to
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
回复Jojo-Schmitz的It gets better, when
You need to delete your preferences.
回复[DELETED] 5的You need to delete your
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 ?!?
回复Jojo-Schmitz的Nope, doesn't help.Unless I
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.
回复[DELETED] 5的That's possible. The
And these are apparently compressed xml files, right?
Not easily fixed...
Some Problems:
回复Jojo-Schmitz的Some Problems
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.
回复Thomas的Answers
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…
回复Thomas的Answers
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")?
回复Jojo-Schmitz的1/ when can we expect such a
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.
回复Thomas的Timing
me, patient? nah... ;-)
回复Thomas的Answers
/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)
回复Jojo-Schmitz的Some Problems
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.
回复[DELETED] 5的Even if loading a new
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.
回复Jojo-Schmitz的Nope, it is not,
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.
回复[DELETED] 5的What you are talking about is
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).
回复Jojo-Schmitz的Should the UK English
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
回复ChurchOrganist的I'm not convinced that a UK
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.
回复Jojo-Schmitz的Thanks, I learned a new word
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.
回复Miwarre的I'm not a specialist, but I
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)
回复ChurchOrganist的I'm not convinced that a UK
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.
回复Marc Sabatella的FWIW, should we decide to
Or something bizarre like hemidemisemiquaver :-)
回复Jojo-Schmitz的Or something bizarre like hemidemisemiquaver :-)
Or the quasihemidemisemiquaver :)
Even we Brits have to think about those :)
回复ChurchOrganist的Or the
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.
回复Jojo-Schmitz的Some more remarks
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.
回复Thomas的Answers
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)
回复Jojo-Schmitz的4. You should probably also
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.
回复Thomas的Not going to remove it
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
回复Jojo-Schmitz的Good, thanks
mscore_en should be removed from the locale manager now.
回复[DELETED] 5的mscore_en should be removed
And indeed it is, thanks!
Those who ever loaded the mscore_en.qm would have to delete that manually, I believe?
回复Jojo-Schmitz的And indeed it is, thanks!
Yes of course.
回复[DELETED] 5的Yes of course.
Would an automatik method to revoke a translation be needed or feasible?
回复Thomas的Answers
2. Looks like we'd need to worry about the qt_* files, see #23260: The hyperlinks in the "About Qt" dialog don't work
回复Jojo-Schmitz的2. Looks like we'd need to
I'm fine with the "About Qt" not being translated.
回复[DELETED] 5的I'm fine with the "About Qt"
Maybe. It is not translated in 1.3 either. But the hyperlinks should work...
another file that needs translation is instruments.xml
回复Jojo-Schmitz的another file that needs
That's a next step. Let's make the UI first and make sure it's working smoothly. More to come next week.
回复[DELETED] 5的That's a next step. Let's
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 !!!
回复MasoudYazdi的I can't find resource manager
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
回复Wena Parry的YOU DONT NEED TO BE A WELSH
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
回复Shoichi的Buonasera Wena. I do not
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
回复Wena Parry的Thank you Shoichi, but i
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?
回复shoogle的MuseScore's translation
1 a
回复Jojo-Schmitz的1 a
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
回复Wena Parry的So I will have to translate
Unchanged strings will be kept, only changed and new strings need translation.