Search Issue Tracker
Fixed
Fixed in 1.5.x
Votes
0
Found in [Package]
1.5.4
Issue ID
LOC-1224
Regression
No
Pluralization fails when "Use Custom Formatter" locale differs from current Locale and has different plural rules
Reproduction steps:
1. Open the attached “IN-104953.zip” project
2. Open the “SampleScene”
3. Select “English (en).asset” from the Project Window
4. In the Inspector, enable the “Use Custom Formatter” property
5. From the Hierarchy, select the ‘Canvas > Example’ GameObject
6. In the Inspector, find the “Localize String Event” Component
7. Find the “Local Variables” field
8. Change either or both “Integer” values to 5 (or higher)
9. Disable and re-enable the “Example” GameObject to trigger a refresh of the String
10. Observe the Game view
Expected result: Text is correctly pluralized following the pluralization rules of the current locale
Actual result: Text is rendered as such “The brown fox{foxcount:p:|es} jumps over the lazy dog{dogcount:p:|s}”, following the locale’s custom formatter override
Reproducible with: 1.4.5, 1.5.4 (2022.3.63f1, 6000.0.51f1, 6000.1.8f1, 6000.2.0b5)
Reproducible on: Windows 11
Not reproducible on: no other environment tested
Notes:
- Also reported in discussions: https://discussions.unity.com/t/pluralization-rules-custom-formatters-issue/1654890
- In the example, English is the current locale and text is displayed with "The brown foxes jumps over the lazy dogs"
The amount of "foxes" and "dogs" can be changed in the Inspector of the “Examples” text GameObject. Changing the values will correctly pluralize the amount of foxes and dogs in the sentence
- The issue most likely stems from the "PluralLocalizationFormatter" script, which handles pluralization based on the locale. Here it is incorrectly enforcing Russian pluralization rules, because the formatter override is set to "ru-RU", despite the current locale actually being English. This is because Russian pluralization has three different forms: one, few, and many. In the string, no third option (aka "many") is defined, so it fails (5 being considered "many")
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- UI elements with text gets bigger and grey when Player window is moved to another screen with different resolution
- System name accepts multiline text but crops it on confirmation, duplicates input, and shrinks the field when empty
- UI element scale and position are wrong in project build when DRS is changed with HDR and Software Dynamic Resolution enabled
- White lighting artifact when a point light with a small emission range and "Hard Shadows" touches an object while a directional light with "Soft Shadows" and another point light are present
- Crash on JobQueue::HasJobGroupIDCompleted when closing the Editor while in Play mode on a specific project
Add comment