Vérificateur de Localizable.strings
Déposez deux fichiers .strings ou plus et voyez ce qui manque, ce qui est en double, ce qui n'a jamais vraiment été traduit et quelles lignes refusent de s'analyser. Rien n'est envoyé : ce sont en général des fichiers de production, et ils restent dans cette page.
La règle des valeurs en double
Deux clés portant la même valeur anglaise, c'est le bug qui revient toujours. La personne qui traduit voit deux fois la même chaîne, la traduit deux fois et obtient deux résultats différents — ou pire : une langue qui a besoin de mots distincts pour les deux contextes reçoit le même mot pour les deux, et personne ne s'en aperçoit avant qu'un locuteur natif ne se plaigne. Le contrôle ignore la casse et la ponctuation finale, car "Done" et "Done." sont le même problème coiffé d'un chapeau.
Identique n'est pas synonyme de non traduit
Une valeur identique au fichier de base signifie le plus souvent que personne n'y est arrivé. Parfois elle est juste : un nom de marque, une unité, une abréviation qui ne bouge dans aucune langue. L'outil les signale et vous laisse juger, car l'autre option consiste soit à manquer de vrais trous, soit à ronchonner sur chaque OK.
Les lignes fautives sont signalées, pas avalées
La grammaire des .strings est petite, mais ses cas limites sont bien réels : commentaires de bloc, guillemets échappés dans les valeurs, point-virgule oublié, guillemet typographique collé depuis un tableur. Un analyseur qui saute en silence ce qu'il ne comprend pas vous dira que le fichier va bien alors qu'une clé manque discrètement. Chaque ligne qui ne s'analyse pas est donc listée avec son numéro, pour que vous alliez la voir.
UTF-16 aussi
Xcode écrit des fichiers .strings en UTF-16 depuis des années, et bien des dépôts en contiennent encore. Les fichiers sont donc d'abord reniflés à la recherche d'une marque d'ordre des octets puis décodés en conséquence, pour qu'un fichier UTF-16 n'arrive pas sous forme de mur d'octets nuls et de cent erreurs d'analyse.
FAQ
Gère-t-il les .xcstrings ?
Pas encore. Le catalogue de chaînes est du JSON à la structure différente, et il mérite son propre traitement plutôt qu'une couche de conversion qui marche à moitié.
Quel fichier prendre comme base ?
Celui qui fait autorité, en général la langue de développement. Tout lui est comparé, si bien qu'une clé absente de la base mais présente ailleurs est signalée comme en trop, et non comme manquante.
Qu'est-ce qui compte comme problème ?
Une clé manquante, une valeur en double, une valeur identique à la base, ou une ligne qui ne s'analyse pas. Le compteur additionne tout cela sur l'ensemble des fichiers.
Mes fichiers sont-ils envoyés ?
Non. Ils sont lus avec le lecteur de fichiers du navigateur et comparés ici. Cela compte davantage pour cet outil que pour les autres, car ce sont de vrais fichiers de production.
Réalisé par l'équipe GO AI, qui n'arrêtait pas de tomber dessus. Tous les outils gratuits