Comment préparer un fichier CSV pour la traduction
Un fichier CSV qui se traduit proprement possède des clés stables, des colonnes de texte source claires et un encodage UTF-8 correct. Ce guide couvre chaque étape de préparation. Une fois votre CSV prêt, vous pouvez le traduire en 3 étapes sur PTC (Private Translation Cloud). Pour un aperçu du service CSV autonome, consultez la page traduire des fichiers CSV en ligne avec l'IA.
Le CSV est le format de traduction du plus petit dénominateur commun. Chaque outil de feuille de calcul, chaque plateforme d'e-commerce, chaque export d'analyse parle le CSV. Cette flexibilité est à double tranchant. Un CSV qui « semble correct » dans Excel peut être impossible à traduire proprement en raison de l'ambiguïté des colonnes, de clés manquantes ou de problèmes d'encodage. Ce guide détaille ce qui rend un CSV prêt pour la traduction.
À quoi ressemble un CSV prêt pour la traduction
Un CSV prêt pour la traduction est un fichier où :
- Chaque chaîne traduisible possède une clé stable et unique.
- La colonne de la langue source est clairement identifiée.
- Les colonnes de langues cibles existent déjà (une colonne par langue) ou un CSV par langue cible est produit.
- Les colonnes d'identifiants (SKU, ID, URL d'image, prix) sont manifestement non traduisibles.
- Le fichier est en UTF-8 valide sans ambiguïté d'encodage.
Deux formats courants :
Format large (une colonne par langue) :
key,en,es,fr,de
welcome,Welcome,,,
cart.empty,Your cart is empty,,,
cart.items_one,"You have %{count} item",,,
Format long (une ligne par chaîne, un fichier par langue) :
key,source
welcome,Welcome
cart.empty,Your cart is empty
cart.items_one,"You have %{count} item"
Les deux fonctionnent. PTC lit l'un ou l'autre. Choisissez celui qui s'adapte à votre pipeline existant.
Choisissez des colonnes lisibles par les traducteurs et PTC
Faites de la première ligne l'en-tête. Utilisez des noms de colonnes descriptifs et simples comme key, source_text et context. Votre outil de traduction et vos éventuels réviseurs humains sauront alors exactement ce que contient chaque colonne.
Colonnes obligatoires. Tout CSV prêt pour la traduction nécessite au minimum une colonne key et une colonne de texte source.
- La colonne
keycontient un identifiant unique pour chaque chaîne. Votre application l'utilise pour faire correspondre la bonne traduction au moment de l'exécution. Utilisez une convention de nommage cohérente — lettres minuscules, tirets bas et points uniquement. Formats courants :button.submit,error.invalid_login,onboarding.welcome_message. Ne changez jamais une clé après le début de la traduction. Modifier une clé crée une nouvelle chaîne et rend la traduction existante orpheline. - La colonne de texte source contient le texte original dans votre langue de base.
Optionnel mais utile : une colonne context. Des chaînes courtes comme « Save » ou « Back » peuvent signifier différentes choses selon l'endroit où elles apparaissent dans votre interface. Une brève note indique au traducteur (ou à l'IA) à quoi sert la chaîne :
key,source_text,context
button.save,Save,Document editor toolbar
checkout.button.save,Save,Checkout address form
Pour les fichiers volumineux, une colonne namespace ou group vous aide à organiser les chaînes par fonctionnalité ou section.
Colonnes de langue. Si votre flux de travail conserve la source et la cible dans le même fichier, ajoutez une colonne par langue cible en utilisant les codes de paramètres régionaux (locales) comme en-tête. Utilisez es_ES pour l'espagnol (Espagne), fr_FR pour le français (France), pt_BR pour le portugais (Brésil).
Utilisez des clés à points pour la hiérarchie. cart.items.one et cart.items.other se regroupent naturellement. Évitez les espaces dans les clés.
Séparez les colonnes d'identifiants. Si votre CSV est un catalogue de produits, les colonnes sku, handle, price et image_url doivent être manifestement non traduisibles par leurs seuls noms. Ne les noyez pas dans une colonne générique metadata.
Un CSV par périmètre logique. Ne mélangez pas les chaînes de l'interface d'administration avec le texte marketing dans le même fichier. Différents périmètres ont des tons différents. La voix de marque de PTC fonctionne mieux lorsque chaque projet couvre un ensemble cohérent de chaînes.
Marquez les espaces réservés pour que PTC les préserve d'une langue à l'autre
Les espaces réservés sont des jetons à l'intérieur d'une chaîne qui sont remplacés au moment de l'exécution. %s, %d, {name}, {{count}}, %{currency}. PTC préserve les espaces réservés textuellement et ne traduit jamais le jeton lui-même.
key,source_text
greeting,"Hello, %{name}!"
cart.total,"Total: %{currency}%{amount}"
notification,"You have %{count} new messages"
Conventions que PTC reconnaît dès la première utilisation :
%s,%d,%f,%1$s,%2$d— style printf (gettext, Rails, Java).{name},{count},{0}— Pythonstr.format, .NET, syntaxe d'index ICU.{{name}},{{count}}— i18next, Mustache, Handlebars.%{name},%{count}— Rails I18n, Ruby.
Si votre texte source inclut des balises HTML (<strong>, <br>, <a href="">), traitez-les de la même manière que les espaces réservés. PTC les détecte et les préserve dans tous les formats, à la bonne position dans chaque langue cible. Ne traduisez jamais la balise elle-même.
Si vous utilisez une convention personnalisée (par exemple, [[token]]), déclarez-la dans le glossaire du projet PTC et PTC la respectera sur chaque ligne.
Encodez les formes plurielles sur des lignes séparées pour que chaque langue reçoive les bonnes formes
La plupart des langues ont plus de deux formes de pluriel. Beaucoup ont des règles imprévisibles pour un anglophone. Le polonais a one / few / many / other. L'arabe a six formes. Le japonais n'en a qu'une (pas de distinction de pluriel). Un outil de traduction qui ne stocke que le singulier et le pluriel produira un résultat incorrect pour ces langues.
Encodez les pluriels sur des lignes séparées avec une convention de suffixe :
key,source_text,context
cart.items.zero,Your cart is empty,Zero state
cart.items.one,"You have {count} item in your cart.",Singular: count = 1
cart.items.other,"You have {count} items in your cart.",Plural: count > 1
PTC lit les suffixes .zero, .one, .few, .many et .other (catégories de pluriel CLDR) et génère les bonnes catégories de pluriel pour chaque langue cible.
Ne combinez pas les formes plurielles dans une seule chaîne avec des barres obliques ou des parenthèses, comme "You have {count} item(s) in your cart.". Cette approche n'est pas traduisible et rompt la grammaire de la plupart des langues.
Échappez les caractères spéciaux pour que l'analyseur CSV ne casse pas les lignes
Règles d'échappement CSV (RFC 4180) :
- Virgules à l'intérieur d'un champ : entourez le champ de guillemets doubles, sinon l'analyseur divisera votre chaîne en plusieurs cellules.
key,source_text
intro,"Welcome to our store, where every product matters"
- Guillemets doubles littéraux : échappez-les en les doublant.
key,source_text
quote,"He said ""hello"" and waved"
- Sauts de ligne à l'intérieur d'un champ : OK si le champ est entre guillemets.
key,source_text
address,"123 Main Street
Springfield, IL 62701"
- Guillemets courbes : utilisez toujours des guillemets droits (
") plutôt que des guillemets courbes (“”). Les analyseurs CSV ne reconnaissent pas les guillemets courbes et généreront des erreurs de formatage. - Espaces de fin : supprimez-les de toutes les cellules avant l'envoi. Ils sont invisibles dans la plupart des éditeurs de feuilles de calcul mais provoquent des échecs de correspondance de chaînes dans votre application.
Pour le HTML ou le balisage à l'intérieur d'une cellule, mettez le champ entre guillemets et laissez PTC traduire uniquement le texte :
key,source_text
disclaimer,"<p>By signing up, you agree to our <a href=""/terms"">terms</a>.</p>"
PTC analyse le HTML, traduit uniquement le texte lisible par l'homme et préserve chaque balise, attribut et URL.
Enregistrez en UTF-8 pour éviter les caractères accentués corrompus
L'encodage est la cause la plus fréquente de problèmes de traduction CSV. Sans UTF-8, les caractères en dehors de l'alphabet latin de base peuvent s'afficher sous forme de ???, de carrés vides ou de texte illisible dans votre application.
- Enregistrez votre CSV en UTF-8 (avec ou sans BOM). La plupart des outils modernes le font par défaut. Historiquement, Excel sur Windows ne le faisait pas.
- N'utilisez pas les encodages Windows-1252, ISO-8859-1 ou « ANSI ». Les caractères accentués dans les langues cibles seront corrompus.
- En cas de doute, ouvrez le CSV dans un éditeur de texte comme VS Code ou Notepad++ et vérifiez l'indicateur d'encodage. Réenregistrez en UTF-8 si nécessaire.
Conseils spécifiques à Excel :
- Excel pour Mac utilise l'UTF-8 par défaut. Aucune action requise.
- Excel pour Windows : choisissez Fichier > Enregistrer sous et sélectionnez CSV UTF-8 (délimité par des virgules) (*.csv) dans le menu déroulant des formats. Pas le simple « CSV (délimité par des virgules) ».
- Google Sheets : Fichier > Télécharger > Valeurs séparées par des virgules (.csv). UTF-8 par défaut.
Pour les fichiers CSV sources déjà dans le mauvais encodage, convertissez-les avec iconv :
iconv -f WINDOWS-1252 -t UTF-8 source.csv > source-utf8.csv
Exemple concret : un CSV d'e-commerce complet que PTC traduit sans préparation
Un CSV complet et bien préparé pour un site d'e-commerce :
key,source_text,context
header.welcome,"Welcome to {{shopName}}",Top of page
header.cart.zero,"Your cart is empty",Cart icon - zero state
header.cart.one,"{count} item in cart",Cart icon - singular
header.cart.other,"{count} items in cart",Cart icon - plural
product.add_to_cart,"Add to Cart",Product page CTA
product.out_of_stock,"Out of Stock",Product availability badge
product.price,"{currency}{amount}",Price display
checkout.shipping,"Shipping address",Checkout step heading
checkout.payment,"Payment method",Checkout step heading
checkout.confirm,"Place Order",Final checkout button
errors.email.required,"Email is required",Form validation
errors.email.invalid,"Please enter a valid email address",Form validation
errors.card.declined,"Your card was declined. Please try a different payment method.",Checkout error
promo.tagline,"Sale ends Sunday, grab your deal!",Promo banner - contains comma
tooltip.save,"Click ""Save"" to keep your changes.",Tooltip - contains quotes
disclaimer,"<p>By placing this order, you agree to our <a href=""/terms"">terms and conditions</a>.</p>",Footer legal
Ce fichier :
- Possède des colonnes
key,source_textetcontextclaires. - Utilise des clés hiérarchiques à points.
- Gère les espaces réservés (
{{shopName}},{count},{currency},{amount}). - Gère les pluriels avec les suffixes
.zero/.one/.other. - Échappe correctement le HTML et les guillemets.
- Est enregistré en UTF-8.
PTC traduit cela directement. Aucune préparation supplémentaire n'est nécessaire.
Liste des meilleures pratiques pour la traduction CSV
- Utilisez un outil de traduction dédié. Évitez de traduire des fichiers CSV manuellement dans un éditeur de texte ou un tableur. Les outils dédiés comme PTC préservent la structure de votre fichier, gèrent correctement les espaces réservés et maintiennent vos clés intactes.
- Utilisez des virgules standard comme délimiteur. Certains outils utilisent des points-virgules par défaut. Les virgules sont les plus largement prises en charge et les moins susceptibles de causer des erreurs d'importation.
- Conservez une seule chaîne par ligne. Combiner plusieurs chaînes sur une seule ligne rend les traductions ingérables et bloque la plupart des outils de traduction.
- Isolez les colonnes traduisibles. Séparez les colonnes nécessitant une traduction de celles qui doivent rester inchangées (ID numériques, SKU, paramètres techniques). Cela réduit le risque qu'un outil ou un traducteur modifie accidentellement des données qui ne devraient pas l'être.
- Évitez les cellules fusionnées et le formatage de feuille de calcul. Le CSV est du texte brut. Tout formatage appliqué via un logiciel de tableur est supprimé lors du traitement du fichier.
- Supprimez les colonnes et métadonnées inutiles. N'incluez que les colonnes dont votre outil de traduction a besoin.
- Testez d'abord avec un petit échantillon. Avant de soumettre un fichier volumineux à la traduction, testez avec un petit échantillon pour détecter tôt les problèmes structurels ou d'encodage.
- Validez votre fichier avant de le téléverser. Vérifiez que chaque ligne possède une clé unique sans doublons, qu'aucune clé ne contient d'espaces ou de caractères spéciaux, et qu'il n'y a pas de lignes cassées.
- Gardez une sauvegarde. Conservez toujours une copie de votre CSV original avant de l'envoyer en traduction.
Relecture visuelle de la traduction du catalogue ou de l'application rendus
Une fois que PTC a traduit le CSV, les chaînes s'affichent dans l'élément qui consomme le CSV. Cela concerne votre boutique, votre application et votre tableau de bord. Un titre de produit traduit qui tient dans le fichier peut provoquer un débordement dans une mise en page par cartes. Un bouton de commande en français peut employer un terme inapproprié pour traduire « Place Order ». Une longue adresse allemande peut casser une colonne à largeur fixe dans une facture imprimée.
AI Visual QA détecte ces problèmes. Pour les boutiques et les tableaux de bord (basés sur un navigateur), installez l'extension de navigateur PTC et enregistrez un parcours guidé de votre boutique. PTC le rejoue dans chaque langue cible et corrige automatiquement les problèmes de mise en page et de contexte dans le CSV. Pour les applications natives qui consomment le CSV, téléversez plutôt des captures d'écran des écrans concernés.
Traduisez les annonces de lancement de produits et les e-mails aux fournisseurs
Les annonces de lancement de produits et les e-mails destinés aux clients concernant les mises à jour du catalogue vivent en dehors du CSV. La fonctionnalité Copier-coller pour traduire de PTC gère ces textes dans le même projet, en utilisant le même glossaire et la même voix de marque que les traductions de votre catalogue.
Traduisez les imports massifs au fur et à mesure avec l'API PTC
Les imports de catalogues massifs nécessitant une traduction dès leur arrivée peuvent passer par l' API REST de PTC avec authentification par jeton Bearer, en utilisant le même glossaire et la même voix de marque que vos traductions CSV.
Traduisez maintenant votre CSV avec PTC
Une fois votre CSV préparé, traduisez-le en 3 étapes :
- Téléversez votre CSV et choisissez les langues cibles.
- PTC traduit tout en préservant chaque colonne, clé et espace réservé.
- Téléchargez les fichiers CSV traduits et importez-les là où ils doivent être.
Commencez votre essai gratuit de 30 jours — 20.000 mots dans 2 langues, sans carte bancaire.