Hopp til innhold

Etablerte et engelsk/dansk internasjonaliseringssystem med 12 027 meldinger per språkversjon fordelt på 458 navneromsfiler, med vokabular håndhevet av linter og et budsjett på 400 linjer per fil.

12,027 meldinger per språkversjon, på engelsk og dansk

Situasjon. Plattformen kjører på engelsk og dansk, og oversettelsessystemer har en tendens til å vokse seg til et rot. Filene vokser uten grense, nøkler lekker — til stede i det ene språket, borte i det andre — og de språkspesifikke konvensjonene brukes ujevnt, så det ene språket ender opp med å lese som om det var oversatt av en komité der ingen snakket sammen. For et profesjonelt produkt er det ikke en liten skjønnhetsfeil; det framstår som slurv.

Oppgave. Internasjonaliseringsoppsettet måtte skalere — holde begge språkene konsistente og korrekte, og filene noe en person fortsatt kunne vedlikeholde et år senere.

Handling. Det er bygget på next‑intl med regler som verktøyene faktisk håndhever. Den danske siden har et låst vokabular og en låst stil — ekte æøå, det uformelle «du», de riktige aksentene i imperativ og semantiske tilordninger for sammensatte substantiver, slik at de oversettes etter mening og ikke ord for ord — og en linter holder den til det. Det er et strengt budsjett på 400 linjer per navneromsfil, med oppdeling og sammenslåing, slik at et stort område deles opp i nøstede filer som slås rent sammen igjen i stedet for at én fil vokser i det uendelige; det budsjettet er grunnen til at 12 027 meldinger per språk ligger i 458 filer og ikke i en håndfull enorme. En lintersjekk sammenligner nøklene på tvers av språkene, så ingenting lekker eller forsvinner. Og lagrede overstyringer slås sammen katalogstyrt i stedet for med skjøre reserveverdier på toppnivå — den samme ideen om dyp sammenslåing som brukes for preferanser.

Resultat. Begge språkene holder seg korrekte og konsistente med 24 054 meldinger til sammen, og filene forblir vedlikeholdbare etter hvert som antallet strenger stiger. Språkkvalitet ble noe verktøyene garanterer ved hver commit, i stedet for noe som i det stille forringes hver gang noen legger til en streng i en fart. Budsjettet er den bærende delen: uten en grense per fil ville 458 filer ha vært tolv, og ingen ville åpnet dem.

Ett stykke av en lengre oversikt — og den ligger i sin helhet her.

Hver oppføring er skrevet på samme måte: situasjonen, oppgaven, hva vi gjorde, og hva som endret seg.

Se hele oversikten