Open CharString opened 1 year ago
I'd postpone this and revisit if/when we manage to replace the formio renderer with something under our control, that would allow us to define the translation machinery ourselves, allowing us:
But pigs with lipstick look so cute! :)
Likely solved by storing all translations on the component itself and creating a natural context, which avoids collissions.
The message format to ICU is a bigger thing, so leaving this open for that reason.
Thema / Theme
Other
Omschrijving / Description
FormIO translations are a mapping of [string in source language] ⇒ [string in target language]
Given we are in control of constructing that mapping, we could choose to make it [message identifier] ⇒ [string]
Added value / Toegevoegde waarde
While it is still nowhere close to ICU's MessageFormat or Fluent in terms of expressibility and power to create naturally sounding translations for languages that have different plural forms, conjugations and gender, it would solve 2 things.
Aanvullende opmerkingen / Additional context
This would add a difference between forms that don't use translations and forms that do. This could be solved by always having translations on, but that's undesirable. Or, given messageids should uniquely identify the location where they are used, a function (and it's inverse) exists that can go from untranslated to translated for a given language code.