Jag har byggt ett nytt verktyg för alla som jobbar med lokalisering och översättning av programvara: l10n-lint.
Vad är l10n-lint?
l10n-lint är en linter för översättningsfiler som hittar vanliga problem innan de når användarna. Verktyget stöder:
- gettext .po-filer – Standardformat för Linux/GNU-projekt
- Qt .ts-filer – Qt Linguist-format för Qt-applikationer
Vilka fel hittar den?
| Regel | Beskrivning |
|---|---|
| missing-translation | Tomma översättningar (msgstr) |
| fuzzy | Översättningar markerade som osäkra |
| placeholder-mismatch | Felaktiga %s, {0}, %d mellan original och översättning |
| duplicate | Dubbletter av samma källsträng |
| too-long | Översättningar som är ovanligt långa |
Lint GitHub-repos direkt
En unik funktion är att du kan linta GitHub-repositorier utan att klona dem:
l10n-lint --github user/repo --path resources/language/
Varför byggde jag detta?
Som aktiv översättare i det svenska översättningsteamet har jag ofta stött på samma typer av fel i översättningsfiler. Istället för att manuellt leta efter dem ville jag ha ett automatiskt verktyg.
Installation
l10n-lint finns som färdiga paket för flera plattformar:
# Debian/Ubuntu
sudo dpkg -i l10n-lint_1.0.0_all.deb
# Fedora/RHEL
sudo rpm -i l10n-lint-1.0.0-1.noarch.rpm
# Arch Linux
sudo pacman -U l10n-lint-1.0.0-any.pkg.tar.zst
Inga beroenden
Verktyget är skrivet i ren Python utan externa beroenden – bara Python 3.8+ krävs.
Källkod och nedladdning
l10n-lint är gratis och öppen källkod under GPL-3.0:
Uppdatering: v1.3.0 (2026-02-04)
Ny version med förbättringar:
• Fixad pluralformshantering – msgid_plural kontrolleras nu korrekt
• length-ratio höjt till 3x för att undvika falsklarm med svenska sammansatta ord
• too-long jämför nu med källans längd istället för absolut gräns
• 45 språk tillgängliga
Ladda ner: github.com/yeager/l10n-lint/releases/tag/v1.3.0


Starta diskussion »
Skriv ett svar