17.2.3.2.3 Extraction des clés pour les familles de document
La description de la structure de famille est définie dans une fichier CSV ou ODS. Ce fichier est utilisable pour produire un catalogue de traduction.
Exemple : TestSimple.ods
BEGIN | Test simple | TST_SIMPLE | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
idattr | idframe | label | T | A | type | ord | vis | need | link | phpfile | phpfunc | |
ATTR | TST_FR_HTML | Identification | N | N | frame | 100 | W | |||||
ATTR | TST_TITLE | TST_FR_HTML | Titre | Y | N | text | 110 | W | Y | |||
ATTR | TST_SIZE | TST_FR_HTML | Taille | N | N | enum | 120 | W | XL| Very large,L | Large,M |Medium,S |
Le programme xgettextFamily
permet d'extraire les clefs de traduction depuis un
ou plusieurs fichiers de description de famille (CSV ou ODS).
3.2.12
./buildTools/xgettextFamily -o / TestSimple.ods myLocaleDirectory/TST_SIMPLE.pot wrote.
produit le fichier locale/TST_SIMPLE.pot
. L'identifiant de la famille sert
pour le nom du fichier et pour les clefs de traduction.
L'option de sortie -o
doit renseigner un répertoire accessible en écriture.
La production du fichier temporaire sert pour construire les catalogues dans les langues voulues.
Il est possible de déclarer les fichiers d'entrées via le pipe.
find . -name "family*.csv" | ../buildtools/xgettextFamily -o myLocaleDirectory -f-
Cela produit un fichier .pot
par famille.
Les options de xgettext
ne sont pas utilisables pour modifier le fichier produit.
Extrait du fichier généré "TST_SIMPLE.pot" avec la famille décrite ci-dessus :
msgid "" msgstr "" "Project-Id-Version: TST_SIMPLE \n" "Report-Msgid-Bugs-To: \n" "PO-Revision-Date: 2013-10-25T14:59:04+02:00\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: \n" #, fuzzy, (TestSimple.ods.csv) msgid "TST_SIMPLE#title" msgstr "Test simple" #: TestSimple.ods.csv #, fuzzy, (TestSimple.ods.csv) msgid "TST_SIMPLE#tst_fr_html" msgstr "Cadre 1" #: TestSimple.ods.csv #, fuzzy, (TestSimple.ods.csv) msgid "TST_SIMPLE#tst_title" msgstr "Titre" #: TestSimple.ods.csv #, fuzzy, (TestSimple.ods.csv) msgid "TST_SIMPLE#tst_size" msgstr "Taille" #, fuzzy, (TestSimple.ods.csv) msgid "TST_SIMPLE#tst_size#XL" msgstr "Very large" ...
Les clefs suivantes sont générée :
FAMNAME#title
- Titre de la famille FAMNAME
FAMNAME#<attrid>
- Libellé de l'attribut
<attrid>
de la famille FAMNAME FAMNAME#<attrid>#ENUMVALUE
- Libellé de la valeur ENUMVALUE de l'énuméré
<attrid>
de la famille FAMNAME. Note : Les traductions des énumérés peuvent être modifiées par l'administrateur depuis l'interface du centre d'administration. Les traductions des énumérés faite par l'interface sont toujours prioritaires aux traductions faites dans les catalogues livrés par le module. FAMNAME#<attrid>#OPTIONKEY
- Traduction des valeurs de certaines options d'attributs sensibles à la localisation. Les options prises en compte sont : "elabel", "ititle", "submenu", "ltitle", "eltitle", "elsymbol", "lsymbol", "showempty".