Διεθνοποίηση και τοπικοποίηση

Οι εφαρμογές gtkmm μπορούν εύκολα να υποστηρίξουν πολλαπλές γλώσσες, συμπεριλαμβανομένων μη ευρωπαϊκών γλωσσών όπως κινέζικα και γλώσσες από δεξιά προς τα αριστερά όπως αραβικά. Μια κατάλληλα γραμμένη και μεταφρασμένη εφαρμογή gtkmm θα χρησιμοποιήσει την κατάλληλη γλώσσα στον χρόνο εκτέλεσης με βάση το περιβάλλον του χρήστη.

Μπορεί να μην προβλέψετε την ανάγκη υποστήριξης πρόσθετων γλωσσών, αλλά δεν μπορείτε ποτέ να το αποκλείσετε. Φυσικά, είναι ευκολότερο να αναπτύξετε την εφαρμογή κατάλληλα από την αρχή αντί να την τροποποιήσετε αργότερα.

Η διαδικασία συγγραφής πηγαίου κώδικα που επιτρέπει την μετάφραση λέγεται διεθνοποίηση, συχνά συντομεύεται σε i18n. Η διεργασία τοπικοποίηση, μερικές φορές συντομευμένη ως l10n, παρέχει μεταφρασμένο κείμενο για άλλες γλώσσες, με βάση αυτόν τον πηγαίο κώδικα.

Η κύρια δραστηριότητα στην διεργασία διεθνοποίησης είναι η εύρεση των συμβολοσειρών που βλέπουν οι χρήστες και η σημείωσή τους για μετάφραση. Δεν χρειάζεστε να το κάνετε όλο μονομιάς - αν εγκαταστήσετε την απαραίτητη υποδομή του έργου σωστά, τότε η εφαρμογή σας θα δουλέψει κανονικά ανεξάρτητα από το πόσες συμβολοσειρές έχετε καλύψει.

Οι κυριολεκτικές συμβολοσειρές πρέπει να πληκτρολογηθούν στα αγγλικά, αλλά περιβαλόμενες από μια μακροεντολή. Το εργαλείο gettext (ή intltool) μπορεί τότε να εξάγει τις σημειωμένες συμβολοσειρές για μετάφραση και να αντικαταστήσει το μεταφρασμένο κείμενο στον χρόνο εκτέλεσης.