Provided by: po4a_0.73-2ubuntu1_all bug

NOM

       Locale::Po4a::Sgml - Convertir des documents SGML depuis ou vers des fichiers PO

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.

       Locale::Po4a::Sgml est un module qui permet d’aider la traduction de documentations au format SGML vers
       d’autres langues.

       Ce module utilise onsgmls(1) pour analyser les fichiers SGML. Assurez vous qu’il est bien installé et que
       la DTD des fichiers SGML est bien installée sur le système.

OPTIONS ACCEPTÉES PAR CE MODULE

       debug
           Liste  de  mots clefs séparés par des espaces et indiquant quelles catégories de messages de débogage
           supplémentaire devraient être affichées. Les valeurs possibles sont "entities", "generic",  "onsgml",
           "refs" et "tag".

       verbose
           Donne plus d’informations sur ce qu’il se passe.

       translate
           Liste  de  balises  supplémentaires  (en plus de celles fournies par la DTD) séparées par des espaces
           dont le contenu doit former des msgid additionnels, c’est-à-dire pour être traduites.

       section
           Liste de balises supplémentaires (en plus de celles fournies par la DTD)  pouvant  contenir  d’autres
           balises, qui peuvent être à traduire (catégorie translate).

       indent
           Liste  de balises, séparées par des espaces, qui augmentent le niveau d’indentation. Ceci va impacter
           l’indentation du document résultant.

       verbatim
           Le formatage du texte contenu dans ces balises ne doit pas être modifié.  Aucun  retour  à  la  ligne
           n’est ajouté dans les paragraphes et aucune espace pour l’indentation ou nouvelle ligne n’est ajoutée
           pour des raisons cosmétiques.

       empty
           Balises n’ayant pas besoin d’être fermées.

       ignore
           Les balises ignorées et considérées comme étant du texte brut par po4a. C’est-à-dire qu’elles peuvent
           faire  partie  d’un  msgid.  Par  exemple, <b> est un bon candidat pour cette catégorie puisqu’en les
           mettant dans la catégorie translate (à traduire), cela aurait eu pour conséquence de créer des  msgid
           avec seulement son contenu (en général, pas des phrases complètes), ce qui n’est pas bien.

       attributes
           Une  liste  d’attributs  de  balises  (séparés par des espaces) que vous voulez traduire. Vous pouvez
           spécifier les attributs par leur nom (par exemple, "lang"), mais vous pouvez aussi les faire précéder
           d’une hiérarchie de balises pour indiquer que cet attribut ne sera traduit que quand il sera placé  à
           l’intérieur  d’une balise. Par exemple : "<bbb><aaa>lang" indique que l’attribut lang ne sera traduit
           que s’il se trouve dans une balise "<aaa>", se trouvant elle-même dans une balise "<bbb>". Le nom des
           balises est en fait une expression rationnelle, ce qui vous permet de  spécifier  "<aaa|bbb>lang"  si
           vous ne voulez traduire que les attributs "lang" qui se trouvent dans une balise "<aaa>" ou "<bbb>".

       qualify
           Une  liste d’attributs séparés par des espaces pour lesquels la traduction doit être qualifiée par le
           nom d’attribut, c’est à dire le texte extrait pour la traduction qui inclura aussi  bien  le  nom  de
           l’attribut et sa valeur. Par exemple, dans le cas d’une balise comme "<aaa lang_en="foo">", la chaine
           affichée  pour  la  traduction  sera "lang_en="foo"". Notez que ceci ajoute également automatiquement
           l’attribut donné à la liste d’attributs.

       force
           Continue même si la DTD est inconnue ou si onsgmls trouve des erreurs dans le document d’entrée.

       include-all
           Par défaut, les msgid qui ne contiennent qu’une entité (comme « "&version;" ») sont  sautés  pour  le
           confort  des  équipes  de  traduction. Activer cette option arrête cette optimisation. Ceci peut être
           utile si le document contient une construction telle que "<title>&Aacute;</title>", même s’il est peu
           probable que cela arrive...

       ignore-inclusion
           Liste d’entités, séparées par des espaces, qui ne seront pas insérées.  Utilisez  cette  option  avec
           précaution :  elle  peut  forcer onsgmls (qui est utilisé en interne) à ajouter des tags et rendre le
           document généré non valable.

