Je m’étonnais depuis quelques jours de voir le nombre de formes de pluriel dans les fichiers générés par Transifex, que j’utilise pour les traductions des plugins :
"Language: fr\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
Et en suivant de lien en lien les informations fournies par Transifex :
Transifex works with plural forms according to CLDR Language Plural Rules. The number of plural forms may vary depending on the language. In order for a pluralized string to be translated in Transifex, all the available forms exposed in the editor need to be translated.
You can find more descriptive information about how such strings are displayed in the editor and handled here.
J’ai fini par tomber sur ce tableau :
Name | Code | Type | Category | Examples | Minimal Pairs | Rules |
---|---|---|---|---|---|---|
French | fr | cardinal | one | 0, 1 0.0~1.5 |
1 jour 1,5 jour |
i = 0,1 |
many | 1000000, 1c6, 2c6, 3c6, 4c6, 5c6, 6c6, … 1.0000001c6, 1.1c6, 2.0000001c6, 2.1c6, 3.0000001c6, 3.1c6, … |
1 000 000 de jours 1 M de jours |
e = 0 and i != 0 and i % 1000000 = 0 and v = 0 or e != 0..5 |
|||
other | 2~17, 100, 1000, 10000, 100000, 1c3, 2c3, 3c3, 4c3, 5c3, 6c3, … 2.0~3.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, 1.0001c3, 1.1c3, 2.0001c3, 2.1c3, 3.0001c3, 3.1c3, … |
2 jours 2,0 jours |
||||
ordinal | one | 1 | Prenez la 1re à droite. | n = 1 | ||
other | 0, 2~16, 100, 1000, 10000, 100000, 1000000, … | Prenez la 2e à droite. |
Et donc il y a deux formes différentes de pluriel en français, d’après l’Unicode !
J’avoue ne pas bien voir la différence grammaticales entre celles-ci — à part le de devant l’unité —, alors si vous avez des lumières à ce sujet, ça m’intéresse !