Skip to content

Kemi: native translation review of the web admin and report texts #1471

Open

Description

@renemadsen

What is wrong

The Kemi UI and e-mail texts exist in 24 non-English/Danish locales (plus the Excel/PDF words in localization.json). They are machine translation plus hand fixes and have never had a native-speaker check. The reviews flagged specific problems and the wording classes that machine translation gets wrong.

Locales to check first: hu, et, lv, lt, is, el, pt-PT / pt-BR, fi, sl, sk, ro, pl, uk, fr, nl, de, cs, es, it, and the rest.

Known false-friend patterns to look for in every locale

  • placement read as a storage place, room or internship (cs "Úložný prostor" and sl "Skladiščni prostor" lean toward "storage room")
  • move read as moving house
  • loading read as cargo
  • archive used as a noun where the verb is meant (is "setja í skjalasafn" was chosen to avoid "geymd", stored)
  • register read as signing up (el "Εγγραφή"; hu "Regisztráció" should be "Nyilvántartásba vétel" or "Rögzítés"; pt-PT, fi, lv had it fixed)
  • write-off, balance, used up, disposed of, signal word and the deadline kinds
  • BMD expanded to "bone density", and medical terms in the deadline-repeat hint
  • "Chemicals: Disabled" read as a disabled person

Known items

  • hu-HU "Disabled" is "Letiltva", should be "Kikapcsolva"; hu "vegyszerek" against "vegyi anyag".
  • Older pt-PT Kemi keys still use Brazilian wording.
  • fr "Afficher uniquement ces" is ungrammatical ("ceux-ci"), "Désenregistré" would read better as "Radié", and the deadlines "date limite ..." are lower-case.
  • nl "Zoek in het chemisch register." has a stray full stop. de "Menge erhalten" should be "Erhaltene Menge".
  • pl and uk "inwentaryzacja" / "інвентаризація" mean stocktaking as a process. The {{count}} plurals are wrong for some counts in pl and uk (no ICU).
  • Mixed imperative and infinitive forms; fr "Enregistrez" against nominal titles elsewhere.
  • sl, sk, lt, lv "could not save"; "ses 1 produits..." in the blocked text when the count is 1 (other locales).
  • fi "Alkupäivä/Loppupäivä"; Ukrainian wording (T2 M-8).
  • The history Details text has English "push N · e-mail N" on both the C# and TS sides (parity kept), which needs a key in all locales.

Where (stable a81a41b)

  • eform-client/src/app/plugins/modules/backend-configuration-pn/i18n/*.ts (Kemi keys, one file per locale, for example huHU.ts)
  • eFormAPI/Plugins/BackendConfiguration.Pn/BackendConfiguration.Pn/Resources/localization.json
  • eform-client/src/app/plugins/modules/backend-configuration-pn/modules/chemicals/chemicals-i18n-meaning.spec.ts:440 (SELF_SIGNUP is a blacklist of known bad strings, not a positive meaning check)
  • eform-client/src/app/plugins/modules/backend-configuration-pn/modules/chemicals/helpers/chemical-history.helper.ts:193 and ChemicalHistoryDetailsFormatter.cs:63 (the English push/e-mail words)

Suggested fix

A native-speaker pass per locale, hu, et, lv, lt, is and el first. Update the meaning guards in chemicals-i18n-meaning.spec.ts for each correction, and keep ChemicalHistoryWordsParityTests green. Do it before GA.

Origin

Plan E final review §4 (T12 m-12, T13 N-m2, T16 M-1, E2 huHU Disabled, m-14), Plan E1/E2 translation concerns, PR #1434 and PR #1437.

🤖 Generated with Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions