Page MenuHomePhabricator

Translations of plural(s) forms into Arabic
Closed, ResolvedPublic

Description

For some Arabic interface translations on TWN, the original translation demands only two words: one for singular and the second for plural. But in Arabic langage it's a little more complex, I will take the example of translating the number of edits for an user: In English we have:

  • This user made 1 edit.
  • This user made X edits. (X from 2 to infinite)

However for Arabic we need to detail more:

  • This user made 1 edit.>>> هذا المستخدم قام بتعديل واحد 1
  • This user made 2 edits.>>> هذا المستخدم قام بتعديلين 2
  • This user made س edits. (س from 3 to 10) >>> هذا المستخدم قام بـ س تعديلات
  • This user made ش edits. (ش from 11 to infinite) >>> هذا المستخدم قام بـ ش تعديلا but if the number is a multiple of 100 (100, 200, 300, ... 1000, 1100, 2000...) >>> هذا المستخدم قام بـ ش تعديل

Is it possible to find a solution for this?

Related Objects

Event Timeline

Restricted Application added subscribers: alanajjar, Aklapper. · View Herald TranscriptJul 29 2019, 10:41 AM
Dyolf77_WMF updated the task description. (Show Details)Jul 29 2019, 5:11 PM

I see the following rules for Arabic in plurals.xml:

<pluralRules locales="ar">
    <pluralRule count="zero">n = 0 @integer 0 @decimal 0.0, 0.00, 0.000, 0.0000</pluralRule>
    <pluralRule count="one">n = 1 @integer 1 @decimal 1.0, 1.00, 1.000, 1.0000</pluralRule>
    <pluralRule count="two">n = 2 @integer 2 @decimal 2.0, 2.00, 2.000, 2.0000</pluralRule>
    <pluralRule count="few">n % 100 = 3..10 @integer 3~10, 103~110, 1003, … @decimal 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 103.0, 1003.0, …</pluralRule>
    <pluralRule count="many">n % 100 = 11..99 @integer 11~26, 111, 1011, … @decimal 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 111.0, 1011.0, …</pluralRule>
    <pluralRule count="other"> @integer 100~102, 200~202, 300~302, 400~402, 500~502, 600, 1000, 10000, 100000, 1000000, … @decimal 0.1~0.9, 1.1~1.7, 10.1, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …</pluralRule>
</pluralRules>

This pretty much matches what you said, but with a few more cases:

  • 0 edits ("zero")
  • 1 edit ("one")
  • 2 edit ("two")
  • 3-10, 103-110, 203-210, etc ("few")
  • 11-99, 111-199, 211-299, etc ("many")
  • 100-102, 200-202, etc ("other")

It looks like the {{PLURAL}} magic word already accounts for this in Arabic. The syntax is {{PLURAL:$1|zero|one|two|few|many|other}}. Here are some example usages in MediaWiki core:

"pagecategories": "{{PLURAL:$1|بلا تصنيف|تصنيف|تصنيفان|تصنيفات}}",
"hidden-categories": "{{PLURAL:$1|لا تصنيفات مخفية|تصنيف مخفي|تصنيفان مخفيان|تصنيفات مخفية}}",
"category-subcat-count": "{{PLURAL:$2|هذا التصنيف يحوي التصنيف الفرعي التالي|هذا التصنيف يحوي {{PLURAL:$1||التصنيف الفرعي|تصنيفين فرعيين|$1 تصنيفات فرعية}}، من إجمالي $2.}}",
"category-subcat-count-limited": "هذا التصنيف يحوي {{PLURAL:$1||التصنيف الفرعي التالي|التصنيفين الفرعيين التاليين|التصنيفات الفرعية $1  التالية}}.",
"category-article-count": "{{PLURAL:$2|لا صفحات بهذا التصنيف سوى التالية.|{{PLURAL:$1||الصفحة التالية مصنّفة|الصفحتان التاليتان مصنّفتان|الصفحات $1 التالية مصنّفة}} بهذا التصنيف، من إجمالي $2.}}",
"category-article-count-limited": "{{PLURAL:$1||الصفحة التالية|الصفحتان التاليتان|الصفحات $1 التالية}} مصنّفة بهذا التصنيف.",
"category-file-count": "{{PLURAL:$2||هذا التصنيف يحتوي الملف التالي فقط.|{{PLURAL:$1||الملف التالي|الملفان التاليان|الملفات ال$1 التالية}} في هذا التصنيف من إجمالي $2.}}",
"category-file-count-limited": "{{PLURAL:$1|الملف التالي مصنّف|الملفان التاليان مصنّفان|الملفات $1 التالية مصنّفة}} بهذا التصنيف.",

It looks like none of the Arabic translations for GrowthExperiments currently use {{PLURAL}} though, so that would be good to fix. TWN should have warned the translator for every message where there's a {{PLURAL}} magic word in the English original but not in the Arabic translation.

Thanks @Catrope I will make some changes right now on TWN, and see if it works.

It is working fine now, thanks.

Dyolf77_WMF closed this task as Resolved.Jul 30 2019, 9:37 AM