Ukrainian, and not the Russian one with a different name on it #156

Closed
opened 2026-08-31 19:45:07 +00:00 by jcoffey-dev · 0 comments
Owner

781 of 796 strings. Generated by AI, unreviewed, marked Beta.

The thing this catalogue had to avoid

Ukrainian and Russian share a script and share a plural rule — one, few, many, with 11 counting as many and 21 counting as one. They share almost nothing else that matters in a mail client:

Ukrainian Russian
Inbox Вхідні Входящие
Deleted Items Кошик Корзина
Conversation Листування Цепочка
Folder Тека Папка
Message Лист Письмо

A Ukrainian catalogue produced by adapting the Russian one would pass every structural check in this repo and still be the wrong language — and a Ukrainian reader would notice in the first sentence and would be right to resent it. The vocabulary here was chosen against what Ukrainian software says, not against the neighbouring file.

Two words worth naming: «тека» rather than «папка» for folder, the form Ukrainian software settled on; and «мітка» for label rather than Russian's «ярлык», which in Ukrainian means a shortcut and would be a small false friend on every screen.

Plurals

Tested against the shipped catalogue at 1, 2, 4, 5, 11, 21 and 0 — including the two cases English's two-form assumption gets wrong (11 is many despite ending in 1; 21 is one again). Plus a check that every counted string carries all four categories, since a missing few falls back to other silently and is grammatical often enough to go unnoticed.

One thing deliberately left out

A cross-check asserting that Ukrainian and Russian are actually different files is worth having, but can't live here: Russian is still an open PR (#155), so ru.ts doesn't exist on this branch. It belongs in a follow-up once both have landed — and I'll add it then rather than leave the claim untested.

Checks

461 tests, typecheck, build clean. npm run i18n:check reports uk at 98% with no stale keys. 61 kB chunk.

Still Beta. First things I'd want a Ukrainian speaker to check: «Листування» for conversation, and whether «Вивантажити»/«Завантажити» for upload/download read the right way round.

Merged 2026-08-31 as coffey-labs/ihasmail@5ee9b1f1b1

Rebuilt from: git history, session transcript.

**781 of 796 strings.** Generated by AI, unreviewed, marked **Beta**. ## The thing this catalogue had to avoid Ukrainian and Russian share a script and share a plural rule — `one`, `few`, `many`, with 11 counting as `many` and 21 counting as `one`. They share almost nothing else that matters in a mail client: | | Ukrainian | Russian | |---|---|---| | Inbox | Вхідні | Входящие | | Deleted Items | Кошик | Корзина | | Conversation | Листування | Цепочка | | Folder | Тека | Папка | | Message | Лист | Письмо | **A Ukrainian catalogue produced by adapting the Russian one would pass every structural check in this repo and still be the wrong language** — and a Ukrainian reader would notice in the first sentence and would be right to resent it. The vocabulary here was chosen against what Ukrainian software says, not against the neighbouring file. Two words worth naming: **«тека»** rather than «папка» for folder, the form Ukrainian software settled on; and **«мітка»** for label rather than Russian's «ярлык», which in Ukrainian means a *shortcut* and would be a small false friend on every screen. ## Plurals Tested against the shipped catalogue at 1, 2, 4, 5, 11, 21 and 0 — including the two cases English's two-form assumption gets wrong (11 is `many` despite ending in 1; 21 is `one` again). Plus a check that every counted string carries all four categories, since a missing `few` falls back to `other` silently and is grammatical often enough to go unnoticed. ## One thing deliberately left out A cross-check asserting that Ukrainian and Russian are actually *different files* is worth having, but can't live here: Russian is still an open PR (#155), so `ru.ts` doesn't exist on this branch. It belongs in a follow-up once both have landed — and I'll add it then rather than leave the claim untested. ## Checks 461 tests, typecheck, build clean. `npm run i18n:check` reports uk at 98% with no stale keys. 61 kB chunk. Still Beta. First things I'd want a Ukrainian speaker to check: «Листування» for conversation, and whether «Вивантажити»/«Завантажити» for upload/download read the right way round. **Merged** 2026-08-31 as coffey-labs/ihasmail@5ee9b1f1b16c <sub>Rebuilt from: git history, session transcript.</sub>
This repo is archived. You cannot comment on issues.