Provided by: po4a_0.73-2ubuntu1_all bug

NOM

       po4a - Mettre à jour à la fois les fichiers PO et les documents traduits

SYNOPSIS

       po4a [options] fichier_de_configuration

DESCRIPTION

       po4a (PO pour tout - PO for anything) facilite la maintenance de la traduction de la documentation en
       utilisant les outils gettext classiques. La principale caractéristique de po4a est qu'il découple la
       traduction du contenu de la structure du document. Référez-vous à la page po4a(7) pour une introduction
       en douceur à ce projet.

       Lors de son exécution, po4a analyse tous les fichiers de documentation spécifiés dans son fichier de
       configuration. Il met à jour les fichiers PO (contenant les traductions) pour refléter toute modification
       de la documentation, et génère une documentation traduite en injectant la traduction du contenu (trouvée
       dans les fichiers PO) dans la structure du document d'origine.

       Dans un premier temps, les fichiers PO ne contiennent que les chaines à traduire de la documentation
       originale. Ce format de fichier permet aux équipes de traduction de fournir manuellement une traduction
       pour chaque paragraphe extrait par po4a. Si la documentation est modifiée après la traduction, po4a
       marque les traductions correspondantes comme « approximatives » (« fuzzy ») dans le fichier PO pour
       demander une révision manuelle par les équipes de traductions. Celles-ci peuvent également fournir ce que
       l'on appelle des « addendas », qui sont des contenus supplémentaires indiquant, par exemple, qui a
       effectué la traduction et comment signaler les bogues.

        documents d'origine ----+---->-------->----------+
           (écriture)          |                        |
                                   V  (exécutions de po4a)  >-----+-->  documents
                                   |                              |  |   traduits
       fichiers PO existants -->--> fichiers PO mis à jour >--+  |
                     ^                            |                  |
                     |                            V                  |
                     +----------<---------<-------+                  ^
                   (processus de traduction manuelle)                |
                                                                     |
                addendum -->-----------------------------------------+

       Le flux de travail de po4a est asynchrone, comme il convient aux projets de logiciels libres. Les
       rédacteurs de la documentation rédigent les documents d'origine à leur propre rythme. Les équipes de
       traduction révisent et actualisent les traductions dans les fichiers PO. Les responsables exécutent po4a
       de nouveau au besoin, pour refléter toute modification de la documentation originale dans les fichiers
       PO, et pour produire des traductions de documentation mises à jour, en injectant la dernière traduction
       dans la dernière structure de document.

       Par défaut, un document traduit est produit lorsqu’au moins 80 % de son contenu est traduit. Le texte non
       traduit est conservé dans la langue d'origine. La documentation produite mélange donc les langues si la
       traduction n'est pas complète. Vous pouvez modifier le seuil de 80 % avec l'option --keep décrite ci-
       dessous. Notez cependant qu'écarter les traductions dès qu'elles ne sont pas complètes à 100 % peut être
       décourageant pour les équipes de traduction dont le travail ne sera presque jamais publié, tandis que
       montrer des traductions trop partielles peut être troublant pour les personnes qui en dépendent.

       Stocker les fichiers de documentation traduits dans le système de contrôle de version est probablement
       une mauvaise idée, puisqu'ils sont générés automatiquement. Les fichiers précieux sont les fichiers PO,
       qui contiennent le dur labeur de vos équipes de traduction. Par ailleurs, certaines personnes trouvent
       qu'il est plus facile d'interagir avec celles-ci par le biais d'une plateforme en ligne telle que
       weblate, mais cela est bien entendu totalement facultatif.

   Tutoriel de démarrage rapide
       Supposons que vous mainteniez un programme nommé chapi ayant une page de manuel man/chapi.1 écrite en
       anglais (la langue passerelle dans la plupart des projets libres, mais po4a peut être utilisé depuis ou
       vers n'importe quelle langue). Il y a quelque temps, quelqu'un a fourni une traduction allemande nommée
       man/chapi.de.1 et a disparu. C'est un problème, car vous venez de recevoir un rapport de bogue signalant
       une information gravement trompeuse devant être corrigée dans toutes les langues. Mais, vous ne parlez
       pas allemand, et vous ne pouvez donc modifier que l'original, pas la traduction. Maintenant, un autre
       contributeur veut contribuer à une traduction en japonais, une langue que vous ne maitrisez pas non plus.

       Il est temps de convertir votre documentation à po4a pour résoudre vos cauchemars de maintenance de la
       documentation. Vous voulez actualiser la documentation lorsque cela est nécessaire, faciliter le travail
       de vos équipes de traduction, et vous assurer qu'une documentation périmée et donc trompeuse n’est jamais
       publiée.

       La conversion comprend deux étapes : la mise en place de l'infrastructure po4a, et la conversion de la
       traduction allemande existante pour sauver le travail précédent. Cette dernière partie est effectuée en
       utilisant po4a-gettextize, comme suit. Tel que détaillé dans la documentation de po4a-gettextize(1), ce
       processus est rarement entièrement automatique. En revanche, une fois réalisé, le fichier de.po contenant
       la traduction allemande peut être intégré dans votre flux de travail po4a.

         po4a-gettextize --format man --master chapi.1 --localized chapi.de.1 --po de.po

       Configurons maintenant po4a. Avec la disposition appropriée des fichiers, votre fichier de configuration
       pourrait être aussi simple que ceci :

        [po_directory] man/po4a/

        [type: man] man/chapi.1 $lang:man/translated/chapi.$lang.1

       Elle spécifie que tous les fichiers PO (contenant le travail des équipes de traduction) se trouvent dans
       le répertoire man/po4a/, et que vous n'avez qu'un seul fichier d'origine, man/chapi.1. Si vous aviez
       plusieurs fichiers d'origine, vous auriez plusieurs lignes semblables à la seconde. Chacune de ces lignes
       spécifie également où écrire les fichiers de traduction correspondants. Ici, la traduction allemande de
       man/chapi.1 se trouve dans man/translated/chapi.de.1.

       La dernière chose dont nous avons besoin pour terminer la configuration de po4a est un fichier POT
       contenant le contenu modèle qui doit être utilisé pour commencer une nouvelle traduction. Il suffit de
       créer un fichier vide avec l'extension .pot dans le répertoire po_directory spécifié (par exemple
       man/po4a/chapi.pot), et po4a le remplira avec le contenu attendu.

       Voici un récapitulatif des fichiers de cette configuration :

         ├── man/
       │   ├── chapi.1        ← La page de manuel originale, en anglais.
       │   ├── po4a/
       │   │   ├── de.po    ← Le fichier PO en allemand, issu de la gettextisation.
       │   │   └── chapi.pot  ← Le modèle POT pour les traductions futures (vide au départ).
       │   └── translated/  ← Répertoire où les fichiers de traduction seront créés.
       └── po4a.cfg         ← Le fichier de configuration.

       Une fois configuré, l'exécution de po4a analysera votre documentation, mettra à jour le fichier modèle
       POT, l'utilisera pour actualiser les fichiers de traduction PO, qui permettront à leur tour de générer
       les fichiers de traduction de la documentation mis à jour. Tout cela en une seule commande :

               po4a po4a.cfg

       C’est tout. po4a est maintenant entièrement configuré. Une fois que vous aurez corrigé votre erreur dans
       man/chapi.1, le paragraphe incriminé dans la traduction allemande sera remplacé par le texte corrigé en
       anglais. Mélanger les langues n’est pas optimal, mais c’est le seul moyen de supprimer les erreurs dans
       les traductions que vous ne comprenez pas et de vous assurer que les contenus publié ne sont jamais
       erronés. La mise à jour de la traduction allemande est également beaucoup plus facile dans le fichier PO
       correspondant, de sorte que le mélimélo linguistique peut ne pas durer longtemps. Enfin, lorsque l'équipe
       de traduction japonaise voudra proposer une nouvelle traduction, elle devra renommer fichier chapi.pot en
       ja.po, puis effectuer la traduction. Une fois le fichier en votre possession, déposez-le simplement dans
       man/po4a/po/. La page traduite apparaitra sous la forme man/translated/chapi.ja.1 (à condition que
       suffisamment de contenu soit traduit) lorsque vous exécuterez po4a à nouveau.

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 sur le disque.

       -w, --width
           Nombre de colonnes dans le fichier de sortie, si le format le prend en charge (par défaut : 76).

       -h, --help
           Affiche un message d’aide.

       -M, --master-charset
           Jeu  de  caractères  des  fichiers  contenant  les  documents à traduire. Notez que tous les fichiers
           d'origine doivent utiliser le même jeu de caractères.

       -L, --localized-charset
           Jeu de caractères des fichiers contenant  les  documents  traduits.  Notez  que  tous  les  documents
           traduits doivent utiliser le même jeu de caractères.

       -A, --addendum-charset
           Jeu de caractères des addendas. 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.

       -o, --option
           Passe  une  ou  des  options supplémentaires au greffon de format. Référez-vous à la documentation de
           chaque greffon pour la liste des options valides et leurs significations. Par exemple, vous  pourriez
           passer  «  -o  tablecells  » à l'analyseur AsciiDoc, tandis que l'analyseur de texte accepterait « -o
           tabs=split ».

       -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 :

               Si le fichier POT existe déjà,  il  est  recréé  si  un  document  d'origine  ou  le  fichier  de
               configuration  est  plus  récent (sauf si l'option --no-update est utilisée). De plus, le fichier
               POT est écrit dans un document temporaire, et po4a vérifie que les modifications valent le coup.

               De plus, une traduction est mise à jour seulement si le document d'origine, le fichier PO, un  de
               ses addendas 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 d'origine inclut 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 recréés 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 parce
           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.

       --no-update
           Ne modifiez pas les fichiers POT et PO, seule la traduction peut être changée.

       --keep-translations
           Garde les traductions existantes même si la traduction ne satisfait pas le seuil spécifié par --keep.
           Cette  option  ne  va pas créer de fichiers peu traduits, mais elle préservera les fichiers existants
           dont la quantité de traduction décroit à cause de changements dans les fichiers d'origine.

           ATTENTION ! Cette option change profondément le comportement de po4a. Vos fichiers traduits ne seront
           plus modifiés jusqu'à ce que la traduction soit  améliorée.  N'utilisez  cette  option  que  si  vous
           préférez  distribuer  une traduction obsolète bien traduite plutôt qu'une traduction à jour, mais mal
           traduite.

       --rm-translations
           Supprime les documents traduits (implique --no-translations).

       --no-backups
           Cette option ne fait rien depuis la version 0.41, et pourra être enlevée des prochaines versions.

       --rm-backups
           Cette option ne fait rien depuis la version 0.41, et pourra être enlevée des prochaines versions.

       --translate-only fichier-traduit
           Traduit uniquement le fichier indiqué. Il est parfois utile d’accélérer le processus si le fichier de
           configuration contient beaucoup de fichiers. Remarquez qu’avec cette option, les fichiers PO  et  POT
           ne seront pas mis à jour. Cette option peut être utilisée plusieurs fois.

       --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.

       --srcdir RÉP_SRC
           Définit  le  répertoire  de  base  pour  tous  les  documents  d’entrée  indiqués  dans le fichier de
           configuration de po4a.

           Si destdir et srcdir sont renseignés, les fichiers d’entrée sont cherchés dans les dossiers  suivants
           et  dans  cet  ordre : destdir, le dossier courant et srcdir. Les fichiers de sortie sont écrits dans
           destdir si renseigné, sinon dans le dossier courant.

       --destdir RÉP_DEST
           Définit le répertoire de base pour  tous  les  documents  de  sortie  indiqués  dans  le  fichier  de
           configuration de po4a (voir --srcdir ci-dessus).

   Options modifiant l’en-tête du POT
       --porefs type
           Indique  le format des références. L’argument type peut-être never pour ne pas produire de référence,
           file pour n’indiquer que le fichier sans le numéro de ligne, counter  pour  remplacer  le  numéro  de
           ligne par un décompte croissant, et full pour inclure des références complètes (par défaut, la valeur
           full est utilisée).

       --wrap-po no|newlines|nombre (par défaut : 76)
           Détermine  la  façon  de  formater  le  fichier  po.  Cela donne le choix entre des fichiers joliment
           reformatés mais pouvant mener à des conflits git, ou des fichiers  plus  facile  à  prendre  en  main
           automatiquement, mais plus difficile à lire pour les humains.

           Historiquement,  la  suite  gettext  a  formaté  les  fichiers  po  à la 77e colonne pour des raisons
           cosmétiques. Cette option indique le comportement de po4a. Si  défini  en  tant  qu’entier,  po4a  va
           restreindre  la  largeur  du fichier après cette colonne et après les nouvelles lignes de contenu. Si
           défini à newlines, po4a ne séparera les msgit  et  msgstr  qu’après  les  nouvelles  lignes  dans  le
           contenu.  Si  défini  à no, po4a ne restreindra pas du tout le fichier. Les commentaires de référence
           sont toujours limités par les outils gettext que nous utilisons en interne.

           Veuillez noter que cette option n’a pas  d’impact  sur  la  façon  dont  les  msgid  et  msgstr  sont
           renvoyées,  c'est-à-dire  sur  la  façon  dont  les  nouvelles lignes sont ajoutées au contenu de ces
           chaînes.

       --master-language
           Langue des fichiers source contenant les documents à traduire. Notez que tous les fichiers  d'origine
           doivent partager la même langue.

       --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 ».

   Options de modification des fichiers PO
       --msgmerge-opt options
           Options additionnelles pour msgmerge(1).

           Note : $lang sera remplacé par la langue en cours.

       --no-previous
           Cette option supprime --previous des options passées à msgmerge. Elle est nécessaire pour la prise en
           charge des versions de gettext antérieures à 0.16.

       --previous
           Cette  option  ajoute  --previous  aux options passées à msgmerge. Elle nécessite une version 0.16 ou
           ultérieure de gettext et est activée par défaut.

FICHIER DE CONFIGURATION

       po4a attend un fichier de configuration en paramètre. Ce fichier doit contenir les éléments suivants :

       •   Le chemin vers les fichiers PO et la liste des langues existantes dans le projet ;

       •   En option, quelques options globales et ce qu’on appelle des alias de configuration utilisés en  tant
           que modèles pour configurer des fichiers d'origine individuels ;

       •   La liste de chaque fichier d'origine à traduire, avec les paramètres spécifiques.

       Toutes  les  lignes  contiennent  une commande entre crochets, suivie de ses paramètres. Les commentaires
       commencent par le caractère «#» et vont jusqu'à la fin de la ligne. Vous pouvez échapper  la  fin  de  la
       ligne (avec \) pour étaler une commande sur plusieurs lignes.

       Quelques  exemples  complets  sont  présentés  sur  cette page, tandis que d'autres exemples peuvent être
       trouvés dans le répertoire "t/cfg" de la distribution source.

   Trouver les fichiers PO et POT
       La solution la plus simple est de donner explicitement le chemin des fichiers POT et PO, comme ceci :

        [po4a_paths] man/po/project.pot de:man/po/de.po fr:man/po/fr.po

       Cela spécifie d'abord le chemin d'accès au fichier POT, puis les chemins d'accès aux fichiers PO allemand
       et français.

       La même information peut être écrite comme suit pour réduire le risque d'erreurs de copier/coller :

        [po4a_langs] fr de
        [po4a_paths] man/po/project.pot $lang:man/po/$lang.po

       L'élément $lang est automatiquement développé à l'aide de la liste des langues fournie, ce qui réduit  le
       risque d'erreur de copier/coller lorsqu'une nouvelle langue est ajoutée.

       Vous  pouvez  en  outre  compacter  les mêmes informations en fournissant uniquement le chemin d'accès au
       répertoire contenant votre projet de traduction, comme suit.

        [po_directory] man/po/

       Le répertoire fourni doit contenir un ensemble de fichiers PO, nommés XX.po, "XX" étant le code ISO 639-1
       de la langue utilisée dans ce fichier. Le répertoire doit également contenir un seul  fichier  POT,  avec
       l'extension  de  fichier  ".pot".  Pour  la  première  exécution, ce fichier peut être vide, mais il doit
       exister (po4a ne peut pas deviner le nom à utiliser avant l'extension).

       Notez bien que vous devez choisir entre "po_directory" et "po4a_paths". Le premier  ("po_directory")  est
       plus  compact,  réduit  le  risque d'erreur de copier/coller, mais vous oblige à utiliser la structure de
       projet et les noms de fichiers attendus. Le second ("po4a_paths"), est plus explicite, probablement  plus
       lisible, et conseillé lorsque vous configurez votre premier projet avec po4a.

       Fichier PO unique ou fractionné ?

       Par  défaut,  po4a produit un seul fichier PO par langue cible, contenant tout le contenu de votre projet
       de traduction. À mesure  que  votre  projet  se  développe,  la  taille  de  ces  fichiers  peut  devenir
       problématique.  Lors  de l'utilisation de weblate, il est possible de spécifier des priorités pour chaque
       segment de traduction (c'est-à-dire, msgid) afin que les plus  importants  soient  traduits  en  premier.
       Toutefois, certaines équipes de traduction préfèrent diviser le contenu en plusieurs fichiers.

       Pour  avoir  un fichier PO par fichier d'origine, il vous suffit d'utiliser la chaine $master dans le nom
       de vos fichiers PO sur la ligne "[po4a_paths]", comme suit.

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

       Avec cette ligne, po4a produira des fichiers POT et PO séparés  pour  chaque  document  à  traduire.  Par
       exemple,  si  vous  avez  3 documents et 5 langues, vous obtiendrez 3 fichiers POT et 15 fichiers PO. Ces
       fichiers sont nommés comme indiqué dans le modèle "po4a_paths", avec $master substitué au nom de base  de
       chaque  document  à  traduire. En cas de conflit de noms, vous pouvez spécifier le fichier POT à utiliser
       comme suit, avec le paramètre "pot=".

       Cette fonction peut également être utilisée pour regrouper  plusieurs  fichiers  traduits  dans  un  même
       fichier  POT.  L'exemple  suivant  ne  produit  que  deux  fichiers POT : l10n/po/chapi.pot (contenant le
       matériel  de  chapi/gui.xml)  et  l10n/po/chapo.pot  (contenant   le   matériel   de   chapo/gui.xml   et
       chapo/cli.xml).

        [po4a_langs] de fr ja
        [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
        [type: xml] chapi/gui.xml $lang:chapi/gui.$lang.xml pot=chapi
        [type: xml] chapo/gui.xml $lang:chapo/gui.$lang.xml pot=chapo
        [type: xml] chapo/cli.xml $lang:chapo/cli.$lang.xml pot=chapo

       En  mode  réparti, po4a construit un compendium temporaire pendant la mise à jour des PO afin de partager
       les traductions entre l’ensemble des fichiers PO. Si deux fichiers PO  ont  des  traductions  différentes
       pour  la  même  chaine, po4a marquera ces deux chaines comme étant approximatives (fuzzy) et ajoutera les
       deux traductions dans tous les fichiers PO contenant cette chaine. Une fois corrigée par les  équipes  de
       traduction, la traduction sera automatiquement utilisée dans tous les fichiers PO.

   Spécification des documents à traduire
       Vous devez également lister les documents à traduire. Pour chaque fichier d'origine, vous devez spécifier
       l'analyseur  de format à utiliser, l'emplacement du document traduit et éventuellement une configuration.
       Les noms de fichiers devraient être fournis entre guillemets ou en utilisant des séquences  d'échappement
       s'ils contiennent des espaces. Voici un exemple :

        [type: sgml] "doc/my stuff.sgml"  "fr:doc/fr/mon truc.sgml"  de:doc/de/mein\ kram.sgml
        [type: man] script fr:doc/fr/script.1 de:doc/de/script.1
        [type: docbook] doc/script.xml fr:doc/fr/script.xml \
                    de:doc/de/script.xml

       Mais  là  aussi, ces lignes complexes sont difficiles à lire et à modifier, par ex. lors de l'ajout d'une
       nouvelle langue. Il est beaucoup plus simple de réorganiser les choses en utilisant le modèle $lang comme
       ceci :

        [type: sgml]    doc/mon_truc.sgml $lang:doc/$lang/mon_truc.sgml
        [type: man]     script.1          $lang:po/$lang/script.1
        [type: docbook] doc/script.xml    $lang:doc/$lang/script.xml

   Renseigner les options
       Il y a deux types d'options : les options po4a sont les valeurs  par  défaut  des  options  de  ligne  de
       commande po4a tandis que les options de format sont utilisées pour changer le comportement des analyseurs
       de format. En tant qu'options po4a, vous pouvez par exemple spécifier dans votre fichier de configuration
       que la valeur par défaut du paramètre de ligne de commande --keep est 50% au lieu de 80%. Les <Options de
       format>   sont   documentées   sur   la   page   spécifique   de   chaque   module   d'analyse,  par  ex.
       Locale::Po4a::Xml(3pm). Vous pouvez par exemple passer nostrip à l'analyseur XML pour  ne  pas  supprimer
       les espaces autour des chaînes extraites.

       Vous  pouvez  transmettre  ces  options pour un fichier d'origine spécifique, ou même pour une traduction
       spécifique de ce fichier, en utilisant "opt:" et "opt_XX:" pour la langue "XX". Dans  l'exemple  suivant,
       l'option  nostrip est passée à l'analyseur XML (pour toutes les langues), tandis que le seuil sera réduit
       à 0% pour la traduction française (qui est donc toujours conservée).

        [type:xml] toto.xml $lang:toto.$lang.xml opt:"-o nostrip" opt_fr:"--keep 0"

       Dans tous les cas, ces blocs de configuration doivent être situés à la fin de la  ligne.  La  déclaration
       des fichiers doit venir en premier, puis l'addendum le cas échéant (voir plus loin), et ensuite seulement
       les  options.  Le regroupement des blocs de configuration n'est pas très important, car les éléments sont
       concaténés en interne sous forme de chaines. Les exemples suivants sont tous équivalents :

         [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20" opt:"-o nostrip" opt_fr:"--keep 0"
         [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20 -o nostrip" opt_fr:"--keep 0"
         [type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0

       Notez que les options spécifiques à la langue ne sont pas utilisées lors de la création du  fichier  POT.
       Il  est  par  exemple impossible de passer nostrip à l'analyseur uniquement lors de la construction de la
       traduction française, car le même fichier POT est utilisé pour mettre à jour toutes les  langues.  Ainsi,
       les  seules  options  qui  peuvent être spécifiques à la langue sont celles qui sont utilisées lors de la
       production de la traduction, comme l'option "--keep".

       Configuration des alias

       Pour transmettre les mêmes options à plusieurs fichiers, le mieux est de définir un alias de  type  comme
       suit.  Dans  l'exemple  suivant,  "--keep 0" est passé à chaque traduction italienne en utilisant ce type
       "test", qui est une extension du type "man".

         [po4a_alias:test] man opt_it:"--keep 0"
         [type: test] man/page.1 $lang:man/$lang/page.1

       Vous pouvez également étendre un type existant en réutilisant le même nom pour l'alias comme  suit.  Cela
       n’est pas interprété en tant que définition récursive erronée.

         [po4a_alias:man] man opt_it:"--keep 0"
         [type: man] man/page.1 $lang:man/$lang/page.1

       Options globales par défaut

       Vous  pouvez  également  utiliser les lignes d’"[options]" pour définir des options devant être utilisées
       pour tous les fichiers, indépendamment de leur type.

         [options] --keep 20 --option nostrip

       Comme pour les options en ligne de commande, vous pouvez abréger les paramètres passés dans le fichier de
       configuration :

         [options] -k 20 -o nostrip

       Priorités des options

       Les options de toutes les sources  sont  concaténées,  assurant  que  les  valeurs  par  défaut  puissent
       facilement être remplacées par des options plus spécifiques. L’ordre est le suivant :

       •   Les  lignes  "[options]"  fournissent  les  valeurs  par défaut pouvant être remplacées par n’importe
           quelle autre source.

       •   Puis les alias de  types  sont  utilisés.  Les  paramètres  spécifiques  de  langue  remplacent  ceux
           applicables à toutes les langues.

       •   Les  paramètres  qui sont spécifiques à un fichier master remplacent les valeurs par défaut et celles
           venant du type alias. Dans ce cas également, les paramètres  spécifiques  de  langue  remplacent  les
           valeurs globales.

       •   Enfin,  les  paramètres fournis via la ligne de commande po4a remplacent tout paramètre du fichier de
           configuration.

       Exemple

       Voici un exemple montrant comment renseigner les espaces et apostrophes :

        [po_directory] man/po/

        [options] --master-charset UTF-8

        [po4a_alias:man] man opt:"-o \"mdoc=NAME,SEE ALSO\""
        [type:man] t-05-config/test02_man.1 $lang:tmp/test02_man.$lang.1 \
                   opt:"-k 75" opt_it:"-L UTF-8" opt_fr:--verbose

   Addendum : Ajouter des contenus dans la traduction
       Si vous souhaitez ajouter une section supplémentaire à la traduction, par  exemple  pour  mentionner  les
       équipes  de  traduction,  vous  devez définir un addendum à la ligne définissant votre fichier d'origine.
       Référez-vous à la page po4a(7) pour en savoir plus sur la syntaxe des fichiers addendum.

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

       Vous pouvez également utiliser des modèles de langue comme suit :

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

       Si l'application d'un addendum échoue, la traduction est rejetée.

       Modificateurs pour la déclaration d'un addendum

       Les modificateurs d'addendum peuvent simplifier le fichier de configuration dans le  cas  où  toutes  les
       langues ne fournissent pas d'addendum, ou lorsque la liste des addendas change d'une langue à l'autre. Le
       modificateur est un seul caractère situé avant le nom du fichier.

       ? Inclure l’addendum si le fichier existe, rien sinon.

       @ addendum  n’est  pas un fichier addendum normal, mais un fichier contenant une liste d’addendas, un par
         ligne. Chaque addendum peut être précédé de modificateurs.

       ! addendum n’est pas pris en compte, il n’est pas chargé et ne le sera pas lors de toute autre indication
         d’addendum.

       Ce qui suit inclut un addendum dans n'importe quelle langue, mais seulement s'il  existe.  Aucune  erreur
       n'est signalée si l'addendum n'existe pas.

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

       Ce qui suit inclut un addendum pour chaque langue :

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

   Filtrer les chaines traduites
       Parfois,  vous  souhaitez  masquer  certaines  chaines au processus de traduction. Pour cela, vous pouvez
       donner un paramètre "pot_in" à votre fichier d'origine pour spécifier le nom du fichier à utiliser  à  la
       place du vrai fichier d'origine lors de la construction du fichier POT. Voici un exemple :

         [type:docbook] book.xml          \
                 pot_in:book-filtered.xml \
                 $lang:book.$lang.xml

       Avec ce paramètre, les chaînes à traduire seront extraites du book-filtered.xml (qui doit être créé avant
       d'appeler  po4a) tandis que les fichiers traduits seront construits à partir de book.xml. Par conséquent,
       toute chaîne qui fait partie de book.xml mais pas de book-filtered.xml  ne  sera  pas  incluse  dans  les
       fichiers  PO,  empêchant les équipes de traduction de fournir une traduction qui leur corresponde. Ainsi,
       ces chaînes ne seront  pas  modifiées  lors  de  la  production  des  documents  traduits.  Cela  diminue
       naturellement  le  niveau  de  traduction,  vous  pouvez donc avoir besoin de l'option "--keep" pour vous
       assurer que le document est produit dans tous les cas.

VOIR AUSSI

       po4a-gettextize(1), po4a(7).

AUTEURS

        Denis Barbier <barbier@linuxfr.org>
        Nicolas François <nicolas.francois@centraliens.net>
        Martin Quinson (mquinson#debian.org)

TRADUCTION

        Martin Quinson (mquinson#debian.org)

COPYRIGHT ET LICENCE

       Copyright 2002-2023 SPI, inc.

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

perl v5.38.2                                       2024-08-28                                         PO4A.1P(1)