Internationalisation et adaptation locale

Les applications gtkmm prennent facilement en charge plusieurs langues, y compris les langues non-européennes telles que le chinois et les langues s'écrivant de droite à gauche comme l'arabe. Une application gtkmm écrite et traduite de manière appropriée, utilise lors de son exécution la langue définie par l'environnement utilisateur.

Vous ne devez pas anticiper le besoin de prendre en charge telles ou telles autres langues, mais vous ne devez jamais en exclure l'utilisation. De plus, il est plus facile de développer une application correctement dès le début que de l'améliorer après coup.

Le processus consistant à écrire un code source autorisant la traduction s'appelle l'internationalisation, souvent abrégé en i18n. Le processus d'adaptation locale (localisation) quelquefois abrégé en l10n, met à disposition du texte, fondé sur ce code source, traduit dans d'autres langues.

Le gros du travail dans le processus d'internationalisation est de rechercher les chaînes visibles par l'utilisateur et de les marquer comme traduisibles. Ce travail n'a pas besoin d'être réalisé en une seule fois - si vous réglez l'infrastructure du projet correctement, votre application fonctionnera normalement quel que soit le nombre de chaînes traîtées.

String literals should be typed in the source code in English, but surrounded by a macro. The gettext (or intltool) utility can then extract the marked strings for translation, and substitute the translated text at runtime.