[Bug] The README still confesses to ~50 untranslated labels that were already fixed #575

Closed
opened 2026-07-22 16:15:21 +00:00 by brenno · 0 comments
Owner

Found independently by two reviewers in the pre-publication review.

The stale textREADME.md:42: "about fifty field labels and hints in the slide editors are handed to a widget that localises them indirectly, so the gate never sees them and they still show their Dutch source text — 'Titel (H1)' and 'Aanbeveling' among them". Repeated verbatim at docs/ACCESSIBILITY.md:108-112 and CHANGELOG.md:273.

Measured, it is no longer true:

  • dart run tool/check_hardcoded_text.dart → "Hardcoded text OK: geen zichtbare string in lib/ omzeilt l10n.d('…'). 244 bronsleutel(s) lopen via een doorgeefluik naar d()"
  • flutter test test/app_localizations_test.dart → 11/11 green, including "every indirect Dutch source key is translated in every language"
  • Both named examples are translated in all 31 target files, e.g. lib/l10n/translations/fr.dart:903 'Titel (H1)': 'Titre (H1)', de.dart:240 'Aanbeveling': 'Empfehlung'
  • The gate's own header (tool/check_hardcoded_text.dart:104-110) records "Die opruiming is af. Het plafond is weg en de poort faalt nu bij élke overtreding."

The gap closed in 3d655bce; the text dates from 983233f2 (21-07). docs/CHECKS.md:372 may keep it as a historical example.

Why this must be fixed before publication: this is the single sentence a critic needs in order to write "32 languages, but the editor is partly Dutch" — and it is not true any more. A project that wrongly runs itself down loses twice: the reader believes the accusation, and then starts doubting the honest admissions that are true (the bitmap exports). Three paragraphs of text, no code.

Proposal: replace the confession with what the gate now proves — every visible string goes through l10n.d(), enforced by tool/check_hardcoded_text.dart with no ceiling, plus translation coverage for the 244 indirect source keys — with a *(Corrected …)* note in the house style. Keep the genuinely remaining gap, which is a different one: see the separate issue on untranslatable Dutch strings in lib/services.

Found independently by two reviewers in the pre-publication review. **The stale text** — `README.md:42`: "about fifty field labels and hints in the slide editors are handed to a widget that localises them indirectly, so the gate never sees them and they still show their Dutch source text — 'Titel (H1)' and 'Aanbeveling' among them". Repeated verbatim at `docs/ACCESSIBILITY.md:108-112` and `CHANGELOG.md:273`. **Measured, it is no longer true:** - `dart run tool/check_hardcoded_text.dart` → "Hardcoded text OK: geen zichtbare string in lib/ omzeilt `l10n.d('…')`. 244 bronsleutel(s) lopen via een doorgeefluik naar `d()`" - `flutter test test/app_localizations_test.dart` → 11/11 green, including "every indirect Dutch source key is translated in every language" - Both named examples are translated in all 31 target files, e.g. `lib/l10n/translations/fr.dart:903` `'Titel (H1)': 'Titre (H1)'`, `de.dart:240` `'Aanbeveling': 'Empfehlung'` - The gate's own header (`tool/check_hardcoded_text.dart:104-110`) records "Die opruiming is af. Het plafond is weg en de poort faalt nu bij élke overtreding." The gap closed in `3d655bce`; the text dates from `983233f2` (21-07). `docs/CHECKS.md:372` may keep it as a historical example. **Why this must be fixed before publication:** this is the single sentence a critic needs in order to write "32 languages, but the editor is partly Dutch" — and it is not true any more. A project that wrongly runs itself down loses twice: the reader believes the accusation, and then starts doubting the honest admissions that *are* true (the bitmap exports). Three paragraphs of text, no code. **Proposal:** replace the confession with what the gate now proves — every visible string goes through `l10n.d()`, enforced by `tool/check_hardcoded_text.dart` with no ceiling, plus translation coverage for the 244 indirect source keys — with a `*(Corrected …)*` note in the house style. Keep the genuinely remaining gap, which is a different one: see the separate issue on untranslatable Dutch strings in `lib/services`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#575
No description provided.