Pluralization of invariant culture
The PluralRules "Unicode.CLDR41" does not contain pluralization rules for invariant Culture "". To pluralize parameters of invariant culture, a fourth argument must be added to Plurals to indicate rule source "parametername:category:case:culture". Another solution is to use custom rules.
# Configuration
TemplateFormat: BraceNumeric
PluralRules: Unicode.CLDR41
Invariant:
- Culture: ""
Items:
- Key: Namespace.ExitRoundabout
Cases:
- Text: "Take first exit."
Plurals: "0:ordinal:one:en"
- Text: "Take second exit."
Plurals: "0:ordinal:two:en"
- Text: "Take third exit."
Plurals: "0:ordinal:few:en"
- Text: "Take {0}th exit."
Plurals: "0:ordinal:other:en"
// Load lines from file
Localization.Default.Lines.Lines.AddRange(new LocalizationReaderYaml.File("pluralization/invariantculture.l.yaml"));
// Get localizable text
var localizableText = Localization.Default.LocalizableText["Namespace.ExitRoundabout"];
// Get culture info
CultureInfo cultureInfo = CultureInfo.InvariantCulture;
// Print text
for (int exit = 1; exit <= 4; exit++) WriteLine(localizableText.Print(cultureInfo, new object?[] { exit }));
// Take first exit.
// Take second exit.
// Take third exit.
// Take 4th exit.