DEBCONF-GETTEXTIZE(1) | po-debconf | DEBCONF-GETTEXTIZE(1) |
debconf-gettextize - Convertir des questionnaires debconf en fichiers PO
debconf-gettextize [-v] [-h] [--podir=RÉP] [--choices] [--merge] maître [maître ...]
Les fichiers /var/lib/dpkg/info/*.templates lus par debconf contiennent à la fois les chaînes anglaises et les traductions. Mais dans les paquets sources, les traductions sont gérées dans des fichiers séparés afin de faciliter le travail des traducteurs. À l'origine, un fichier templates maître ne contenait que les chaînes en anglais et les fichiers templates.xx contenaient les traductions pour les langues xx ainsi que les chaînes anglaises sur lesquelles les traductions sont basées. Le programme debconf-mergetemplate fusionnait ces fichiers.
La nouvelle mouture avec « po-debconf » est basée sur « gettext ». Les développeurs marquent les champs à traduire en les précédant d'un souligné (underscore). Les chaînes anglaises sont automatiquement copiées dans un fichier POT, les traducteurs travaillent sur les fichiers PO habituels et po2debconf produit un fichier qui est identique à celui produit auparavant par debconf-mergetemplate.
Le programme debconf-gettextize est fourni afin de faciliter cette migration.
Normalement, le programme debconf-gettextize n'est invoqué qu'une seule fois, lors de la conversion vers le format « po-debconf ». Mais il peut aussi être utilisé par la suite pour transformer un champ « _Choices » en « __Choices » (ou inversement) sans perdre les traductions existantes, à l'aide de l'option « --merge » (éventuellement avec « --choices »). Le questionnaire contenant le champ « _Choices » ou « __Choices » à modifier est recopié dans un fichier temporaire, qui est passé en paramètre de debconf-gettextize. Les étapes suivantes sont alors réalisées :
Une fois les fichiers PO fusionnés, les champs « _Choices » doivent être remplacés par « __Choices » (ou inversement) dans les questionnaires debconf avant d'exécuter debconf-updatepo, sinon les traductions seront marquées comme étant approximatives (« fuzzy »).
Le champ « Default » est particulier pour les types de questionnaires « Select » et « Multiselect », parce qu'une valeur doit être choisie parmi la liste de choix en anglais, même pour les valeurs régionales. Normalement, ce champ ne doit pas être modifié, mais dans de rares circonstances, des valeurs régionales ont un sens (par exemple lors du choix de la langue par défaut d'une application). Afin de permettre aux traducteurs de savoir que la valeur régionale de ce champ « Default » est particulière, vous devez, par convention, l'appeler « _DefaultChoice » au lieu de « _Default ».
debconf-updatepo(1), po2debconf(1), debconf-devel(7), po-debconf(7).
Denis Barbier <barbier@linuxfr.org> Martin Quinson <martin.quinson@ens-lyon.fr>
Nicolas Bertolissio <nico.bertol@free.fr> Denis Barbier <barbier@linuxfr.org>
2020-12-30 |