Convertisseur Localizable.strings vers .xcstrings

Déposez vos fichiers Localizable.strings (un par langue) : l'outil les fusionne en un seul String Catalog .xcstrings que vous téléchargez. La conversion se fait dans votre navigateur, gratuitement, sans compte ni envoi de fichier.

Convertir vos fichiers .strings

Ou coller le contenu d'un fichier

Conversion faite dans votre navigateur : aucun fichier n'est envoyé.

Éditez le catalogue sans repasser par Xcode

LocalePilot est une application desktop qui ouvre vos .xcstrings, contrôle les placeholders (%@, %1$@, %d), traduit avec une IA locale si vous le souhaitez, puis réécrit le fichier dans le style d'Xcode : un catalogue inchangé ressort identique octet pour octet. En finalisation pour macOS : laissez votre email pour être prévenu du lancement.

Ce que fait le convertisseur

  • Lit vos fichiers .strings (UTF-8 ou UTF-16, commentaires /* … */ et //, échappements \n, \", \U00e9).
  • Fusionne toutes les langues d'une même table dans un seul catalogue (Localizable.xcstrings, InfoPlist.xcstrings…) : une entrée par clé, avec la traduction de chaque langue à l'état translated. Les tables ne sont jamais mélangées.
  • Reprend le commentaire placé au-dessus d'une clé comme commentaire de l'entrée.
  • Signale les clés absentes d'une langue, les clés définies deux fois et les lignes illisibles.

Le fichier est écrit dans le style d'Xcode (indentation de 2 espaces, espace avant les deux-points), pour que le diff Git reste lisible.

Comment convertir Localizable.strings en xcstrings

  1. Réunissez les fichiers Localizable.strings de chaque dossier xx.lproj.
  2. Déposez le dossier du projet ou les fichiers un par un, puis vérifiez la langue de chaque fichier.
  3. Choisissez la langue source, téléchargez Localizable.xcstrings et ajoutez-le au projet Xcode.
  4. Compilez, puis relisez le diff : les clés marquées Stale, les nouvelles clés extraites du code et les spécificateurs de format sont détaillés dans le guide de migration vers un String Catalog.

Ce que le convertisseur ne fait pas

Il ne lit pas les fichiers .stringsdict : les pluriels et les variations par appareil sont à reprendre dans Xcode ou dans un éditeur de catalogue. Il ne scanne pas votre code, donc il n'ajoute pas les chaînes que Xcode extrairait des littéraux SwiftUI. Pour un projet entier, la commande Migrate to String Catalog d'Xcode reste la référence ; cet outil sert pour des fichiers isolés, un export reçu d'un traducteur ou un test rapide.

Questions fréquentes

Mes fichiers .strings sont-ils envoyés à un serveur ?

Non. Vos fichiers sont lus localement et le catalogue est fabriqué dans la page : le téléchargement part du navigateur, sans aller-retour sur un serveur.

Comment l'outil connaît-il la langue de chaque fichier ?

Il la lit dans le nom du dossier xx.lproj quand vous déposez un dossier, ou dans le nom du fichier (Localizable_fr.strings). Sinon, vous la saisissez vous-même avant de générer le catalogue.

Pourquoi ne pas utiliser la migration d'Xcode ?

Pour un projet complet, utilisez-la : elle traite aussi les .stringsdict et connaît votre code. Ce convertisseur sert pour des fichiers isolés, sans ouvrir le projet, par exemple un export de traducteur ou un test.

Les pluriels des .stringsdict sont-ils convertis ?

Non, seuls les fichiers .strings sont lus. Les pluriels se reprennent dans Xcode, sous la forme de variations de pluriel dans le catalogue.

Mon fichier .strings est en UTF-16, est-ce un problème ?

Non, l'encodage UTF-16 des fichiers générés par Xcode est détecté automatiquement, comme l'UTF-8.

Le catalogue généré est-il valide ?

C'est un JSON au format String Catalog (version 1.0). Il se compile avec l'outil xcstringstool d'Xcode, mais ouvrez-le dans Xcode et relisez le diff avant de commiter.

Quelle différence avec LocalePilot ?

Cet outil convertit des fichiers une fois. LocalePilot est une application desktop, en finalisation pour macOS, qui édite les .xcstrings, contrôle les placeholders, traduit avec une IA et exporte avec sauvegarde.

Être prévenu du lancement

LocalePilot est en finalisation. Laissez votre e-mail pour être prévenu du lancement.

  • macOS 12 ou ultérieur · Ollama ou LM Studio en option
  • Interface de l'app en anglais, français, espagnol, italien et portugais.