Provided by: po4a_0.47-2_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.

       This module uses onsgmls(1) to parse the SGML files. Make sure it is installed. Also make
       sure that the DTD of the SGML files are installed in the system.

OPTIONS ACCEPTÉES PAR CE MODULE

       debug
           Liste de mots clefs séparés par des espaces et indiquant quelles parties vous voulez
           déboguer. Les valeurs possibles sont : tag, generic, entities et refs.

       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.

       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.

       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 que des msgid n'auraient pas été 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|bbbb>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. Notez que cette option ajoute aussi automatiquement
           l'attribut donné à la liste d'attributs.

       force
           Proceed even if the DTD is unknown or if onsgmls finds errors in the input file.

       include-all
           Par défaut, les msgid qui ne contiennent qu'une entité (comme « &version; ») sont
           sautés pour le confort du traducteur. Activer cette option arrête cette optimisation.
           Ceci peut être utile si le document contient une construction telle que
           « <title&Aacute;</title> »,> même si je doute que ça puisse arriver...

       ignore-inclusion
           Space separated list of entities that won't be inlined. Use this option with caution:
           it may cause onsgmls (used internally) to add tags and render the output document
           invalid.

ÉTAT DE CE MODULE

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

       • The error output of onsgmls is redirected to /dev/null, which is clearly bad. I don't
         know how to avoid that.

         The problem is that I have to "protect" the conditional inclusions (i.e. the "<! [ %foo
         [" and "]]>" stuff) from onsgmls. Otherwise onsgmls eats them, and I don't know how to
         restore them in the final document. To prevent that, I rewrite them to "{PO4A-beg-foo}"
         and "{PO4A-end}".

         The problem with this is that the "{PO4A-end}" and such I add are invalid in the
         document (not in a <p> tag or so).

         Everything works well with onsgmls's output redirected that way, but it will prevent us
         from detecting that the document is badly formatted.

       • Ceci 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 ceci 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, le support des DTD est plutôt expérimental. 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.

         This is because I preprocess the file to protect the conditional inclusion (i.e. the "<!
         [ %foo [" and "]]>" stuff) and some entities (like &version;) from onsgmls because I
         want them verbatim to the generated document. For that, I make a temp copy of the input
         file and do all the changes I want to this before passing it to onsgmls for parsing.

         Pour que ça fonctionne, je remplace les entités demandant l'inclusion d'un fichier par
         le contenu du fichier donné (comme ceci 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

       This module is an adapted version of sgmlspl (SGML postprocessor for the ONSGMLS parser)
       which was:

        Copyright (c) 1995 par 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 (c) 1995 par David Megginson <dmeggins@aix1.uottawa.ca>
        Copyright 2002, 2003, 2004, 2005 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).