Turkish translation contributed by Hakan Arslan (@harslannet), first offered on GitHub as Coffey-Labs/ihasmail#418. His commit is cherry-picked as he wrote it, with his authorship. Thank you, Hakan!
web/src/locales/tr.ts: 1630/1630 strings and plurals, no fallbacks, no stale keys
web/src/locales/permissions/tr.ts: all 59 categories and 661 permission labels
web/src/lib/languages.ts: registered as Türkçe, Beta
A second commit updates README, FEATURES, ROADMAP and KNOWN-ISSUES for eleven languages and credits him in FEATURES.
Verified
His branch is based on main as of 2026-09-30. The only commit since is the issue-template change (#28), so no strings moved under it.
npm run i18n:check: Turkish 1630/1630 with 0 stale. The check still exits 1 because of one stale key in the other eight catalogs, which fails on main the same way.
Every placeholder in every string and plural form matches its English key. The only exceptions are one forms like "Her gün" for "Every {n} days", which German does the same way. Plural forms are only one/other, the two Intl.PluralRules("tr") draws. No markup or links were added to any string.
The 21 strings left identical to English are brand names, header names, example addresses and pure placeholders.
Typecheck clean, 1443 tests pass.
Driven on the mock: settings, folders, reply bar and dates all render in Turkish.
A spot-check of a random sample reads as natural Turkish with consistent terminology. It is not a native review, which is why it stays Beta.
New strings: none in the English source. This adds a catalog for an existing set.
Turkish translation contributed by Hakan Arslan ([@harslannet](https://github.com/harslannet)), first offered on GitHub as Coffey-Labs/ihasmail#418. His commit is cherry-picked as he wrote it, with his authorship. Thank you, Hakan!
- `web/src/locales/tr.ts`: 1630/1630 strings and plurals, no fallbacks, no stale keys
- `web/src/locales/permissions/tr.ts`: all 59 categories and 661 permission labels
- `web/src/lib/languages.ts`: registered as `Türkçe`, Beta
A second commit updates README, FEATURES, ROADMAP and KNOWN-ISSUES for eleven languages and credits him in FEATURES.
**Verified**
- His branch is based on main as of 2026-09-30. The only commit since is the issue-template change (#28), so no strings moved under it.
- `npm run i18n:check`: Turkish 1630/1630 with 0 stale. The check still exits 1 because of one stale key in the other eight catalogs, which fails on main the same way.
- Every placeholder in every string and plural form matches its English key. The only exceptions are `one` forms like "Her gün" for "Every {n} days", which German does the same way. Plural forms are only `one`/`other`, the two `Intl.PluralRules("tr")` draws. No markup or links were added to any string.
- The 21 strings left identical to English are brand names, header names, example addresses and pure placeholders.
- Typecheck clean, 1443 tests pass.
- Driven on the mock: settings, folders, reply bar and dates all render in Turkish.
- A spot-check of a random sample reads as natural Turkish with consistent terminology. It is not a native review, which is why it stays Beta.
New strings: none in the English source. This adds a catalog for an existing set.
Closes #27.
README, FEATURES, ROADMAP and KNOWN-ISSUES counted ten languages and
eight Beta translations. Turkish makes eleven and nine. FEATURES credits
Hakan Arslan (harslannet) beside Michael's Dutch review, and says the
Turkish catalog was made with AI and checked by him, as its own header
says. It stays Beta, as he marked it.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Turkish translation contributed by Hakan Arslan (@harslannet), first offered on GitHub as Coffey-Labs/ihasmail#418. His commit is cherry-picked as he wrote it, with his authorship. Thank you, Hakan!
web/src/locales/tr.ts: 1630/1630 strings and plurals, no fallbacks, no stale keysweb/src/locales/permissions/tr.ts: all 59 categories and 661 permission labelsweb/src/lib/languages.ts: registered asTürkçe, BetaA second commit updates README, FEATURES, ROADMAP and KNOWN-ISSUES for eleven languages and credits him in FEATURES.
Verified
npm run i18n:check: Turkish 1630/1630 with 0 stale. The check still exits 1 because of one stale key in the other eight catalogs, which fails on main the same way.oneforms like "Her gün" for "Every {n} days", which German does the same way. Plural forms are onlyone/other, the twoIntl.PluralRules("tr")draws. No markup or links were added to any string.New strings: none in the English source. This adds a catalog for an existing set.
Closes #27.