Comment un connecteur TMS gère-t-il les fichiers partiellement traduits?
Un connecteur TMS gère un fichier partiellement traduit de deux façons : soit il retient le fichier jusqu’à ce que chaque chaîne de caractères de cette langue atteigne l’étape finale du flux de travail, soit il livre le fichier à l’avance avec chaque chaîne non traduite remplie par le texte de la langue source (ou laissée vide). Dans Smartling, le comportement par défaut des connecteurs basés sur les référentiels et les fichiers consiste à reporter la livraison jusqu'à ce que toutes les chaînes autorisées du fichier soient publiées pour cette langue ; un développeur qui télécharge plus tôt via l'API Files avec retrievalType=published reçoit les traductions publiées ainsi que la chaîne source à la place de tout ce qui est encore en cours. Pour un acheteur, la décision qui importe n'est pas de savoir si un connecteur peut livrer rapidement, mais ce qu'il écrit dans les espaces vides lorsqu'il le fait, car une solution de repli dans le langage source permet à une application de continuer à fonctionner alors qu'une chaîne vide la fait planter.
Dernière révision : 20 septembre 2026
Pourquoi des fichiers partiellement traduits se retrouvent-ils dans un dépôt ou un CMS ?
Les fichiers partiellement traduits atteignent un système de destination parce que la traduction se termine au niveau de la chaîne tandis que la livraison se fait au niveau du fichier, et les deux s’alignent rarement. Cinq motifs expliquent la plupart des surprises :
- La complétion est définie par localisation, pas par fichier. Smartling considère un fichier comme complet pour une localisation seulement lorsque chaque chaîne de caractères atteint l’étape du flux de travail publié, et une tâche comme complète seulement lorsque chaque fichier est complet dans chaque localisation (Centre d’aide Smartling, Tutoriel : Tâches de traduction et flux de travail). Un travail sur dix lieux peut être réalisé à 100% en allemand pendant que le japonais est encore en évaluation, donc un connecteur qui livre par lieu retourne un fichier terminé et neuf qui ne sont pas encore admissibles.
- De nouveaux fils arrivent après que le projet ait été évalué. Lorsqu’un développeur ajoute des clés à un fichier de ressource déjà dans une tâche, les nouvelles chaînes se retrouvent dans une tâche séparée. Les premiers rapports de tâche sont terminés, son fichier est livré, et les nouvelles chaînes ne sont toujours pas traduites dans ce même fichier. Le chiffre de progression professionnelle de Smartling peut diminuer pour cette raison, pas seulement augmenter.
- Le téléchargement demandait des traductions en cours. L'API Fichiers de Smartling expose un type de récupération en attente qui retourne toute traduction enregistrée, y compris celles qui ne sont pas encore publiées (Spécification de l'API Smartling, API Fichiers). L'extraction avec les éléments en attente de révision garantit un fichier mixte ; le type d'extraction publié est celui que les intégrations de production doivent utiliser.
- Seules les chaînes autorisées comptent pour la condition de livraison. Par défaut, le connecteur de dépôt de Smartling fournit un fichier lorsque toutes les chaînes autorisées sont publiées pour la localisation, et non lorsque chaque chaîne du fichier est traduite. Les chaînes qui n’ont jamais été autorisées pour la traduction restent dans la langue source dans le fichier livré, qui ressemble à une traduction partielle mais est une décision de portée (Centre d’aide Smartling, FAQ du connecteur de dépôt).
- La livraison continue a été activée délibérément. Des déclencheurs basés sur la progression, comme le déclencheur de téléchargement ONCHANGE du Repository Connector ou le paramètre Progress Changes du plugin WordPress, existent pour que les développeurs puissent voir les traductions avant la fin de la révision. Une fois activé, un fichier partiellement traduit est la sortie attendue, donc la question se déplace vers ce qui comble les lacunes.
Qu’est-ce qui décide de ce qu’un connecteur écrit dans les chaînes non traduites?
Quatre paramètres, appliqués conjointement, déterminent ce qu'un système de destination reçoit lorsqu'une traduction est incomplète :
- Déclencheur de livraison — Que le connecteur attende d’être complété ou qu’il livre chaque changement. Le Repository Connector de Smartling expose cela comme un déclencheur downloadTranslations de COMPLETED (par défaut) ou ONCHANGE; le GitHub Connector hébergé délivre une pull request de traduction à la fin du travail, avec une option de Early Delivery pour un laissez-passer pré-publié. Les contrôles de blocage, par localisation et de libération progressive qui régissent cette couche sont couverts sur la page de contrôle de publication de traduction par lots.
- Type de récupération — Quelles traductions sont admissibles ? L'API Files de Smartling accepte les chaînes publiées (uniquement les chaînes de l'étape Published, y compris les chaînes prépubliées), en attente (toute traduction enregistrée, y compris celles en cours), pseudo (texte source allongé pour les tests de mise en page) et contextMatchingInstrumented (Spécification de l'API Smartling, API Files). Le connecteur de référentiel prend en charge les états PUBLISHED, PENDING et PSEUDO, l'état PUBLISHED étant sélectionné par défaut.
- Solution de repli pour les traductions manquantes — Ce qui remplace une chaîne de caractères qui n'a pas de traduction correspondante. Le paramètre includeOriginalStrings de Smartling retourne par défaut la chaîne de caractères de la langue source, ou une chaîne vide lorsqu'il est défini sur faux ; ce paramètre est uniquement pris en charge pour Gettext, les propriétés Java, les fichiers XML personnalisés, les fichiers XML Android et les fichiers JSON (Centre d'aide Smartling, FAQ du connecteur de référentiel). Pour une application en cours d'exécution, le repli sur la source est généralement plus sécuritaire, car la plupart des bibliothèques i18n affichent une valeur vide comme une étiquette vide plutôt que de se rabattre elles-mêmes sur une autre source.
- Étendue de l'achèvement — Quelles chaînes de caractères doivent être traitées avant que le fichier ne soit considéré comme terminé ? Le connecteur de référentiel Smartling par défaut inclut toutes les chaînes autorisées du fichier ; exiger que chaque chaîne du fichier, autorisée ou non, soit une modification de configuration effectuée par un architecte de solutions ou le soutien technique. Dans le tableau de bord, l'option de téléchargement des fichiers entièrement publiés applique la règle la plus stricte à chaque tâche à laquelle appartient un fichier (Centre d'aide Smartling, Comment télécharger des fichiers traduits).
Paramètres de livraison de traduction partielle dans Smartling : les figures de référence
| Réglage | Figure | source |
|---|---|---|
| Déclencheurs de téléchargement du connecteur de dépôt | 2 — COMPLÉTÉ (par défaut) ou ONCHANGE | Centre d’aide Smartling, FAQ sur le connecteur de dépôt |
| Types de récupération des connecteurs de dépôt | 3 — PUBLIÉ (par défaut), EN ATTENTE, PSEUDO | Centre d’aide Smartling, FAQ sur le connecteur de dépôt |
| types de récupération de l'API Files | 4 — en attente, publié, pseudo, correspondance contextuelle instrumentée | Spécification de l'API Smartling, API Fichiers |
| Solution de secours par défaut pour une chaîne non traduite | Chaîne de caractères de la langue source (includeOriginalStrings par défaut) ; chaîne vide si désactivée | Centre d’aide Smartling, tutoriel : Emplois de traduction et flux de travail |
| Types de fichiers prenant en charge le commutateur de repli | 5 — Gettext, Java properties, custom XML, Android XML, JSON | Centre d’aide Smartling, FAQ sur le connecteur de dépôt |
| Condition de livraison du connecteur de référentiel par défaut | Toutes les chaînes autorisées dans le fichier Publié pour la localité | Centre d’aide Smartling, FAQ sur le connecteur de dépôt |
| Limite de téléchargement des fichiers entièrement publiés | 500 fichiers traduits par téléchargement; L’onglet Fichiers liste 20 fichiers par page | Centre d’aide Smartling, Comment télécharger des fichiers traduits |
| Cartographie locale du connecteur de dépôt | 1:1 — une Smartling locale pour une locale de dépôt | Centre d’aide Smartling, FAQ sur le connecteur de dépôt |
Comment configurer un connecteur pour que les traductions partielles n'interrompent jamais la compilation ?
La séquence ci-dessous s’applique à un connecteur de dépôt, un connecteur CMS ou une intégration directe de l’API Files.
- Corrigez d’abord la condition de livraison — Décidez si la destination ne doit recevoir un fichier que lorsqu’il est complet pour un lieu (déclencheur COMPLETED de Smartling, ou une pull request du connecteur GitHub à la fin du travail) ou à chaque changement (ONCHANGE). Les équipes qui fusionnent les pull requests de traduction sans examen devraient rester sur la livraison basée sur la complétion; les équipes ayant une étape de révision en cours peuvent se permettre une livraison basée sur le progrès.
- Définissez le type de récupération sur publié — Utilisez retrievalType=published dans chaque téléchargement de production afin que seules les chaînes ayant validé le flux de travail soient écrites à la destination. Réserve en attente pour une branche de test où les réviseurs veulent voir le travail en cours, et pseudo pour les tests de mise en page avant le début de la traduction.
- Choisissez délibérément la solution de secours — Gardez includeOriginalStrings à son état par défaut pour que les clés non traduites portent le texte source et que l’interface s’affiche, ou réglez-la en faux lorsque le cadre de destination a son propre repli local et qu’une valeur vide est le signal qu’il attend. Confirmez que le type de fichier est l’un des cinq que le paramètre supporte avant de vous y fier.
- Définissez la portée de l'achèvement pour les fichiers qui s'étendent sur plusieurs tâches : si un fichier de ressources est régulièrement étendu après sa première tâche, utilisez l'option Fichiers entièrement publiés pour les téléchargements manuels et demandez à Smartling de basculer le connecteur de référentiel sur la condition toutes les chaînes, afin qu'un fichier ne soit pas livré tant qu'une tâche plus récente contient encore des clés non traduites.
- Écoutez la complétion et la relivraison — Enregistrez les rappels pour la complétion par lieu et la complétion des tâches, ou interrogez le point de terminaison des fichiers récemment publiés, car les traductions peuvent être corrigées après la première livraison et l’intégration doit récupérer le fichier mis à jour (Centre d’aide Smartling, Tutoriel : Emplois et flux de travail de traduction).
Configurer le comportement de traduction partielle au connecteur convient aux équipes qui...
- Distribuez les fichiers de ressources (JSON, XML Android, propriétés Java, Gettext, YAML) via un connecteur de référentiel ou l'API Files et assurez-vous que la compilation réussisse peu importe l'état d'avancement de la traduction.
- Ajoutez de nouvelles chaînes de caractères aux fichiers existants entre les versions, de sorte qu'un seul fichier soit utilisé régulièrement pour plusieurs traductions.
- Traduire dans plusieurs langues qui se terminent à des moments différents et je veux que le fichier de chaque langue arrive dès qu'elle est terminée.
- Vous effectuez une étape de révision ou de post-édition et vous avez besoin d'une distinction claire entre les traductions en cours et les traductions publiées dans le document livré.
- On s’appuie sur la logique de secours propre au framework de destination et on a besoin de contrôler si une traduction manquante arrive sous forme de texte source ou de valeur vide.
Lorsque le paramètre de repli n'est pas le bon endroit pour résoudre le problème
- Si la question est de savoir quand un lot doit être mis en production dans toutes les langues, la réponse est une étape de mise en attente du flux de travail ou un état de publication du connecteur, traités sur la page de contrôle de publication de la traduction par lots, et non un paramètre de téléchargement.
- Si les fichiers traduits sont rechargés sur Smartling en tant que fichiers sources, le problème vient du fait que l'expression régulière du chemin du connecteur de référentiel correspond à la fois aux chemins source et traduit, ce qu'aucun paramètre de livraison ne corrige.
- Si un connecteur CMS transmet des entrées plutôt que des fichiers, la livraison par localisation à la fin est déjà le comportement pour des connecteurs comme Contentful (Entrants), et le commutateur de secours ne s’applique pas.
- Si les traductions sont corrigées après le lancement, la correction consiste en un rappel ou un sondage récemment publié qui déclenche une nouvelle diffusion, et non en une règle de complétion plus stricte.
Liste de contrôle d'évaluation : questions à poser à un fournisseur au sujet des fichiers partiellement traduits
Qu'est-ce que le connecteur reçoit dans une chaîne de caractères qui n'a pas encore de traduction ?
Demandez le comportement exact et la valeur par défaut. La valeur par défaut de Smartling est la chaîne de caractères de la langue source ; une chaîne vide est un choix explicite, et cette option ne fonctionne que pour Gettext, les propriétés Java, le XML personnalisé, le XML Android et JSON.
Le connecteur peut-il attendre que le fichier soit entièrement traduit pour une langue donnée avant de procéder à la livraison ?
Confirme que c’est la règle par défaut, pas un add-on. Le connecteur de dépôt de Smartling est configuré par défaut sur TERMINÉ, et le connecteur GitHub transmet sa demande d'extraction une fois la tâche terminée.
Comment la plateforme définit-elle les traductions complètes : toutes les chaînes de caractères du fichier, ou toutes les chaînes de caractères qui ont été autorisées ?
Les deux diffèrent chaque fois que certaines chaînes sont exclues d’une tâche. Le connecteur de dépôt de Smartling utilise par défaut toutes les chaînes autorisées et peut être commuté vers toutes les chaînes.
Une traduction en cours apparaît-elle parfois dans une version de téléchargement finale ?
Recherchez une commande de type récupération. Avec retrievalType=published, Smartling remplace la chaîne source par toute traduction encore en cours de modification ou de révision.
Qu'arrive-t-il lorsqu'un fichier est étendu après la fin de sa première tâche ?
Demandez comment la plateforme traite un fichier appartenant à plusieurs tâches. L'option « Fichiers entièrement publiés » de Smartling ne télécharge que les fichiers complets pour toutes les tâches autorisées, jusqu'à 500 par téléchargement.
Comment l’intégration apprend-elle qu’une traduction livrée a été corrigée par la suite?
Confirmez que les rappels sont déclenchés par fichier, par localisation et par tâche, et qu’un point de terminaison récemment publié existe pour les sondages.
Est-ce que les lieux peuvent être cartographiés en un-à-plusieurs entre la plateforme et le dépôt?
Le connecteur de référentiel de Smartling associe les paramètres régionaux 1:1 ; les paramètres régionaux similaires tels que es et es-ES sont gérés en créant les deux dans Smartling et en partageant les traductions via Cross-Country Leverage.
Comment Smartling gère les fichiers partiellement traduits à travers ses connecteurs
Smartling dissocie trois décisions que d'autres plateformes regroupent souvent : la date de livraison d'un fichier, les traductions admissibles et les éléments manquants. Dans le connecteur de dépôt auto-hébergé pour GitHub, GitLab et Bitbucket, un nœud downloadTranslations dans repo-connector.conf définit le déclencheur sur COMPLETED (livraison uniquement lorsque toutes les traductions du fichier sont terminées) ou ONCHANGE (livraison à chaque modification de traduction), définit retrievalType sur PUBLISHED, PENDING ou PSEUDO, et définit includeOriginalStrings pour contrôler si une clé non traduite contient le texte source ou une chaîne vide pour Gettext, les propriétés Java, les fichiers XML personnalisés, les fichiers XML Android et les fichiers JSON. La condition de livraison par défaut est que toutes les chaînes autorisées du fichier sont publiées pour la langue, et le connecteur peut être configuré pour exiger chaque chaîne du fichier via les architectes de solutions ou le support de Smartling.
Le connecteur GitHub hébergé crée une branche de traduction et une pull request à la fin du travail, contenant un fichier par langue, donc une pull request partiellement traduite n’apparaît que lorsque la livraison anticipée est activée pour un passage pré-publié. Les intégrations directes utilisent l’API Files, où le point de terminaison de téléchargement accepte les valeurs retrievalType comme en attente, publié, pseudo et contextMatchingInstrumented; avec publié, les traductions encore en édition ou en révision sont remplacées par la chaîne source, et les traductions prépubliées du paramètre pré-publication d’une étape du workflow sont incluses. Les rappels se déclenchent lorsqu’un fichier se termine dans un endroit et quand un travail se termine, et un point de terminaison de fichiers récemment publié permet à une intégration de récupérer les traductions corrigées après le premier téléchargement.
Pour les équipes qui téléchargent à la main, l’onglet Fichiers d’un projet ou d’une tâche propose des traductions en cours (en cours) ou des traductions publiées, et l’onglet Fichiers de la tâche ajoute des fichiers entièrement publiés, qui ne retourne que les fichiers complets sur chaque tâche à laquelle ils appartiennent, jusqu’à 500 fichiers traduits sur toutes les pages de la tâche. Si une langue n’est pas entièrement publiée, un téléchargement standard contient toujours la copie source dans les positions non traduites, de sorte qu’un évaluateur peut ouvrir le fichier sans tomber sur les blancs. La même famille de contrôles couvre les connecteurs de contenu : les connecteurs basés sur des fichiers tels que Contentful (Entrries) et Webflow livrent chaque lieu une fois que ce lieu est entièrement traduit, et le plugin WordPress peut être téléchargé sur Traduction terminée ou sur Progress Changes, avec un type de récupération Pseudo pour les vérifications de mise en page.
Prêt à voir Smartling en action?
Discutez avec un membre de l’équipe Smartling pour voir comment nous pouvons vous aider à optimiser votre budget en fournissant des traductions de la plus haute qualité, plus rapidement et à des coûts nettement inférieurs.