Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Determine means to produce plural-only "mudlet_en_US.ts" English (American) translation #1963

Closed
SlySven opened this issue Sep 9, 2018 · 7 comments
Labels
enhancement i18n & l10n internationalization and localization medium need more info

Comments

@SlySven
Copy link
Member

SlySven commented Sep 9, 2018

Brief summary of issue / Description of requested feature:

I would like to determine whether CrowdIn can be requested to produce a plurals-only Qt translation {.ts} file for the en_US {English (American)} locale - this requires only copying those <message ...> tags from the source mudlet.ts file with the attribute numerus set to "yes" into the mudlet_en_US.ts translation source file.

This will be needed because we will need the resulting runt translation just to handle the few (five at present) cases but that is likely to increase when we get a handle them, which use the:

QObject::tr("There are %n message(s) to be translated", "This translation is for a plurals case with a replaceable integer third argument that gives the count!", 5)

form of the tr method, so that the resulting translated text has a form consistent with the quantity given.

For those not up to speed on this, there are up to three cases for a particular language see: https://doc.qt.io/qt-5/i18n-plural-rules.html for the details. For English cases this is merely the inclusion of the s when %n is not 1 (and, depending on the situation the replacement of an a with an an), for other languages the cases are different, e.g. France treats 0 the same as 1 whereas English treats 0 the same as the more than 1; Japanese only has one case for all quantities and Russian has a full set of three - and explaining that looks too complex to say in a word form...! 😮

Steps to reproduce the issue / Reasons for adding feature:

To render messages in American English without using texts with bracketed (s)s.

So @crowdin - is there any information you can give us?

@SlySven SlySven added enhancement medium need more info i18n & l10n internationalization and localization labels Sep 9, 2018
@crowdin
Copy link

crowdin commented Sep 9, 2018 via email

@Kebap
Copy link
Contributor

Kebap commented Sep 20, 2018

@crowdin Any updates for this issue? :)

@v3ctorman
Copy link

Hi @Kebap!
We're still discussing the possible solutions for your case. However, it's more likely that our devs wouldn't be able to change the export behavior for .ts files as it requires a lot of time-consuming changes and they will also affect all our customers who got used to current export behavior. I hope for your understanding!

@SlySven
Copy link
Member Author

SlySven commented Sep 23, 2018

The troubles we are having with this and #1961 is that using CrowdIn we are splitting the functionality that Qt provides in it's lupdate utility into two separate parts: 1) the extraction of all the texts for translation from our many source files for the application itself (which is still done by us) but 2) the conversion of the one resulting .ts file into the separate version for each language is done by CrowdIn and the result of doing it like that means that we have lost the ability for lupdate to retain existing translations which have not been finalised/approved or whose source has been changed (maybe the latter do not get lost but they are not quite so easy to find) - or to prepare a much reduced translation for the language/locale in which the source material was supposedly written.

It looks horribly like the only way around both of these at present is for us to not supply a single once source .ts for all language/locales but to generate all of them ourselves and then upload the one for each language and then get into a workflow where the translation teams only work on/see the .ts file for their language/locale which gets imported/exported to the Mudlet project (i.e. it's GitHub repository) each time we release a new major/minor/patch version. Importantly, after the first iteration where all the .ts files are at 0% done and they all started with the same content (apart from their individual language/locale designations) it would be those files that get updated directly from the source code in the repository (with lupdate) and then reimported into Crowdin rather than a single .ts file with NO previous translation work in.

It seems however that CrowdIn cannot/does not work like that - we cannot supply a separate .ts file for each language/locale, it has to be a common file for all of them - is that really the case though?

@Yuliya-Crowdinteam
Copy link

Yuliya-Crowdinteam commented Sep 23, 2018

Hello @SlySven,

I'm really sorry for this issue you are facing with! And sorry for the delay with the answer - we are searching the best solutions for your case!

Yes, you are right about one source file for all languages - each source file has automatically created file with translation for each language. In case, there will be a separate source file for each language, there could be some mess in the project.

I have already passed the additional information to developers, and we will update you as soon as we get any news on the matter.

@vadi2
Copy link
Member

vadi2 commented Oct 3, 2018

Given the research outcome, I think it's better for us to at the moment to produce the .ts file ourselves. It's not much work and we only have 5 strings at the moment. Thanks everyone.

@vadi2 vadi2 closed this as completed Oct 3, 2018
@RuslanCrowdin
Copy link

Hello @vadi2,

Thanks for letting us know, happy that you can manage this issue.

Our devs still will work on this issue to the future.

Should any other questions arise, you know that you're welcome to contact us!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement i18n & l10n internationalization and localization medium need more info
Projects
None yet
Development

No branches or pull requests

6 participants