ÉTAT DE CE MODULE

       Le résultat est parfait. C’est-à-dire que  les  documents  générés  sont  rigoureusement  identiques  aux
       originaux. Mais il reste encore quelques problèmes :

       • Les  messages d’erreur de onsgmls sont redirigés vers /dev/null par défaut, ce qui n’est pas bien, mais
         je ne sais pas comment éviter cela.

         Le problème est que j’ai à « protéger » les inclusions conditionnées (c’est à dire « "<! [  %truc  [" »
         et  « "]]>"  machin »)  de  onsgmls. Sinon, onsgmls les élimine, et je ne sais pas les rétablir dans le
         document final. Pour empêcher cela, je les récris dans "{PO4A-beg-truc}" et "{PO4A-end}".

         Le problème avec cela est que les "{PO4A-end}" et autres sont non valables dans le document (sauf  dans
         une balise <p> ou autre).

         Si  vous  souhaitez  afficher  la  sortie  d’onsgmls,  il suffit d’ajouter ce qui suit à votre ligne de
         commande (ou à la ligne de configuration po4a) :

           -o debug=onsgmls

       • Cela ne marche qu’avec les DTD DebianDoc et DocBook. L’ajout de prise en charge d’une nouvelle DTD doit
         être très facile. Le mécanisme est le même pour chaque DTD,  vous  n’avez  qu’à  donner  la  liste  des
         balises existantes et certaines de leurs caractéristiques.

         Je  comprend que cela nécessiterait plus de documentation, mais c’est toujours considéré comme à l’état
         bêta, et je déteste documenter ce qui risque de/va changer.

       • Attention, la prise en charge des DTD est plutôt expérimentale. Je n’ai lu aucun  manuel  de  référence
         pour  trouver  la  définition  de  toutes ces balises. J’ai ajouté des définitions de balises au module
         jusqu’à ce que ça marche pour certains documents trouvés sur Internet. Si votre document  utilise  plus
         de  balises  que  les  miens, ça ne marchera pas. Mais, comme je l’ai dit plus haut, corriger cela doit
         être assez facile.

         J’ai testé le format DocBook avec le SAG (System  Administrator  Guide  --  Guide  de  l’Administrateur
         Système)  uniquement,  mais  comme  ce  document  est  assez important, il doit utiliser la plupart des
         spécificités de DocBook.

         Pour le format DebianDoc, je l’ai testé avec certains manuels du DDP, mais pas encore avec tous.

       • En cas d’inclusion d’un fichier, les références des messages du PO (c.-à-d., les lignes de la forme "#:
         en/titletoc.sgml:9460") seront erronées.

         Cela est dû  au  fait  que  j’applique  un  prétraitement  au  fichier  pour  protéger  les  inclusions
         conditionnelles  (utilisant  « "<!  [  %truc  [" »  et  « "]]>"  machin »)  et  quelques entités (comme
         "&version;") de onsgmls parce que je les veux telles quelles dans le document  généré.  Pour  cela,  je
         fais  une  copie  temporaire  du  fichier d’entrée et effectue toutes les modifications que je veux lui
         appliquer avant de le passer à onsgmls pour son analyse.

         Pour que ça fonctionne, je remplace les entités demandant l’inclusion d’un fichier par  le  contenu  du
         fichier  donné (comme cela je peux également protéger ce qui doit être dans le sous-fichier). Mais rien
         n’est fait à présent pour corriger les références (c.-à-d. les noms des  fichiers  et  les  numéros  de
         ligne) par la suite. Je ne sais pas ce qui est préférable.

AUTEURS

       Ce module est une adaptation de sgmlspl (postprocesseur SGML pour l’analyseur ONSGMLS), qui était :

        Copyright © 1995 David Megginson <dmeggins@aix1.uottawa.ca>

       L’adaptation de po4a a été faite par :

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

TRADUCTION

        Martin Quinson (mquinson#debian.org)

COPYRIGHT ET LICENCE

        Copyright © 1995 David Megginson <dmeggins@aix1.uottawa.ca>
        Copyright © 2002, 2003, 2004, 2005 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                          LOCALE::PO4A::SGML.3PM(1)