|
Extensions de fichier |
.po |
|
Extension d'API |
gettext |
|
Importer |
oui |
|
Export |
oui |
|
Prise en charge des formes plurielles |
oui |
|
Prise en charge de la description |
oui |
|
Options de format Ces options peuvent être spécifiées lorsqu'un fichier est chargé et/ou Télécharger. Selon la méthode de charger/Télécharger (API, CLI, synchronisation de dépôt, etc.), elles peuvent être spécifiées dans les paramètres de requête |
|
.BDC (Portable Object) est le format de fichier standard pour la localisation avec GNU gettext, une bibliothèque GNU open-source conçue pour simplifier le processus de localisation. Avec GNU gettext, les Strings localisables sont extraites du code source dans un fichier .BDC pour la traduction. Un fichier .BDC est une série de paires clé-valeur. La clé msgid est l'endroit où la chaîne source est placée, tandis que la valeur msgstr est l'endroit où va la traduction.
gettext extrait les Strings du code source dans un .POT (modèle d'objet portable). En fonction des paramètres linguistiques définis, gettext convertit ensuite le fichier .POT en fichiers .BDC spécifiques au paramètre linguistique pour les charger dans un outil TAO pour la traduction. Après la traduction, gettext convertit les fichiers .BDC traduits en fichiers .MO (fichiers objets machine) finalement utilisés pour la localisation.
Les fichiers .BDC sont identiques aux fichiers .POT, à l'exception que les fichiers .POT sont généralement utilisés par gettext pour générer des fichiers .BDC spécifiques au paramètre linguistique. Traduire un fichier .POT directement et le renommer en fonction du paramètre linguistique prévu ultérieurement ne pose pas de problème. Phrase prend en charge la traduction de :
-
Fichiers .BDC
-
Fichiers .BDC bilingues
-
Fichiers .MO lisibles par machine
msgctxt sera utilisé comme préfixe de clé, combiné avec msgid et séparé par ||.
Options de format
|
Identifiant |
msgid_as_default |
|
Type |
Booléen |
|
Chargement |
vrai |
|
Téléchargement |
false |
|
Par défaut |
false |
|
Description |
Prend le contenu de traduction à partir de la valeur |
|
Identifiant |
is_bilingual_file |
|
Type |
Booléen |
|
Chargement |
vrai |
|
Téléchargement |
false |
|
Par défaut |
false |
|
Description |
Les traductions source et cible seront importées depuis le fichier téléchargé : le contenu source sera récupéré depuis la valeur |
Exemple de code
msgid "" msgstr "" "Langue : Anglais\n" "MIME-Version : 1.0\n" "Contenu-Type : text/plain; charset=UTF-8\n" "Contenu-Transfer-Encoding : 8bit\n" "Plural-Forms : nplurals=2; plural=(n != 1);\n" "X-Generator : PhraseApp (phraseapp.com)\n" msgid "boolean_key" msgstr "--- true\n" msgid "empty_string_translation" msgstr "" # Ceci est l'incroyable description pour cette clé ! msgid "key_with_description" msgstr "Jetez-y un œil ! Cette clé a une description ! (Au moins dans certains formats)" msgid "key_with_line-break" msgstr "Cette traduction contient\nun saut de ligne." msgid "nested.deeply.key" msgstr "Hé, cette clé est imbriquée encore plus profondément." msgid "nested.key" msgstr "Cette clé est imbriquée à l'intérieur d'un espace de noms." msgid "null_translation" msgstr "" msgid "pluralized_key" msgid_plural "" msgstr[0] "Only one pluralization found." msgstr[1] "Wow, you have %s pluralizations!" msgid "sample_collection" msgstr "---\n- premier élément\n- deuxième élément\n- troisième élément\n" msgid "simple_key" msgstr "simple clé, message simple, tellement simple.2" #, correspondance approximative msgid "unverified_key" msgstr "J'ai besoin d'une vérification, veuillez me vérifier !" (Dans certains formats, nous exportons également ce statut)"
Entrée gettext typique :
# description (Optionnel) msgid "key-name" msgstr "Ma traduction"
En-tête gettext
L'en-tête d'un fichier gettext peut contenir un paramètre linguistique et des données pour les formes plurielles qui sont extraites lors de l'importation :
msgid "" msgstr "" "Language: fr\n" "MIME-Version : 1.0\n" "Contenu-Type : text/plain; charset=UTF-8\n" "Contenu-Transfer-Encoding : 8bit\n" "Plural-Forms : nplurals=2; plural=(n != 1);\n" "X-Generator : PhraseApp (phraseapp.com)\n"
Descriptions
Les commentaires dans un fichier gettext sont ajoutés en tant que descriptions de clé lors de l'importation :
# Ceci est ma description msgid "app_title" msgstr "Mon projet logiciel"
Contexte
gettext utilise la notation msgctxt pour distinguer différents contextes pour le même msgid. Chaque nom de clé doit être unique, donc msgctxt est ajouté comme première partie du nom de la clé, séparé par deux symboles barre verticale || :
msgctxt "menu" msgid "Open" msgstr "Je suis une traduction" msgctxt "forum" msgid "Open" msgstr "Je suis une autre traduction"}}}e-mail:
Pour ajouter le msgctxt à une nouvelle clé, ajoutez-le au début du nom de la clé :
my_context||my_key_name
Sortie gettext résultante :
... msgctxt "my_context" msgid "my_key_name" ...
Formes plurielles
gettext prend en charge les formes plurielles pour une traduction :
msgid "new_messages"
msgid_plural ""
msgstr[0] "Vous avez un nouveau message"
msgstr[1] "Vous avez %{count} nouveaux messages"
Correspondance approximative
Le mot-clé correspondance approximative est utilisé pour la vérification de la traduction. Correspondance approximative invoque automatiquement le processus de non-vérification au sein de Phrase.
#, correspondance approximative msgid "app_title" msgstr "Mon projet logiciel"