po4a.1p

Autres langues

Langue: fr

Version: 2010-06-01 (fedora - 01/12/10)

Section: 1 (Commandes utilisateur)

NOM

po4a - met à jour à la fois les fichiers po et les documents traduits

SYNOPSIS

po4a [options] <fichier_de_configuration>

DESCRIPTION

L'objectif du projet po4a [po for anything --- po pour tout] est de simplifier la traduction (et de façon plus intéressante, la maintenance des traductions) en utilisant les outils gettext dans des domaines pour lesquels ils n'étaient pas destinés, comme la documentation.

Le programme "po4a" est chargé de mettre à jour à la fois les fichiers po (les synchroniser avec les documents originaux) et les documents traduits (les synchroniser avec les fichiers po). Le principal avantage est de faciliter l'utilisation de po4a sans avoir besoin de se souvenir des options en lignes de commande.

Il vous permet de mélanger des documents de différents formats dans le même fichier pot de façon à n'en avoir qu'un seul par projet.

Ce comportement peut être imité par les autres outils de la suite po4a (par exemple avec des makefiles), mais il est relativement difficile à faire, et fatiguant de toujours refaire les mêmes makefiles compliqués pour chaque projet utilisant po4a.

Le flux des données peut se résumer de la façon suivante. Tout changement dans le document d'origine est reflété dans les fichiers po, et tout changement dans les fichiers po (qu'il soit manuel ou causé par une des étapes précédentes) sera reflété dans les documents traduits.

  document maître --> fichiers po --> traductions
 
 

Le flux de données ne peut pas être inversé dans cet outil, et les changements dans les traductions sont écrasés par le contenu des fichiers po. Cet outil ne peut donc pas être utilisé pour convertir les traductions existantes à po4a. Pour ceci, veuillez consulter po4a-gettextize(1).

SYNTAXE DU FICHIER DE CONFIGURATION

Le paramètre (obligatoire) indique le chemin du fichier de configuration à utiliser. Sa syntaxe a vocation d'être simple et proche des autres fichiers de configuration utilisés par les projets d'internationalisation.

Des commentaires peuvent être ajoutés à ce fichier avec le caractère « # ». Tout ce qui suit ce caractère sur une ligne est considéré comme un commentaire. Les lignes peuvent se poursuivre en ajoutant un caractère d'échappement à la fin de la ligne. Toute ligne non vide doit débuter par une commande entre crochets, suivie de ses paramètres. (Ça peut paraître difficile à première vue, mais c'est en fait assez simple, enfin je l'espère ;)

Spécifier un modèle pour les différentes langues

C'est une commande optionnelle qui permet de simplifier le fichier de configuration lorsqu'il est utilisé pour de nombreux langages. Il vous suffit de spécifier les langues vers lesquelles vous voulez traduire les documents, ce qui se fait aussi simplement que :
  [po4a_langs] fr de
 
 

Ceci vous permettra de développer $lang dans toutes les langues spécifiées pour le reste du fichier de configuration.

Spécifier les chemins des fichiers des traducteurs

D'abord, vous devez spécifier où se trouvent les fichiers fournis aux traducteurs. Ceci peut être fait de la façon suivante :
  [po4a_paths] doc/l10n/project.doc.pot fr:doc/l10n/fr.po de:doc/l10n/de.po
 
 

La commande est donc « po4a_paths ». Le premier paramètre est le chemin du fichier pot à utiliser. Les autres paramètres se comprennent par eux-mêmes :

     <langue>:<chemin vers le fichier po de cette langue>
 
 

Si vous avez défini un modèle pour les langues, vous pouvez écrire la ligne précédente de cette façon :

  [po4a_paths] doc/l10n/project.doc.pot $lang:doc/l10n/$lang.po
 
 

