Skip to main content

i18n Skills

KI-Befehle zum Prüfen und Einbinden von i18n-Zeichenfolgen

Das Problem

In Ihrer Codebasis sind 500 fest codierte Zeichenfolgen über Komponenten, Vorlagen und Ansichten verteilt. Das manuelle Einbinden erfordert tagelanges, mühsames Suchen und Ersetzen. Selbst danach übersehen Sie geteilte Sätze, die im Deutschen nicht funktionieren, Plurallogik, die im Arabischen scheitert, und verwaiste Schlüssel, die Ihre Locale-Dateien aufblähen.

Manuelles i18n-Einbinden ist fehleranfällig: Geteilte Sätze werden übersehen, ternäre Operatoren beschädigen Pluralformen und in Sonderfällen bleiben Zeichenfolgen fest codiert. Diese Fehler zeigen sich erst nach der Übersetzung, wenn ihre Behebung zehnmal teurer ist.

Die Lösung

Zwei KI-Slash-Befehle übernehmen den gesamten i18n-Ablauf. Führen Sie /i18n-review aus, um Ihren Code nur lesend zu prüfen, und anschließend /i18n-wrap, um alles automatisch zu beheben. Beide Befehle erkennen Ihr Framework, verstehen das Format Ihrer Locale-Dateien und validieren Änderungen vor dem Commit.

/i18n-review

Nur lesende Prüfung, die geteilte Sätze, fehlerhafte Pluralformen, nicht eingebundene Zeichenfolgen und ungenutzte Schlüssel findet. Ändert Ihren Code nie.

/i18n-wrap

Bindet fest codierte Zeichenfolgen automatisch mit der richtigen Übersetzungsfunktion ein, erzeugt semantische Schlüssel, aktualisiert Locale-Dateien und validiert den Build.

Befehl /i18n-review

Der Prüfungsbefehl führt eine nur lesende Prüfung Ihrer Codebasis aus. Er durchsucht jede Datei nach i18n-Problemen und erstellt einen priorisierten Bericht mit genauen Dateipositionen und Lösungsvorschlägen. Ihr Code wird nie verändert.

Terminal
/i18n-review src/
/i18n-review src/ --framework=next-intl

Was geprüft wird

  • Geteilte Sätze: verkettete t()-Aufrufe, die in anderen Sprachen die Wortstellung beschädigen
  • Zu umfassendes Einbinden: technische Zeichenfolgen, CSS-Klassen, URLs und Enum-Werte, die fälschlich mit t() eingebunden wurden
  • Unzureichendes Einbinden: sichtbare UI-Zeichenfolgen wie Schaltflächenbezeichnungen, Überschriften und Fehlermeldungen bleiben fest codiert
  • Probleme mit Pluralformen: ternäre Operatoren oder Prüfungen mit === 1 statt korrekter ICU-Pluralsyntax
  • Ungenutzte Schlüssel: in Locale-Dateien definierte Übersetzungsschlüssel, auf die im Code nie verwiesen wird
  • Fest codierte Formatwerte: Datums-, Währungs- und Zahlenwerte ohne Intl-Formatierer
Der Prüfungsbefehl arbeitet vollständig nur lesend. Führen Sie ihn während der Entwicklung oder in CI/CD-Pipelines beliebig oft aus, ohne unbeabsichtigte Änderungen zu riskieren.

Befehl /i18n-wrap

Der Einbindungsbefehl versieht fest codierte Zeichenfolgen automatisch mit der richtigen Übersetzungsfunktion Ihres Frameworks. Er erkennt Ihre i18n-Bibliothek, erzeugt nach Komponente oder Funktion gruppierte semantische Schlüssel, aktualisiert Ihre Locale-Dateien und validiert, dass der Build weiterhin erfolgreich ist.

Terminal
/i18n-wrap src/components/
/i18n-wrap src/ --framework=react-i18next

Was der Befehl erledigt

  • Framework-Erkennung: Identifiziert Ihre i18n-Bibliothek und ihre Übersetzungsfunktion (t, $t, $_, gettext usw.)
  • Semantische Schlüsselerzeugung: Erstellt aussagekräftige Schlüssel wie nav.signIn und errors.notFound statt allgemeiner Bezeichnungen
  • Aktualisierung von Locale-Dateien: Fügt Ihrer Datei der Ausgangs-Locale neue Schlüssel im richtigen Format hinzu (JSON, YAML, PO usw.)
  • Build-Validierung: Führt nach dem Einbinden Ihre Build-, Lint- und Testbefehle aus, um Regressionen zu erkennen
Der Einbindungsbefehl validiert jede Änderung, indem er Ihren Build und Ihre Testsuite ausführt. Schlägt etwas fehl, setzt er die Änderungen automatisch zurück.

Unterstützte Frameworks

Beide Befehle erkennen Ihr Framework automatisch anhand Ihrer Projektabhängigkeiten. Sie können es auch ausdrücklich mit der Option --framework angeben. Hier sehen Sie die zehn unterstützten Frameworks mit ihren Übersetzungsfunktionen und Pluralformaten.

FrameworkÜbersetzungsfunktionPluralformat
react-i18nextt()key_one / key_other
next-intlt()ICU {count, plural, ...}
vue-i18n$t()Pipe syntax | singular | plural
angular i18n$localizeICU {count, plural, ...}
svelte-i18n$_()ICU {count, plural, ...}
flutter intlS.of(context)Intl.plural()
djangogettext / _()ngettext()
rails i18nt()count key
laravel__() / @langtrans_choice()
swiftNSLocalizedString.stringsdict

Installation

Kopieren Sie die Befehlsdateien in Ihr Verzeichnis .claude/commands/. Das ist alles – keine Abhängigkeiten, keine Konfiguration. Die Befehle sind einfache Markdown-Dateien, die jeder KI-Programmierassistent ausführen kann.

Terminal
mkdir -p .claude/commands
cp commands/i18n-review.md .claude/commands/
cp commands/i18n-wrap.md .claude/commands/
Dies sind standardmäßige Slash-Befehlsdateien. Sie funktionieren ohne weitere Einrichtung in Claude Code und lassen sich für andere KI-Programmierassistenten mit Unterstützung benutzerdefinierter Befehle anpassen.

Verwendungsbeispiele

React-Projekt

Prüfen Sie eine React-App mit react-i18next und binden Sie anschließend alle fest codierten Zeichenfolgen ein. Die Befehle erkennen react-i18next anhand Ihrer package.json und verwenden die richtige Funktion t() sowie das Pluralformat key_one/key_other.

React Project
# Review a React project for i18n issues
/i18n-review src/ --framework=react-i18next

# Wrap all hardcoded strings automatically
/i18n-wrap src/components/ --framework=react-i18next

# Result: t() calls inserted, keys added to en/translation.json

Django-Projekt

Prüfen Sie Django-Vorlagen und -Ansichten auf i18n-Probleme und binden Sie Zeichenfolgen anschließend mit gettext ein. Die Befehle erkennen Django anhand Ihrer settings.py und verwenden _() für einfache Zeichenfolgen sowie ngettext() für Pluralformen.

Django Project
# Review Django templates and views
/i18n-review myapp/ --framework=django

# Wrap hardcoded strings with gettext
/i18n-wrap myapp/templates/ --framework=django

# Result: _() calls inserted, .po file updated

i18n Agent jetzt testen

Legen Sie Ihre Übersetzungsdatei hier ab

JSON, YAML, PO, XML, CSV, Markdown, Properties

oder zum Auswählen klicken

Zielsprachen

Keine Registrierung erforderlichSofortiges Angebot

Häufig gestellte Fragen