Fehlende Schlüssel finden, kontextgerecht übersetzen, Pluralformen korrekt abbilden
Sprachdateien laufen in jedem wachsenden Projekt irgendwann auseinander: Ein neuer Text wird in der Ausgangssprache ergänzt, die Übersetzung in drei weiteren Sprachdateien wird vergessen, und niemand bemerkt es, bis ein Kunde einen englischen Platzhaltertext in der deutschen Oberfläche meldet. Dieser Artikel zeigt, wie Claude beim systematischen Finden fehlender Schlüssel, bei kontextgerechten statt wörtlichen Übersetzungen und bei der korrekten Behandlung von Pluralisierungsregeln unterstützt.
Inhaltsverzeichnis
- 1. Das Kernproblem: Sprachdateien laufen auseinander
- 2. Fehlende Übersetzungsschlüssel systematisch finden lassen
- 3. Kontextgerechte statt wörtliche Übersetzungsvorschläge
- 4. Pluralisierungsregeln verschiedener Sprachen berücksichtigen
- 5. Platzhalter und Interpolation korrekt behandeln
- 6. Terminologie-Konsistenz über das Projekt hinweg
- 7. Automatisierter Workflow: CI-Check für fehlende Keys
- 8. Claude als Reviewer für Übersetzungsqualität einsetzen
- 9. Kulturelle Anpassung jenseits reiner Sprachübersetzung
- 10. Zusammenfassung
- 11. FAQ
1. Das Kernproblem: Sprachdateien laufen auseinander
In den meisten Projekten entsteht Text zuerst in einer Ausgangssprache, häufig Deutsch oder Englisch, und wird erst danach in weitere Sprachdateien übertragen. Dieser Prozess ist in der Praxis selten synchron: Ein neues Feature wird ausgeliefert, die Übersetzung für zwei von fünf unterstützten Sprachen fehlt noch, und ohne systematische Prüfung fällt das erst auf, wenn ein Nutzer den fehlenden Text als englischen Fallback oder als rohen Schlüsselnamen zu Gesicht bekommt.
Das Problem verschärft sich mit jeder zusätzlichen Sprache, weil die Zahl der möglichen Lücken linear mit der Anzahl der Sprachdateien wächst. Ein manueller Abgleich per Diff zwischen den Dateien wird ab einigen hundert Schlüsseln unpraktikabel, gerade weil verschachtelte JSON- oder YAML-Strukturen Lücken an tiefen Ebenen leicht verstecken.
2. Fehlende Übersetzungsschlüssel systematisch finden lassen
Claude eignet sich gut, um ein Skript zu entwerfen, das alle Sprachdateien rekursiv einliest, die Schlüsselstruktur der Referenzsprache als Baseline nimmt und für jede andere Sprache exakt auflistet, welche Schlüssel fehlen, welche zusätzlich vorhanden sind, und welche zwar existieren, aber einen leeren oder identischen Wert zur Ausgangssprache haben, was häufig auf eine vergessene Übersetzung statt auf eine bewusste Gleichheit hindeutet.
Ein solches Skript lässt sich direkt in die CI-Pipeline einbinden, sodass ein Pull Request mit neuem Text in der Ausgangssprache automatisch markiert wird, wenn die entsprechenden Übersetzungen fehlen. Das verlagert die Prüfung von einer manuellen, fehleranfälligen Kontrolle vor dem Release auf eine automatisierte Prüfung bei jedem einzelnen Commit.
import json
from pathlib import Path
def flatten(d: dict, prefix: str = "") -> dict:
result = {}
for key, value in d.items():
full_key = f"{prefix}.{key}" if prefix else key
if isinstance(value, dict):
result.update(flatten(value, full_key))
else:
result[full_key] = value
return result
def find_missing_keys(reference_lang: str, target_langs: list[str], base_dir: Path):
reference = flatten(json.loads((base_dir / f"{reference_lang}.json").read_text()))
report = {}
for lang in target_langs:
target = flatten(json.loads((base_dir / f"{lang}.json").read_text()))
missing = sorted(set(reference) - set(target))
identical = [k for k in target if target.get(k) == reference.get(k) and k in reference]
report[lang] = {"missing": missing, "suspiciously_identical": identical}
return report
3. Kontextgerechte statt wörtliche Übersetzungsvorschläge
Eine wörtliche Übersetzung ist bei UI-Texten häufig die falsche Wahl. Der englische Button-Text Get started wird bei wörtlicher Übersetzung ins Deutsche schnell zu einer sperrigen Konstruktion, während eine kontextgerechte Übersetzung wie Jetzt starten im Interface deutlich natürlicher wirkt und zur üblichen Tonalität von Bedienelementen passt. Claude liefert bessere Vorschläge, wenn der Kontext explizit mitgegeben wird: Handelt es sich um einen Button, eine Fehlermeldung, einen Tooltip oder einen Fließtext.
Besonders wertvoll ist es, Claude nicht nur den einzelnen String, sondern den umgebenden Verwendungskontext zu geben, etwa den Screenshot-Beschreibung, die maximale verfügbare Zeichenbreite bei einem Button, oder den Ton der restlichen Oberfläche. Diese Zusatzinformation verhindert technisch korrekte, aber im Interface unpassende Übersetzungen, die zwar den Sinn treffen, aber stilistisch aus dem Rahmen fallen.
Prompt für kontextgerechte Übersetzung:
Übersetze folgende UI-Strings von Englisch nach Deutsch für eine
B2B-SaaS-Anwendung mit förmlicher Anrede (Sie-Form):
- key: "checkout.error.card_declined"
context: Fehlermeldung direkt unter dem Zahlungsformular
source: "We couldn't process your card. Please try again."
- key: "onboarding.cta.primary"
context: Primärer Button, max. 20 Zeichen Breite
source: "Get started"
Liefere natürliche, kontextpassende Übersetzungen, keine
wörtlichen Übertragungen.
4. Pluralisierungsregeln verschiedener Sprachen berücksichtigen
Deutsch und Englisch kennen nur zwei Pluralformen, Singular und Plural, was viele Entwickler dazu verleitet, Pluralisierung als einfaches Ein-Bit-Problem zu behandeln. Andere Sprachen widerlegen diese Annahme deutlich: Russisch benötigt drei unterschiedliche Formen abhängig von der letzten Ziffer der Zahl, Arabisch kennt bis zu sechs Formen inklusive gesonderter Regeln für null, eins und zwei, und Polnisch unterscheidet zusätzlich zwischen kleinen und großen Zahlen.
Claude kennt die CLDR-Pluralregeln der gängigen Sprachen und kann für ein gegebenes ICU-MessageFormat-Muster zuverlässig alle benötigten Formen für eine Zielsprache ergänzen, statt nur die im Ausgangstext vorhandenen zwei Formen naiv zu kopieren. Wichtig ist, im Prompt explizit nach dem ICU-Standard oder dem im Projekt verwendeten Pluralisierungsformat zu fragen, da unterschiedliche Frameworks leicht abweichende Syntax verwenden.
// ICU MessageFormat, Beispiel Russisch (3 Formen nötig)
{
"cart.items_count": "{count, plural, one {# Artikel} few {# Artikel} many {# Artikel} other {# Artikel}}"
}
// Von Claude korrekt aufgelöst für Russisch:
{
"cart.items_count": "{count, plural, one {# товар} few {# товара} many {# товаров} other {# товара}}"
}
// one: 1, 21, 31... / few: 2-4, 22-24... / many: 0, 5-20, 25-30...
5. Platzhalter und Interpolation korrekt behandeln
Ein häufiger Fehler bei automatisierten oder halbautomatisierten Übersetzungen ist das versehentliche Verändern von Platzhaltern, etwa {userName} wird zu {Benutzername} übersetzt, obwohl der Platzhalter im Code exakt so heißen muss, wie er in der Anwendung referenziert wird. Claude übersetzt Platzhalter zuverlässig korrekt, wenn im Prompt explizit darauf hingewiesen wird, dass Text in geschweiften oder eckigen Klammern unverändert erhalten bleiben muss.
Zusätzlich sollte die Wortstellung um Platzhalter herum geprüft werden, da manche Sprachen eine andere Satzstellung erfordern als die Ausgangssprache. Ein String wie {count} neue Nachrichten von {sender} lässt sich nicht in jeder Sprache in derselben Reihenfolge sinnvoll übersetzen, und Claude kann solche Umstellungen vorschlagen, solange die Platzhalter selbst unangetastet bleiben.
6. Terminologie-Konsistenz über das Projekt hinweg
In größeren Projekten mit mehreren Übersetzern oder mehreren Übersetzungsrunden über Monate hinweg entsteht leicht Begriffsinkonsistenz: Derselbe englische Fachbegriff wird an einer Stelle mit einer deutschen Übersetzung und an anderer Stelle mit einer zweiten, ebenfalls korrekten, aber abweichenden Übersetzung wiedergegeben. Für Nutzer wirkt das inkonsistent und erschwert das Verständnis, selbst wenn beide Varianten für sich genommen richtig sind.
Claude kann anhand eines gepflegten Glossars mit bevorzugten Begriffsübersetzungen neue Übersetzungsvorschläge konsequent daran ausrichten, und ein bestehendes Sprachdateien-Set lässt sich gezielt nach Begriffen durchsuchen, die uneinheitlich übersetzt wurden. Diese Konsistenzprüfung ist deutlich schneller als eine manuelle Durchsicht sämtlicher Strings.
7. Automatisierter Workflow: CI-Check für fehlende Keys
Ein CI-Check für fehlende Übersetzungsschlüssel sollte bei jedem Pull Request laufen, der Änderungen an der Referenz-Sprachdatei enthält, und die Pipeline entweder mit einer Warnung oder, bei strengeren Projekten, mit einem harten Fehler beenden, solange nicht alle Zielsprachen den neuen Schlüssel enthalten. Claude generiert ein solches Prüfskript zuverlässig, inklusive einer gut lesbaren Ausgabe, die pro Sprache genau auflistet, welche Schlüssel fehlen.
Ergänzend lohnt sich eine automatische Zuweisung: Fehlt eine Übersetzung, kann ein Skript automatisch einen Übersetzungsvorschlag von Claude generieren und als Entwurf markiert in die Sprachdatei einfügen, sodass ein menschlicher Reviewer nur noch prüfen statt komplett neu übersetzen muss. Das beschleunigt den Workflow spürbar, ohne die Qualitätskontrolle durch einen Menschen zu ersetzen.
#!/bin/bash
# CI-Check: bricht ab, wenn Übersetzungsschlüssel fehlen
set -euo pipefail
MISSING=$(python3 scripts/find_missing_keys.py \
--reference de \
--targets en,fr,es,it \
--format json | jq '[.[] | .missing] | flatten | length')
if [ "$MISSING" -gt 0 ]; then
echo "Fehler: $MISSING fehlende Übersetzungsschlüssel gefunden."
python3 scripts/find_missing_keys.py --reference de --targets en,fr,es,it
exit 1
fi
echo "Alle Übersetzungsschlüssel vollständig.
8. Claude als Reviewer für Übersetzungsqualität einsetzen
Neben der Erstellung neuer Übersetzungen eignet sich Claude auch als Reviewer für bereits vorhandene, von Menschen übersetzte Strings. Ein Review-Prompt, der die Zielgruppe, den Tonfall und bekannte Terminologie-Vorgaben beschreibt, deckt zuverlässig Stellen auf, an denen eine Übersetzung zwar grammatikalisch korrekt, aber stilistisch unpassend, zu formell, zu informell oder inkonsistent mit dem restlichen Interface ist.
Dieser Review-Schritt ersetzt keine muttersprachliche Endabnahme bei geschäftskritischen Texten, reduziert aber die Zahl der Probleme, die überhaupt erst bis zur menschlichen Prüfung durchdringen, deutlich, weil offensichtliche Inkonsistenzen und Tonalitätsbrüche schon vorab erkannt und korrigiert werden.
9. Kulturelle Anpassung jenseits reiner Sprachübersetzung
Internationalisierung endet nicht bei korrekter Grammatik. Datumsformate, Zahlenformate, Anrede-Konventionen und sogar Farbassoziationen unterscheiden sich zwischen Zielmärkten, und ein technisch korrekt übersetzter String kann trotzdem kulturell unpassend wirken, etwa eine informelle Anrede in einem Markt, in dem geschäftliche Kommunikation traditionell formell erfolgt.
Claude kann bei der Identifikation solcher kulturellen Anpassungsbedarfe unterstützen, etwa durch Hinweise auf unübliche Anrede-Konventionen oder auf Formulierungen, die in bestimmten Märkten missverständlich wirken könnten, ersetzt aber keine Marktexpertise vor Ort bei besonders sensiblen oder rechtlich relevanten Texten wie AGB oder Widerrufsbelehrungen.
| Sprache | Anzahl Pluralformen | Beispiel-Regel | Häufiger Fehler bei Übersetzung |
|---|---|---|---|
| Deutsch | 2 (Singular, Plural) | 1 Artikel / 2 Artikel | Wörtliche statt natürliche Formulierung |
| Englisch | 2 (Singular, Plural) | 1 item / 2 items | Referenzsprache, selten fehlerhaft |
| Russisch | 3 (one, few, many) | 1, 21 / 2-4, 22-24 / 0, 5-20 | Naives Kopieren der 2-Form-Struktur |
| Arabisch | 6 (zero, one, two, few, many, other) | 0 / 1 / 2 / 3-10 / 11-99 / 100+ | Fehlende Sonderform für Dual (zwei) |
| Polnisch | 4 (one, few, many, other) | 1 / 2-4 / 5-21 / 22-24 | Verwechslung mit russischer Regel |
| Japanisch | 1 (keine Pluralunterscheidung) | 1 個 / 5 個 identisch strukturiert | Unnötige Pluralform-Logik eingebaut |
Mironsoft
KI-gestützte Entwicklung, Agenten-Workflows und Team-Prozesse
Claude oder andere KI-Tools im Team einsetzen, aber ohne klaren Workflow?
Wir richten KI-gestützte Entwicklungs-Workflows für Teams ein, von CLAUDE.md-Konventionen über Subagenten-Strategien bis zu Code-Review-Prozessen, die menschliche Kontrolle und KI-Tempo verbinden.
Workflow-Setup
CLAUDE.md, Projektkonventionen und Tool-Berechtigungen für das Team sauber einrichten.
Agenten-Strategie
Subagenten- und Automatisierungs-Workflows für wiederkehrende Entwicklungsaufgaben aufbauen.
Team-Onboarding
Entwickler im produktiven, sicheren Umgang mit KI-Coding-Assistenten schulen.
10. Zusammenfassung
Übersetzungsstrings mit Claude: Das Wichtigste auf einen Blick
Fehlende Keys
Rekursiver Abgleich der Sprachdateien deckt Lücken zuverlässig auf, ideal für CI.
Kontext zählt
Kontextgerechte statt wörtliche Übersetzung braucht Angaben zum Verwendungsort.
Pluralformen
Viele Sprachen brauchen mehr als zwei Formen, CLDR-Regeln sind der Standard.
Review-Rolle
Claude eignet sich als Vorprüfung, ersetzt aber keine muttersprachliche Endabnahme.