fix(l10n): de poort volgt nu een veldsprong — en veertien regels bleken in 31 talen Nederlands #813
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!813
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/veldsprong-809"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #809.
De reparatie
De analyse volgde argumenten terug naar hun declaratie, maar verloor het spoor zodra een string via een veld reisde:
_shortcutHint(cmd.shortcut!)heeft zijn put binnen de helper, terwijlcmdeen lokale variabele zonder opgelost type is.Gedicht langs de weg die al bestond voor een aanroep op een variabele — declareert precies één klasse die veldnaam, dan is het eenduidig. Bewust streng gehouden:
nameentitlestaan op tientallen klassen en blijven buiten beeld. Een melding die naar het verkeerde bestand wijst kost iemand een halve dag zoeken naar een fout die er niet is; dat is duurder dan een gemiste melding. Er staat een test op die grens.Wat eronder vandaan kwam
Veertien echte regels. De zeven catalogusbeschrijvingen in
reference_standards.dartwerden met een kaleText()gerenderd. Wie de app in het Duits gebruikte, kreeg een Duits instellingenvenster met daarin zeven Nederlandse alinea's.De vraag die het issue stelde — interfaceproza of referentiedata? — heeft een scherpe grens: de canonieke titels van MASTG en WSTG blijven onvertaald omdat vertalen ze onvindbaar maakt bij de bron. Een zin die wíj schreven over wat we bundelen valt daar niet onder. Dus vertaald: acht bronstrings, 248 vertalingen. De licentie-aanduidingen (
CC-BY-SA-4.0,EUPL-1.2,MITRE Terms of Use,CC-BY-4.0) zijn wél identifiers en staan opunchangedInAllLanguages.d()staat op de renderplek en niet in de catalogus: die isconst, enlib/serviceshoort geen l10n te importeren. Dat is de erkende indirecte vorm, dezelfde alsEditorField(label: …).En negen die er niet thuishoorden.
ThemeProfiletoont zijn hexwaarden naast het label, dus#FFCC00gold ineens als zichtbare tekst — er staan letters in, dus de lettertoets hielp niet. Onoplosbaar bovendien: de presets zijnconstinlib/models, en een model importeert geen l10n. Een kleurcode staat nu in dezelfde categorie als•en%. Een melding die niemand kán wegwerken is geen poort maar ruis.Het issue schatte 23 bevindingen die allemaal opgelost moesten worden; de juiste uitkomst bleek 14 oplossen en 9 herkennen als ruis.
Borging
Twee nieuwe fixtures in
check_hardcoded_text_tool_test.dart(de veldsprong wordt gevolgd; een veldnaam met meer bezitters juist niet) plus de kleurcodes in deisVisibleText-test. Geverifieerd rood zonder de fix.make checkgroen (exitcode 0, apart gecontroleerd) — gedraaid in een schone worktree opmain, zie de opmerking hieronder.Let op bij het lezen
Tijdens dit werk zette een andere sessie de gedeelde werkkopie op
fix/testcache-laadfout-798(#798). Mijn twee commits zijn daardoor eerst op díé tak beland en staan daar nog steeds. Deze PR draait op een aparte worktree vanafmainen bevat nul regels van dat #798-werk — nagekeken. Maarfix/testcache-laadfout-798bevat wél mijn twee commits; als die tak zo gemerged wordt, landt #809 mee in #798.