Vous pouvez également utiliser $master pour faire référence au nom (sans le chemin) du document. Dans ce cas, po4a utilisera un mode réparti : un POT et un PO (par langue) sera créé pour chaque document présent dans le fichier de configuration de po4a. Consultez la section Mode réparti.

  [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po
 
 

Autodetection of the paths and languages

Another command can be used to specify the name of a directory where the PO and POT files are located. When it is used, po4a will detect the POT file as the only ``*.pot'' file from the specified directory. Po4a will also use the list of ``*.po'' files to define the list of languages (by stripping out the extension). These languages will be used for the substitution of the $lang variable in the rest of the configuration file.

This command should not be used together with the po4a_langs or po4a_paths commands.

  [po_directory] po4a/po/
 
 

Spécification des documents à traduire

Vous devez maintenant spécifier quels documents doivent être traduits, leur format et où placer leurs traductions. Ceci peut être fait par ces lignes :
  [type: sgml] doc/my_stuff.sgml fr:doc/fr/mon_truc.sgml \
               de:doc/de/mein_cram.sgml
  [type: pod] script fr:doc/fr/script.1 de:doc/de/script.1 \
              add_fr:doc/l10n/script.fr.add
 
 

Ceci est plutôt explicite. Notez que dans le second cas, doc/l10n/script.fr.add est un addendum à ajouter à la version française du document. Veuillez vous référer à po4a(7) pour plus d'informations à propos des addenda.

Plus formellement, le format est le suivant :

  [type: <format>] <doc_maître> <lang>:<doc_traduit>* add_<lang>:<addendum>*
 
 

Si vous avez défini un modèle pour les langues, vous pouvez écrire la ligne précédente de cette façon :

  [type: pod] script $lang:doc/$lang/script.1 \
              add_fr:doc/l10n/script.fr.add
 
 

Si toutes les langues ont des addenda situés dans des chemins similaires, vous pourriez également écrire quelque chose comme :

  [type: pod] script $lang:doc/$lang/script.1 \
              add_$lang:doc/l10n/script.$lang.add
 
 

Fournir des options aux modules

po4a accepte des options qui seront passées au module. Ces options sont spécifiques au module et sont spécifiées avec l'option -o.

Si vous voulez fournir une option spécifique pour un des documents que vous voulez traduire, vous pouvez la préciser dans le fichier de configuration. Les options sont introduites par le mot clé opt. Les paramètres du mot clé opt doivent être placés entre guillemets s'ils contiennent un espace (par exemple si vous précisez plusieurs options, ou une option avec un paramètre). Vous pouvez également spécifier des options qui ne s'appliqueront qu'à une seule langue en utilisant le mot clé opt_lang.

Voici un exemple :
 [type:man] data-05/test2_man.1 $lang:tmp/test2_man.$lang.1 \
            opt:``-k 75'' opt_it:``-L UTF-8'' opt_fr:-v

Les arguments peuvent contenir des espaces si vous utilisez des guillemets simples ou si vous protégez les guillemets doubles comme ceci :
 [po4a_alias:man] man opt:``-o \''mdoc=NAME,SEE ALSO\`` -k 20''

Pour préciser les mêmes options pour un jeu de documents, vous pouvez utiliser un alias (consultez la section Spécifier des alias ci-dessous).

Vous pouvez aussi définir des options pour tous les documents du fichier de configuration :
 [options] opt:``...'' opt_fr:``...''

Spécifier des alias

Si vous devez fournir les mêmes options pour plusieurs fichiers, vous avez intérêt à définir un alias de module. Ceci se fait de cette façon :

[po4a_alias:test] man opt:``-k 21'' opt_es:``-o debug=splitargs''

Ceci définit un alias de module nommé test, basé sur le module man. L'option -k 21 s'appliquera à tous les langues et l'option -o debug=splitargs uniquement à l'espagnol.

Cet alias de module peut ensuite être utilisé comme un module normal :

[type:test] data-05/test2_man.1 $lang:tmp/test2_man.$lang.1 \
            opt_it:``-L UTF-8'' opt_fr:-v

Notez que vous pouvez encore ajouter des options fichier par fichier.

Mode réparti

Le mode réparti est utilisé quand $master est utilisé dans la ligne [po4a_paths].

Quand le mode réparti est utilisé, un gros POT et de gros POs sont créés temporairement. Ceci permet de partager les traductions entre tous les POs.

Si deux POs ont deux traductions différentes pour la même chaîne, po4a marquera cette chaîne comme étant fuzzy et proposera les deux traductions dans tous les POs qui contiennent cette chaîne. Ensuite, lorsqu'un traducteur mettra à jour la chaîne dans un PO et retirera l'étiquette fuzzy, la traduction de cette chaîne sera mise à jour dans tous les POs automatiquement.

OPTIONS

-k, --keep
Seuil à dépasser afin que le fichier généré soit conservé et écrit sur disque (80 par défaut). C'est-à-dire que par défaut, les fichiers générés doivent être traduits à plus de 80% pour être écrits.
-h, --help
Affiche un message d'aide.
-M, --master-charset
Jeu de caractères des fichiers contenant les documents à traduire. Notez que tous les documents maîtres doivent partager le même jeu de caractères pour l'instant. C'est une limitation connue ; nous travaillons à sa résolution.
-L, --localized-charset
Jeu de caractères des fichiers contenant les documents traduits. Notez que tous les documents traduits doivent partager le même jeu de caractères pour l'instant. C'est une limitation connue ; nous travaillons à sa résolution.
-A, --addendum-charset
Jeu de caractères des addenda. Notez que tous les ajouts doivent partager le même jeu de caractères.
-V, --version
Affiche la version du script et quitte.
-v, --verbose
Rend le programme plus bavard.
-q, --quiet
Rend le programme moins bavard.
-d, --debug
Affiche quelques informations de débogage.
-f, --force
Génère toujours les fichiers POT et PO, même si po4a considère que ce n'est pas nécessaire.

Le comportement par défaut (quand l'option --force n'est pas utilisée) est le suivant :

-o, --option
Passe une ou des options supplémentaires au greffon de format. Spécifiez chaque option en utilisant le format « nom=valeur ». Veuillez vous référer à la documentation de chaque greffon pour la liste des options valides et leurs significations.

Si le fichier POT existe déjà, il est regénéré si un document maître ou le fichier de configuration est plus récent. De plus, le fichier POT est écrit dans un document temporaire, et po4a vérifie que les modifications valent le coût.
De plus, une traduction est mise à jour seulement si le document maître, le fichier PO, un de ses addenda ou le fichier de configuration est plus récent. Pour éviter de retenter de créer une traduction qui ne passe pas le test du seuil (voir l'option --keep), un fichier avec une extension « .po4a-stamp » peut être créé (voir l'option --stamp).

Si un document maître inclue d'autres fichiers, vous devriez utiliser l'option --force parce que les dates de modification de ces fichiers ne sont pas prises en compte.
Les fichiers PO sont toujours regénéré en fonction du POT avec msgmerge -U.
--stamp
Indique à po4a de créer des fichiers d'horodatage quand une traduction n'a pas été générée par ce qu'elle ne dépasse pas le seuil de traduction. Ces fichiers d'horodatage sont nommés en ajoutant l'extension .po4a-stamp au nom du fichier à générer.

Note : Cette option ne concerne que la création des fichiers .po4a-stamp. Ces fichiers d'horodatage sont toujours utilisés s'ils existent et sont retirés quand l'option --rm-translations est utilisée ou quand le fichier est finalement traduit.

--no-translations
Ne génère pas les documents traduits, ne met à jour que les fichiers POT et PO.
--rm-translations
Supprime les documents traduits (implique --no-translations).
--no-backups
Ne génère pas les fichiers .po~ de sauvegarde.
--rm-backups
Supprime les fichiers .po~ de sauvegarde (implique --no-backups).
--variable var=valeur
Définit une variable dont toutes les occurrences seront remplacées dans le fichier de configuration de po4a. Les occurrences de $(var) seront remplacées par valeur. Cette option peut être utilisée plusieurs fois.
--msgid-bugs-address adresse@email
Fixe l'adresse à laquelle les bogues des msgid doivent être envoyés. Par défaut, les fichiers POT créés n'ont pas de champ Report-Msgid-Bugs-To.
--copyright-holder chaîne
Fixe le détenteur du copyright dans l'en-tête du fichier POT. La valeur par défaut est « Free Software Foundation, Inc. ».
--package-name chaîne
Fixe le nom du paquet pour l'en-tête du fichier POT. La valeur par défaut est « PACKAGE ».
--package-version chaîne
Fixe la version du paquet pour l'en-tête du fichier POT. La valeur par défaut est « VERSION ».
--msgmerge-opt options
Options additionnelles pour msgmerge.
--previous
Cette option ajoute « --previous » aux options passées à msgmerge. Elle nécessite une version 0.16 ou ultérieure de gettext.

DÉFAUTS

*
Duplique du code des autres programmes de la suite po4a.

Toute rustine est la bien venue ;)

VOIR AUSSI

po4a(7), po4a-gettextize(1), po4a-updatepo(1), po4a-translate(1), po4a-normalize(1).

AUTEURS

  Denis Barbier <barbier@linuxfr.org>
  Martin Quinson (mquinson#debian.org)
 
 

TRADUCTION

  Martin Quinson (mquinson#debian.org)
 
 
Copyright 2002, 2003, 2004 par SPI, inc.

Ce programme est un logiciel libre ; vous pouvez le copier et / ou le modifier sous les termes de la GPL (voir le fichier COPYING).