Un fichier PO (Portable Object) est le fichier de traduction en texte brut utilisé par GNU gettext, le système d’internationalisation des projets Python, PHP, WordPress, Django et Drupal. Dans le format de fichier PO, chaque entrée associe une chaîne source (msgid) à sa traduction (msgstr) : un fichier PO contient donc une seule langue.
Votre code produit un modèle POT, chaque langue reçoit un fichier PO créé à partir de celui-ci, et votre build compile chaque fichier PO en fichier MO binaire que l’application charge. La plateforme de localisation de logiciels de Smartcat traduit les fichiers PO et POT comme des fichiers bilingues : msgid est importé comme source et la traduction est réécrite dans msgstr.
.po : une langue, source et traduction côte à côte
.pot : le modèle vide extrait de votre code source
.mo : le binaire compilé que votre application charge réellement