Lingo.dev + .csv (Données)

Lingo.dev CLI traduit les fichiers CSV ayant une structure spécifique. Il met à jour le fichier CSV fourni en ajoutant des colonnes avec des traductions pour chaque locale cible. Le CLI préserve exactement le format CSV et les délimiteurs, gère l'UTF-8 et divers encodages de caractères en toute sécurité, et fonctionne parfaitement avec Excel, Google Sheets et les importations de bases de données.

Comment fonctionne la traduction CSV

Les fichiers CSV doivent avoir la structure suivante :

  • Première colonne nommée KEY
  • Une colonne pour la locale source (ex. en)

Le CLI étend le fichier CSV fourni pour inclure des colonnes pour chaque locale cible (ex. es, fr). Les traductions sont remplies pour chaque locale cible, tandis que le contenu original est préservé.

Exemple : Source et Sortie

Fichier d'entrée (source en anglais) :

KEY,en
dashboard.title,Dashboard
greeting.message,Hello world!
button.label,Submit

Fichier de sortie (après traduction en espagnol et français) :

KEY,en,es,fr
dashboard.title,Dashboard,Panel de control,Tableau de bord
greeting.message,Hello world!,¡Hola mundo!,Bonjour le monde!
button.label,Submit,Enviar,Soumettre
  • La colonne KEY est préservée.
  • La colonne de la locale source (en) reste inchangée.
  • De nouvelles colonnes pour chaque locale cible (es, fr) sont ajoutées, avec les traductions remplies.

Configuration rapide

Pour configurer la traduction CSV, ajoutez un bucket pour vos fichiers CSV dans i18n.json :

{
  "locale": {
    "source": "en",
    "targets": ["es", "fr"]
  },
  "buckets": {
    "csv": {
      "include": ["i18n/data.csv"]
    }
  }
}

Traduire des données CSV

npx lingo.dev@latest i18n

Le CLI préserve la structure CSV, les en-têtes et les types de données tout en traduisant le contenu textuel dans les colonnes cibles.

Fonctionnalités avancées

Support des délimiteurs personnalisés

Fonctionne avec différents dialectes CSV :

  • Séparé par des virgules : value1,value2,value3
  • Séparé par des points-virgules : value1;value2;value3
  • Séparé par des tabulations : value1\tvalue2\tvalue3

Configuration avancée

Fichiers CSV multiples

"csv": {
  "include": [
    "i18n/data.csv",
    "content/static/*.csv"
  ]
}