Lingo.dev + .jsonc (JSON mit Kommentaren)

Lingo.dev CLI übersetzt JSONC (JSON mit Kommentaren) Dateien und unterstützt alle Standard-JSON-Funktionen sowie Kommentare und nachfolgende Kommas. Die CLI extrahiert Kommentare als Übersetzungshinweise, bewahrt die exakte Formatierung, behandelt verschachtelte Strukturen intelligent und verarbeitet aus Kostengründen nur modifizierte Inhalte.

Schnelle Einrichtung

Erstellen Sie eine i18n.json Konfigurationsdatei:

{
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de"]
  },
  "buckets": {
    "jsonc": {
      "include": ["locales/[locale].jsonc"]
    }
  }
}

Hinweis: [locale] ist ein Platzhalter, der wörtlich in der Konfiguration verbleiben sollte, da er während der CLI-Ausführung durch die tatsächliche Locale ersetzt wird.

Alles übersetzen

npx lingo.dev@latest i18n

Verarbeitet automatisch verschachtelte Strukturen, extrahiert Kommentare als Übersetzungshinweise und aktualisiert nur geänderte Inhalte.

Kommentarbasierte Übersetzungshinweise

Der Hauptvorteil von JSONC ist die Verwendung von Kommentaren, um Übersetzungskontext bereitzustellen:

{
  // Dieser Kommentar liefert Kontext für die Begrüßung
  "greeting": "Hello, world!",
  "button": "Click me" /* Dies erklärt den Zweck des Buttons */,
  /*
   * Mehrzeiliger Kommentar für komplexen Kontext
   * erklärt kulturelle Nuancen
   */
  "welcome": "Welcome to our app"
}

Kommentare werden automatisch als Hinweise extrahiert, um die Übersetzungsqualität zu verbessern und den KI-Übersetzern Kontext zu liefern.

Intelligente Strukturerhaltung

Behält komplexe Hierarchien bei und unterstützt nachfolgende Kommas:

{
  "nav": {
    "home": "Home", // Navigationselement
    "about": {
      "team": "Our Team" // Verschachtelte Navigation
    },
  },
  "items": {
    "one": "{{count}} item",
    "other": "{{count}} items", // Pluralisierungsunterstützung
  },
}

Erweiterte Konfiguration

Dateien ausschließen

"jsonc": {
  "include": ["locales/[locale]/*.jsonc"],
  "exclude": ["locales/[locale]/config.jsonc"]
}

Technische Schlüssel sperren

"jsonc": {
  "lockedKeys": ["app/version", "settings/apiKey"]
}

Verwenden Sie Schrägstriche (/) für verschachtelte Schlüsselpfade oder Sternchen (*), um mehrere Schlüsselpfade abzugleichen.