cheeaun / cheeaun/phanpy

[Localization] Add counts localization for non-English languages

Open
#888 3 comments 1 reaction 0 assignees View on GitHub
enhancement i18n
Dominant language
JavaScript
Stars
1.5k
Forks
186
Avg merge
1d 36m
Merged PRs (30d)
11

Description

### Problem I have

In Russian and in other slavic languages (and not only them, I guess) we have different word endings (+suffixes sometimes).
As I wrote on Crowdin:
```
1 post = 1 пост (same applyable for 11, 21, 31 and so on)
2 - 4 post(s) = 2 - 4 пост(а) (12-14, 22-24, 32-34 and so on)
5 - 10 post(s) = 5 - 10 пост(ов) (15-20, 25-30, 35-40 and so on)
```
I don't like using multiple endings in round squares, it's look meh.
Example - Подпис(ка/ки/ок) (Follow/2-4 Follows/5-10 Follows)

### Solution I'd like

Using formulas like this, as far as I understand
![изображение](https://github.com/user-attachments/assets/38fd33de-d993-4f60-834b-ba8b6bb76960)
Thing is I don't know how to adapt it for other languages if they have different rules for count.
I guess, only if separate this formulas for different languages (if it possible on Crowdin), but it is additional mind load for dev how to manage it properly...

### Alternatives considered

_No response_

### Other

_No response_

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the project's existing Crowdin localization setup and how count-dependent strings are represented in the JavaScript client. Compare the current approach with the reported Russian examples and document which languages need distinct plural rules. Done means the supported localization workflow handles count-based wording without bracketed alternatives and is verified for the affected languages.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
localization
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.