[Bug] Zes talen tonen Engelse kwaliteitsmeldingen terwijl de poort groen staat #677
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#677
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Gevonden terwijl de nieuwe lege-dia-melding uit #583 werd vertaald.
Wat er staat. In
de,fr,es,it,fyenpapstaat een blok bestaande kwaliteitsmeldingen als onvertaald Engels in het vertaalbestand. Bijvoorbeeld inlib/l10n/translations/de.dartrond regel 2249:Waarom
make l10n-checkdit niet ziet. De poort toetst dekking — staat er een waarde bij deze sleutel? — en niet of die waarde in de doeltaal staat. Een Engelse string in het Duitse bestand is voor de poort een ingevulde string. Dat is precies het gat waar deze schuld al die tijd in kon blijven zitten.Waarom het meer is dan slordig. Het kwaliteitspaneel toont deze meldingen naast elkaar. Een Duitse gebruiker ziet daar straks de correct vertaalde lege-dia-melding pal naast
Many bullets on this slide. Dat leest niet als "één string mist" maar als "dit product is half af", en het is de plek waar de app juist gezaghebbend hoort te klinken: hij vertelt je wat er mis is met jouw werk.Twee dingen om te beslissen:
enis, is vrijwel altijd een niet-vertaalde string. Er zijn echte uitzonderingen (leenwoorden), en daar bestaat deunchanged-lijst intool/add_l10n.dartal voor — die kan dienstdoen als de uitzonderingslijst van zo'n controle.Zonder punt 2 komt dit terug: het is niet één keer ontstaan en het is nu ook niet één keer opgemerkt.
Opgelost in PR #690, op main.
De vijftien meldingen zijn vertaald in de zes talen, met register en terminologie uit het bestand zelf. Er kwamen er vier bij die de telling niet had:
woorden,niveauentegenoverwaren net zo Engels en wórden getoond — een Duitse gebruiker las(140 words)en(level 4).En het woord
bulletsstond twee keer hardgecodeerd buitenl10n.d(), midden in een verder wél vertaalde zin:Viele Stichpunkte auf dieser Folie (12 bullets).De sleutel bestond al in alle 32 talen en werd alleen niet aangeroepen. Dezelfde fout, één laag dieper — en hij botste ook met de regel "geen zichtbare tekst buitenl10n.d()".De poort staat er, en het tweede punt uit het issue was moeilijker dan het leek. Een naïeve "gelijk aan de Engelse vertaling"-toets vindt er 446 en heeft in ruim driehonderd gevallen ongelijk:
Logo,Design,Version,Classificationin het Frans zijn gewoon identiek. Dat is geen poort maar ruis, en ruis wordt weggeklikt.Daarom telt alleen wat drie woorden of meer is — een hele zin die in twee talen identiek is, is geen toeval. Dat vond er precies 93: de 90 echte plus drie terechte uitzonderingen, die met reden in de lijst staan (een pangram als lettertypevoorbeeld, een CVSS-vakterm, één Deens leenwoord). Jouw suggestie om de
unchanged-lijst uitadd_l10n.dartte hergebruiken bleek niet nodig; die lijst gaat over iets anders, en drie uitzonderingen met een reden ernaast lezen beter dan een gedeelde lijst.Wat de keuze kost staat in de test zelf: een onvertaalde string van één of twee woorden glipt erdoorheen. Dat is de prijs voor een poort die niet liegt, en hij is te betalen — deze fout bestond uit hele zinnen.