La solution .INI Dans cette solution, l'ensemble de chaînes de caractères pour les différentes langues est conservé dans un fichier externe application.INI Si une application est distribuée sans son fichier .INI, c'est que l'application n'existe que pour la langue originale. Dès que l'application est chargée, le fichier .INI est généré dans cette langue, et on peut commencer à le traduire. logique: Exposer les éléments textuels au public peut ne pas être vu d'un bon œil par les programmeurs (certains préfèreraient qu'elles ne puissent pas être changées et cette technique peut être plus lente que d'inclure les messages dans le code, mais de combien plus lente?), mais les extérioriser ainsi permet aux utilisateurs d'ajouter les langages qu'ils veulent ou de modifier les chaînes existantes sans avoir à recompiler l'application. Cela permet aux branchés d'échanger leurs traductions sans avoir à faire appel aux programmeurs-auteurs; les applications MLC pourront alors se disséminer dans le monde plus vite que ne pourrait l'espérer un programmeur unilingue. Le recours aux fichiers .INI permet à ceux qui n'ont aucune expérience de programmation MB de jouer un rôle dans ce projet; de plus, il ne demande aucun outil de compilation, un simple traitement de texte étant suffisant pour ajouter un nouveau langage.   NOTES AUX UTILISATEURS Si l'application de vient qu'avec un MBX, le ficier INI sera créé lors de la première utilisation avec la langue originale utilisée par l'auteur.. Le fichier INI doit être placé dans le même répertoire que le MBX. Si le fichier INI ne contient pas la langue voulue. il suffit d'y ajouter les phrases traduites comme indiqué plus bas, et de sauvegarder le fichier. La nouvelle langue est immédiatement disponible, même si l'application est déjà chargée. Si l'utilisateur ne veut pas conserver toutes les langues, il peut éditer le fichier INI on enlevant les blocks de phrases dont il ne veut pas et en ajustant les paramètres (nombre de langues et numéro de langue pour chaque bloc restant). ATTENTION : c'est une opération risquée si elle implique plusieurs corrections.   NOTES AUX TRADUCTEURS
La plus grande partie de ce texte en diverses langues est aussi disponible en format RTF dans le fichier MNI_TR_SET.zip mis à jour constamment.
La façon la plus simple de procéder pour ajouter une langue est de travailler directement sur le fichier INI, en ajoutant les lignes nécessaires et en ajustant les paramètres. Pour le faire correctement, le traducteur doit bien comprendre la structure de ces fichiers INI. avoir une bonne idée de la procédure et faire marcher l'application pour être sûr de la quailté de son travail. De façon à faire profiter toute la communauté MI de son travail, le traducteur devrait envoyer à l'auteur de l'application le fichier INI pour qu'il puisse l'intégrer au fichier de distribution générale. On souhaite aussi que le traducteur écrive une petite description du programme similaire aux pages "plus de détails" de ce site. (voir "Applications MLC disponibles").   LA STRUCTURE DU FICHIER INI

Le fichier INI est composé de blocs, un géréral et deux pour chaque langue. Le bloc général contient deux paramètres: l'index de la langue présentement sélectionnée et le nombre de langues dans le fichier. Dans le cas où il n'y aurait qu'une langue, le fichier se lirait ainsi:
[General]
LanguagePreference=1
Languages=1
A language block begins with the language index, the language name and all the text strings required in the application. The first bloc of strings are specific to the application; those listed after the [MLC ] heading are the same for all MLC applications.
[Language1] Name=
msg1=Message string 1
msg2=Message string 2
...
msgN=Message string N

[MLC1]
msg1=Message string 1
msg2=Message string 2
msg3=Message string 3
  ADDITION D'UNE LANGUAGE On fait l'hypothèse qu'il ya déjà m langues 1 - changer dans [General]
Languages=m to Languages=m+1
2 - créer un nouveau bloc à la fin du fichier
[Language(m+1)]
Name=
msg1=Message in new language string 1
msg2=Message in new language string 2
...
msgn=Message in new language string N

[MLC(m+1)]
msg1=Message string 1
msg2=Message string 2
msg3=Message string 3
3 - Traduire les phrases dans la nouvelle langue   RECOMMANDATIONS 1 - C'est plus simple et sécuritaire de copier simplement le bloc entier de la langue à partir de laquelle on fera la traduction et d'ajuster ensuite les paramètres et les phrases. De cette façon, on n'oubliera aucune phrase. 2 - Faites des phrases de longueur aussi proche que possible des originales. 3 - Si vous voulez que l'application s'ouvre dans la nouvelle langue dès que vous la chargerez, changez dans
[General] LanguagePreference=m en LanguagePreference=m+1
où m+1 est l'index de la nouvelle langue 4 - Faites fonctionner l'application pour vous assurez que les longueurs de phrase sont acceptables.   UTILISER UN PEU D'AIDE J'ai écrit un utilitaire MBX qui peut être une aide appréciable dans l'ajout d'une nouvelle langue ou dans la correction de langues existantes directement dans le fichier INI. L'utilisateur n'a pas besoin de traitement de texte ni de savoir quoique soit sur la structure du fichier INI. Cet utilitaire appelé MlcIniTr est disponible sur ce site.   NOTES AUX PROGRAMMEURS Les principes de la solution MLC_INI sont mis en œuvre par le biais d'un ensemble de sous-routines MB et détaillés dans un document pdf; un exemple complet et documenté donne une idée d'une réalisation concrète. Tous ces éléments sont regroupés dans le fichier Mlc_Ini_Kit.zip. Vous pouvez consulter le document MLC_INI_KIT.pdf ici directement ou le télédécharger de la page à cet effet.