Bon, je repose ma question puisqu’elle a l’air d’avoir pris un coup de froid :
Je souhaite internationaliser mon application, et plus spécifiquement gérer des messages textes dans différentes langues. J’ai un peu exploré le net pour voir les solutions qui pouvaient s’offrir à moi, et j’ai trouvé deux pistes :
gettext est une librairie permettant de gérer des catalogues de textes multi-langues. Cependant cette solution ne me plait pas pour deux raisons majeurs :
Par défaut, les chaînes de caractères doivent être en anglais et sont utilisées telles qu’elles apparaissent dans le code comme identifiant du catalogue. On peut, mais c’est plus compliqué, les gérés par du français.
Du coup, ma seconde raison tient essentiellement à ce que je ne souhaite pas positionner les chaînes dans le code (exceptions faites d’un fichier ‘ressource’ associé). En effet, les chaînes ne sont pas produite par le développeur ni pour le français, ni pour les traductions.
L’autre solution serait std ::local. Le hic, c’est que je n’arrive à trouver aucune doc là-dessus, et spécifiquement sur le format des fichiers catalogues associés. La doc dit que seul l’interface std ::local est spécifiée (jusque là, c’est normale), et que l’implémentation est laissée à la charge du compilo. D’où, pas d’info sur le format des fichiers….
Donc ma question est quelqu’un connaîtrait-il une bibliothèque permettant de gérer des messages textes issus de plusieurs catalogues (à l’instar des LoadString des ressources windows), avec bien sûr la contrainte d’être à peu près libre et multi plateforme.
Merci.
Partager