mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.4k stars 1.26k forks source link

multiple translation files in /res/translations for same language #10060

Open mixxxbot opened 2 years ago

mixxxbot commented 2 years ago

Reported by: lxndr71 Date: 2020-07-22T10:06:23Z Status: New Importance: Undecided Launchpad Issue: lp1888486 Tags: skin Attachments: [Screenshot of Translations](https://bugs.launchpad.net/bugs/1888486/+attachment/5394857/+files/Screenshot of Translations)


https://github.com/mixxxdj/mixxx/tree/2.3/res/translations

the folder contains multiple translation files for the same language. It would be easier to clean this folder.

f.e. "English (United States)" exists twice, plus a file "English (United Kingdom)" although the content should be pretty identical. (Exept some italian words that where still in the UK file that I just corrected)

Same for Dutch => Same file twice and also a file "Dutch (Belgium)" same identical content.

mixxxbot commented 2 years ago

Commented by: lxndr71 Date: 2020-07-22T10:06:23Z Attachments: [Screenshot of Translations](https://bugs.launchpad.net/mixxx/+bug/1888486/+attachment/5394857/+files/Screenshot of Translations)

m0dB commented 8 months ago

I just had a look at the Dutch translations, for which there are three (!) versions: mixxx_nl_BE.ts mixxx_nl_NL.ts and mixxx_nl.ts , all three different. The differences are pretty consistent and boil down to things like using imperative or infinitive and whether are not to translate domain-specific words (like "track", "pitch").

I would be happy to merge these three documents into one, but that would imply imposing my personal criterium (which from a quick look lies somewhere in the middle), so I am not sure how to proceed.

m0dB commented 8 months ago

FYI, a matrix with differences:

% for base in en es fr nl pt zh; do perl ../../tools/tsdiffmatrix.pl mixxx_$base*.ts; done          
     CA   GB   
CA        4    
GB   4         
--------------------------------------------------------------------
     es   419  AR   CO   CR   EC   ES   MX   PA   UY   
es        185  186  185  186  186  106  366  186  185  
419  185       2    1    2    2    211  189  2    1    
AR   186  2         2    1    1    212  188  1    2    
CO   185  1    2         2    2    211  189  2    1    
CR   186  2    1    2         1    212  188  1    2    
EC   186  2    1    2    1         212  188  1    2    
ES   106  211  212  211  212  212       390  212  211  
MX   366  189  188  189  188  188  390       188  189  
PA   186  2    1    2    1    1    212  188       2    
UY   185  1    2    1    2    2    211  189  2         
--------------------------------------------------------------------
     fr   BE   CA   CI   FR   
fr        2224 2224 2223 2308 
BE   2224      1    2    87   
CA   2224 1         2    87   
CI   2223 2    2         88   
FR   2308 87   87   88        
--------------------------------------------------------------------
     nl   BE   NL   
nl        50   365  
BE   50        392  
NL   365  392       
--------------------------------------------------------------------
     pt   BR   PT   
pt        1538 1754 
BR   1538      1618 
PT   1754 1618      
--------------------------------------------------------------------
     zh   CN   HK   TW   
zh        882  36   845  
CN   882       895  1628 
HK   36   895       848  
TW   845  1628 848       
--------------------------------------------------------------------
daschuer commented 8 months ago

Great, thank you for your help. So let's merge it all to a general NL file and delete the rest. I am always struggling when a localized translation is requested to decide if it is rectified for a language or not in the domain of DJing.

NL_NL is obviously redundant. We need a Belgium contributor to decide if a BE translation is rectified for any word in future.

How did you do the nice overview? Is that something you can contribute to the tools folder?

m0dB commented 8 months ago

I would feel uncomfortable doing so without first discussing this with the contributors. Where can I find their contact info?

The overview was done with a small perl script. I'll add it to the tools folder.

m0dB commented 8 months ago

Script added: https://github.com/mixxxdj/mixxx/pull/12508

daschuer commented 8 months ago

The contact to the contributors is a pending issue. With the open source plan of Transifex there is unfortunately no easy way to find out who is the top contributor. Some years ago I was in contact with them to enable this feature for us. Than it was enabled for a few month and has vanished again. Do you have a Transifex a account? Can you see the list of Belgium contributors? https://app.transifex.com/mixxx-dj-software/teams/7715/nl_BE/

m0dB commented 8 months ago

Yes, I can see the names and usernames of the contributors for nl_NL and nl_BE, but not beyond that.

daschuer commented 8 months ago

I can click on them and post a message. What is you user name? I can make you admin.

m0dB commented 8 months ago

m0dB :-)

RafaelFrance commented 8 months ago

I am doing the French translation of 2.4 I only work in the French (fr) language.

daschuer commented 8 months ago

Great. It would be nice if we can delete fr-FR. Can you review that and probably pick the best of both? Than we can finally delete it.

RafaelFrance commented 7 months ago

I can do the review, but I do not understand who to have the different fr versions on files in order to compare them. Sorry but I am not familiar about implementation and I do not when to learn how to do that.

If somebody can extract the different versions of French translations, I can make the review. In Transifex, there I can see: French (fr) French (Belgium) (fr_BE) French (Canada) (fr-CA) French (Cote d'Ivoire) (fr-CI) French (France) (fr_FR)

I can deliver an updated file of the French (fr) translation. Somebody else download that in Mixxx and delete the others fr.

daschuer commented 7 months ago

I can take care to upload your changes to Transifex.

The best is to do it via a GitHub pull request.

On which OS are you? Are you familiar with git? Alternative you can use the GitHub web interface.

You can use meld or notepad++ to compare the files in the translation folder https://github.com/mixxxdj/mixxx/blob/2.4/res/translations/mixxx_fr.ts And then copy over the best translation. And upload or push to GiHub.

If you struggle at any point please ask.

RafaelFrance commented 7 months ago

I downloaded the .ts from the github translation folder and stated to put best of translations on one file. I am on Ubuntu 22.04. I am using Meld. I will need some days to do that.

daschuer commented 7 months ago

Sounds good, take your time. Once ready you may try to use the GitHub edit feature to upload your changes, or just email it to me.

RafaelFrance commented 7 months ago

Done. I was fast because country specific translation were not really translated. It was mainly English language. Very few was french. And doing that I could improve some translations in the french file.

I do not know how to use GitHub edit feature to upload. On witch email can I send it to you ?

I suppose next steps will be:

I suggest for the future to avoid to create Country specific translation, at least for French.

daschuer commented 7 months ago

We have a lot of "translated" strings where the English version has just been copied. This is a bad situation, because Transifex is not able to show them at untranslated and the will be probably slip though if translators aims to translate all missing strings.

Please replace them with <translation type="unfinished"/> when you stumble over them.

My e-mail is my GitHub user name @ mixxx.org.

RafaelFrance commented 7 months ago

Yes, even in the mixxx_fr there was a lot of "translated" strings in English.

So, I review again the file (mixxx_fr) and replace them by <translation type="unfinished"/>.

Note. I found the origin of something new in Transifex. Some strings in Transifex request to make multiple translation because plural. There is about 21 strings like that in 2.4. I thing this doesn't make sens, so I have corrected the mixxx_fr file, by

I am going to send you the mixxx_fr file by email.

Please tell me when I can work on Transifex with this new file. I will wait.

ronso0 commented 7 months ago

@RafaelFrance That sounds like tedious work, thanks for doing this cleanup!

daschuer commented 7 months ago

Here is "your" PR https://github.com/mixxxdj/mixxx/pull/12699

daschuer commented 7 months ago

Transifex is also up to date. I have removed all localized fr languages. There is only an issue with the bogus English translations. They have been restored from translation memory. I have not found yet a method to bulk remove them from translation memory.

This is a big problem to all languages, any idea how to solve that?

ronso0 commented 7 months ago

Removing TM entrys should be possible as explained here https://help.transifex.com/en/articles/6225631-managing-translation-memory#h_5a84e35814

I'd like to help with this, though I'm not admin it seems. Would be great if you could grant me the required privileges. Account is ronso0, with my mixxx.org email.

daschuer commented 7 months ago

Thank you. I will take a look.

RafaelFrance commented 7 months ago

Good news, Transifex shows now 151 French strings to be translated in 2.4. It was 21 before our work. Seems good. I am going to complete translation.

I confirm also that mixxx_fr_FR, mixxx_fr_BE, mixxx_fr_CA and mixxx_fr_CI are not visible anymore.

daschuer commented 7 months ago

I hade a close look to english. We have here the problem that country's like New Zeeland use the British spelling. But the default is US, so we need a translation file for all those British spelling countries for "Equalizer" and "Analyze' and friend.

We can "fix" other languages at any time. For now I remove the milestone.