Re: [Openstack-i18n] Would like Zanata branch to correct 1494819
From: Douglas Fish/Rochester/IBM@IBMUS To: ilyaalekseyev@acm.org Cc: guoyingc@cn.ibm.com, openstack-i18n@lists.openstack.org Date: 09/23/2015 04:38 AM Subject: Re: [Openstack-i18n] Would like Zanata branch to correct 1494819
Hi Ilya,
Thanks for looking at this! Unfortunately having 4 pluralities confuses Horizon. I've tested out stripping one of the pluralities and restoring the expected Plural-forms definition (just like the one you linked) and it works great.
I had hoped to just repair the PO files in this way and upload the corrected translations to Zanata.
Unfortunately, I understand from Daisy's research that once a language/project has been created in Zanata in this way we cannot just upload a PO file with corrected pluralities . More investigation will be needed to understand the process to fix this.
Doug
----- Original message ----- From: Ilya Alekseyev <ilyaalekseyev@acm.org> Sent by: ilya@phpcoder.ru To: Douglas Fish/Rochester/IBM@IBMUS Cc: Ying Chun Guo <guoyingc@cn.ibm.com>, "openstack- i18n@lists.openstack.org" <openstack-i18n@lists.openstack.org> Subject: Re: [Openstack-i18n] Would like Zanata branch to correct 1494819 Date: Tue, Sep 22, 2015 2:39 PM
Hi Doug and Daisy!
Looks like we have wrong pluralities in current release: in https://github.com/openstack/horizon/blob/master/ openstack_dashboard/locale/ru/LC_MESSAGES/django.po
we have: "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" "%100>=11 && n%100<=14)? 2 : 3);\n"
but in previuos releses we have: "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n% 10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
Last one is right for Russian.
We can make translation in Zanata for 4 pluralities, but it can give in some cases bugs with wrong plural forms.
Kind regards, Ilya Alekseyev.
2015-09-22 14:22 GMT+03:00 Douglas Fish <drfish@us.ibm.com>: Hi Daisy,
I am certain this issue is caused by plural forms. The issue with missing menus is seen with the current 4 plural form translations; when I correct the PO file to have 3 forms Horizon properly displaysthe
Thank you for looking into it, Illya. I think we need to fix it, although the manually process might be a little complex. I'm going to: 1. Create a new version in Zanata 2. Mark master as read only 2. Pull the source files and the translation files. 3. Change the pluralities settings in Russian translation files. 4. Upload the source files and translation files to the new version. 5. Check if the all things are right, change master version name to "master-old", and then change the new version name to "master" How do you want to update these pluralities then? By program ? Or manually ? Is it possible to make the changes through Zanata UI, other than uploading po files ? Best regards Ying Chun Guo (Daisy) Douglas Fish/Rochester/IBM wrote on 09/23/2015 04:38:19 AM: menus.
Doug
----- Original message ----- From: Ying Chun Guo/China/IBM To: Douglas Fish/Rochester/IBM@IBMUS@IBMAU Cc: openstack-i18n@lists.openstack.org Subject: Re: [Openstack-i18n] Would like Zanata branch to correct
1494819
Date: Tue, Sep 22, 2015 12:49 AM
Hi, Doug
We need to consider it carefully.
After working with Zanata dev team, I got to understand:
1. Zanata has its own plural forms. If po file has its own plural form, Zanata will use that. Otherwise, Zanata will use its own plural form. Pluralforms in Zanata: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2). So it looks like that OpenStack po files overrode the pluralforms in Zanata.
2. Zanata currently don't allow update of plural forms once the document has been uploaded to Zanata. Even with deletion of that source document and re-upload (in the same project-version, same doc name and same path), Zanata will still reuse the old pluralform.
3. If we want to update the pluralforms, we will need to do it in new project-version (don't use copy-from previous version function).
I think we need to carefully design the steps to change pluralforms of Russian. At first, I want to confirm with you, are you sure this issue is caused by plural forms?
Best regards Ying Chun Guo (Daisy)
Douglas Fish/Rochester/IBM wrote on 2015/09/18 23:38:22:
From: Douglas Fish/Rochester/IBM@IBMUS To: guoyingc@cn.ibm.com Cc: openstack-i18n@lists.openstack.org Date: 2015/09/18 23:38 Subject: Re: [Openstack-i18n] Would like Zanata branch to correct 1494819
Hi Daisy,
Yes, I understand - I don't think I can even propose my branch unless I am added as a translator by the Russian team.
My proposal would include removing one plural form for 4 messages in horizon django.po 1 message in horizon djangojs.po 144 messages in openstack_dashboard django.po 0 messages in openstack_dashboard djangojs.po plus the pluralization specification would be updated in all 4 files.
Doug
----- Original message ----- From: Ying Chun Guo <guoyingc@cn.ibm.com> To: Douglas Fish/Rochester/IBM@IBMUS Cc: openstack-i18n@lists.openstack.org Subject: Re: [Openstack-i18n] Would like Zanata branch to correct 1494819 Date: Fri, Sep 18, 2015 3:25 AM
Are there a lot of changes in your proposed po files ? I'm still waiting for Russian team's response.
Best regards Ying Chun Guo (Daisy)
"Douglas Fish" <drfish@us.ibm.com> wrote on 09/18/2015 05:37:07 AM:
From: "Douglas Fish" <drfish@us.ibm.com> To: openstack-i18n@lists.openstack.org Date: 09/18/2015 05:38 AM Subject: [Openstack-i18n] Would like Zanata branch to correct 1494819
Hi translation friends,
I'd like to contribute 4 PO files for the Horizon Russian translation to correct the issue https://bugs.launchpad.net/openstack-i18n/+bug/1494819
These uploads won't contain any new translations, but instead will be an adjustment to the PO files so they have 3 pluralities, which is standard
http://localization-guide.readthedocs.org/en/latest/l10n/pluralforms.html
Specifically, I plan to remove the msgstr[2] translation from the files (because msgstr[2] is blank for many cases), rename the msgstr [3] translation to msgstr[2] and adjust the plurality specification
to
nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);
As discussed in the team meeting http://eavesdrop.openstack.org/ meetings/openstack_i18n_meeting/2015/openstack_i18n_meeting. 2015-09-17-13.00.log.html please create a Zanata branch so I can propose these corrections for review.
Thanks!
Doug _______________________________________________ Openstack-i18n mailing list Openstack-i18n@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-i18n
_______________________________________________ Openstack-i18n mailing list Openstack-i18n@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-i18n
participants (1)
-
Ying Chun Guo