MDX
KI-Übersetzung für MDX-Dateien mit Lingo.dev CLI
Was ist MDX?
MDX ist ein Format, das Markdown mit JSX kombiniert und es Ihnen ermöglicht, React-Komponenten direkt in Ihrem Markdown-Inhalt zu verwenden. Es wird häufig für Dokumentationsseiten und inhaltsreiche Webanwendungen eingesetzt.
Zum Beispiel:
---
title: "Restaurant Review: Bella Vista"
description: "Our dining experience at the new Italian restaurant downtown"
author: "not-localized-author"
---
# Dinner at Bella Vista
We finally tried the new Italian restaurant that opened last month on Main Street.
## The Atmosphere
The restaurant has a warm, inviting atmosphere with:
- **Dim lighting** that creates an intimate setting
- *Soft jazz music* playing in the background
Was ist Lingo.dev CLI?
Lingo.dev CLI ist ein kostenloses Open-Source-CLI-Tool zur Übersetzung von Apps und Inhalten mit KI. Es wurde entwickelt, um herkömmliche Translation-Management-Software zu ersetzen und sich gleichzeitig in bestehende Pipelines zu integrieren.
Weitere Informationen finden Sie unter Übersicht.
Über diesen Leitfaden
Dieser Leitfaden erklärt, wie Sie MDX-Dateien mit Lingo.dev CLI übersetzen.
Sie lernen, wie Sie:
- Ein Projekt von Grund auf erstellen
- Eine Übersetzungspipeline konfigurieren
- Übersetzungen mit KI generieren
Voraussetzungen
Um Lingo.dev CLI zu verwenden, stellen Sie sicher, dass Node.js v18+ installiert ist:
❯ node -v
v22.17.0
Schritt 1. Projekt einrichten
Erstellen Sie im Verzeichnis Ihres Projekts eine i18n.json Datei:
{
"$schema": "https://lingo.dev/schema/i18n.json",
"version": "1.10",
"locale": {
"source": "en",
"targets": ["es"]
},
"buckets": {}
}
Diese Datei definiert das Verhalten der Übersetzungspipeline, einschließlich der Sprachen, zwischen denen übersetzt werden soll, und wo sich die lokalisierbaren Inhalte im Dateisystem befinden.
Weitere Informationen zu den verfügbaren Eigenschaften finden Sie unter i18n.json.
Schritt 2. Quellsprache konfigurieren
Die Quellsprache ist die ursprüngliche Sprache und Region, in der Ihr Inhalt verfasst wurde. Um die Quellsprache zu konfigurieren, setzen Sie die Eigenschaft locale.source in der i18n.json Datei:
{
"$schema": "https://lingo.dev/schema/i18n.json",
"version": "1.10",
"locale": {
"source": "en",
"targets": ["es"]
},
"buckets": {}
}
Die Quellsprache muss als BCP 47 Language Tag angegeben werden.
Eine vollständige Liste der von der Lingo.dev CLI unterstützten Locale-Codes finden Sie unter Unterstützte Locale-Codes.
Schritt 3. Konfigurieren der Zielsprachen
Die Zielsprachen sind die Sprachen und Regionen, in die Sie Ihre Inhalte übersetzen möchten. Um die Zielsprachen zu konfigurieren, setzen Sie die Eigenschaft locale.targets in der Datei i18n.json:
{
"$schema": "https://lingo.dev/schema/i18n.json",
"version": "1.10",
"locale": {
"source": "en",
"targets": ["es"]
},
"buckets": {}
}
Schritt 4. Erstellen des Quellinhalts
Falls noch nicht geschehen, erstellen Sie eine oder mehrere MDX-Dateien, die den zu übersetzenden Inhalt enthalten. Diese Dateien müssen sich an einem Pfad befinden, der die Quellsprache irgendwo im Pfad enthält (z. B. als Verzeichnisname wie en/ oder als Teil des Dateinamens wie messages.en.mdx).
Schritt 5. Erstellen eines Buckets
-
Fügen Sie in der Datei
i18n.jsonein Objekt"mdx"zum Objektbucketshinzu:{ "$schema": "https://lingo.dev/schema/i18n.json", "version": "1.10", "locale": { "source": "en", "targets": ["es"] }, "buckets": { "mdx": {} } } -
Definieren Sie im Objekt
"mdx"ein Array aus einem oder mehrerenincludeMustern:{ "$schema": "https://lingo.dev/schema/i18n.json", "version": "1.10", "locale": { "source": "en", "targets": ["es"] }, "buckets": { "mdx": { "include": ["./[locale]/example.mdx"] } } }Diese Muster definieren, welche Dateien übersetzt werden sollen.
Die Muster selbst:
- müssen
[locale]als Platzhalter für die konfigurierte Locale enthalten - können auf Dateipfade verweisen (z. B.
"[locale]/blog.mdx") - können Sternchen als Wildcard-Platzhalter verwenden (z. B.
"[locale]/*.mdx")
Rekursive Glob-Muster (z. B.
**/*.mdx) werden nicht unterstützt. - müssen
Schritt 6. Konfigurieren eines LLM
Die Lingo.dev CLI verwendet Large Language Models (LLMs), um Inhalte mit KI zu übersetzen. Um eines dieser Modelle zu verwenden, benötigen Sie einen API-Schlüssel von einem unterstützten Anbieter.
Um so schnell wie möglich einsatzbereit zu sein, empfehlen wir die Verwendung der Lingo.dev Engine – unserer eigenen, gehosteten Plattform, die 10.000 Tokens kostenlose monatliche Nutzung bietet:
-
Führen Sie den folgenden Befehl aus:
npx lingo.dev@latest loginDies öffnet Ihren Standard-Browser und fordert Sie zur Authentifizierung auf.
-
Folgen Sie den Anweisungen.
Schritt 7. Übersetzungen generieren
Führen Sie im Verzeichnis, das die i18n.jsonDatei enthält, folgenden Befehl aus:
npx lingo.dev@latest run
Dieser Befehl:
- Liest die
i18n.jsonDatei. - Findet die Dateien, die übersetzt werden müssen.
- Extrahiert den übersetzbaren Inhalt aus den Dateien.
- Verwendet das konfigurierte LLM, um den extrahierten Inhalt zu übersetzen.
- Schreibt den übersetzten Inhalt zurück in das Dateisystem.
Beim ersten Generieren von Übersetzungen wird eine i18n.lockDatei erstellt. Diese Datei verfolgt, welcher Inhalt übersetzt wurde, und verhindert unnötige erneute Übersetzungen bei nachfolgenden Durchläufen.
Beispiel
en/example.mdx
---
title: "Restaurant Review: Bella Vista"
description: "Our dining experience at the new Italian restaurant downtown"
author: "not-localized-author"
published: "2024-03-15"
rating: 4.5
locked_key_1: "This value should remain unchanged in all locales"
ignored_key_1: "This field should not appear in target locales"
---
# Dinner at Bella Vista
We finally tried the new Italian restaurant that opened last month on Main Street. Here's our honest review.
## The Atmosphere
The restaurant has a warm, inviting atmosphere with:
- **Dim lighting** that creates an intimate setting
- *Soft jazz music* playing in the background
- Fresh flowers on every table
es/example.mdx
---
title: "Reseña de Restaurante: Bella Vista"
description: "Nuestra experiencia gastronómica en el nuevo restaurante italiano del centro"
author: "not-localized-author"
published: "2024-03-15"
rating: 4.5
locked_key_1: "This value should remain unchanged in all locales"
---
# Cena en Bella Vista
Finalmente probamos el nuevo restaurante italiano que abrió el mes pasado en Main Street. Esta es nuestra reseña honesta.
## El Ambiente
El restaurante tiene un ambiente cálido y acogedor con:
- **Iluminación tenue** que crea un ambiente íntimo
- *Música de jazz suave* sonando de fondo
- Flores frescas en cada mesa
i18n.json
{
"version": "1.10",
"locale": {
"source": "en",
"targets": ["es"]
},
"buckets": {
"mdx": {
"include": ["./[locale]/example.mdx"],
"lockedKeys": ["locked_key_1"],
"lockedPatterns": ["pattern_1"]
}
},
"$schema": "https://lingo.dev/schema/i18n.json"
}
i18n.lock
version: 1
checksums:
0d5b5aa6d2b9937d47fd63868ef9e9f6:
meta/title: a4bdd0dee24f8318f3300dcae130a353
meta/description: 609213841f122e494f62262618ee4761
meta/author: f3f7164b5963b4da6cd31a2ec0251630
content/0: 8a8520492d23503da5691602e60bd22a
content/1: 1fc859854cda505b2a94a04c8b09ab43
content/2: 8add667f2a1d5d791a64b50bde54fa59
content/3: e6e34c4c92eda512ec209266abe8e074
content/4: 07f1896ad050b9606d7674f70d847818
content/5: bd4d40a4f0cc92ac8a880c8d9ce8b43d
content/6: 3036a07a887121ea080427d84fc80912
content/7: f555318416c5c5388c1d961ef02f5955
content/8: 90e02688ab103de60e42c70ece7efc4d
content/9: 8c5be3cd002a3a194c991821e0182e08
content/10: 3495801a7461ac5ea8d78369873a5409
content/11: d444739ce3d48afb7976067c67149a9e
content/12: 5f02c0a3b6385f80bdd08cf7e2d8c04d
content/13: 0a15fd446b87d907f58c303aece0882b
content/14: 778ed0aa1f81768280a23afe559c55f7
content/15: fa244af2d8e558d6c3644ff8c1a64562
content/16: 14f593e7cf3b3df84a21e17db318912e
content/17: 5f42d26a42aa29be063019eea27ad07c
content/18: 48bb7e89e72d68d6de12f5cdac64fc18
content/19: 1639b9ef57bf363e04293e27d1c13952
content/20: bb1c8d22064f7af4879c69d444e6e769
content/21: 52f9d6beaa85591f77811e1162d756c4