Provided by: po4a_0.69-1_all bug

NAAM

       Locale::Po4a::Sgml - SGML-documenten van/naar PO-bestanden converteren

BESCHRIJVING

       Het doel van het project po4a (PO voor alles) is om de vertaalwerkzaamheden (en interessanter nog, het
       onderhoud van vertalingen) te vergemakkelijken met behulp van gettext-hulpmiddelen in domeinen waarin
       deze niet meteen verwacht worden, zoals documentatie.

       Locale::Po4a::Sgml is een module ter ondersteuning van de vertaling van documentatie in de SGML-indeling
       naar andere [menselijke] talen.

       Deze module gebruikt onsgmls(1) om de SGML-bestanden te ontleden. Zorg ervoor dat dit geïnstalleerd is.
       Zorg er ook voor dat de DTD van de SGML-bestanden op het systeem geïnstalleerd zijn.

MOGELIJKE OPTIES BIJ DEZE MODULE

       debug
           Door  spaties  gescheiden  lijst  met  trefwoorden  die aangeven welk deel u wilt debuggen. Mogelijke
           waarden zijn: tag, generic, entities en refs.

       verbose
           Meer informatie geven over wat gaande is.

       translate
           Door spaties gescheiden lijst van extra tags (naast de door DTD verstrekte tags)  waarvan  de  inhoud
           een extra msgid moet vormen.

       section
           Door  spaties  gescheiden  lijst  van  extra tags (naast de door DTD verstrekte tags) die andere tags
           bevatten, waarvan sommige van categorie translate zijn.

       indent
           Door spaties gescheiden lijst met tags die het insprongniveau verhogen.

       verbatim
           Binnen deze tags mag de opmaak niet gewijzigd worden. Op de alinea zal geen regelafbreking  toegepast
           worden  en  er  zal geen extra insprongruimte en geen nieuwe regel toegevoegd worden voor cosmetische
           doeleinden.

       empty
           Tags welke niet gesloten moeten worden.

       ignore
           Genegeerde tags welke door po4a beschouwd worden als gewone lettertekens. Dit wil zeggen dat zij deel
           kunnen uitmaken van een msgid. Bijvoorbeeld is <b> een goede kandidaat voor deze categorie, want  dit
           plaatsen  in de sectie translate (vertalen), zou msgid's creëren welke geen volledige zinnen zijn, en
           dat is niet goed.

       attributes
           Een door spaties gescheiden lijst met attributen welke vertaald moeten worden. U kunt  de  attributen
           bij  hun  naam opgeven (bijvoorbeeld "lang"), maar u kunt ze ook laten voorafgaan door een hiërarchie
           van tags, om aan te geven dat dit attribuut enkel vertaald zal worden  wanneer  het  zich  binnen  de
           opgegeven  tag  bevindt. Bijvoorbeeld: <bbb><aaa>lang geeft aan dat het attribuut lang enkel vertaald
           zal worden als het zich binnen een <aaa>-tag bevindt, welke zich op zijn beurt binnen  een  <bbb>-tag
           moet  bevinden.  De  namen  van  tags  zijn  eigenlijk  reguliere expressies, en dus kunt u ook zaken
           schrijven zoals <aaa|bbbb>lang om het attribuut lang enkel te vertalen wanneer het  zich  binnen  een
           tag <aaa> of <bbb> bevindt.

       qualify
           Een  door  spaties  gescheiden  lijst met attributen waarvoor de vertaling moet worden gekwalificeerd
           door de naam van het attribuut. Merk op dat deze optie ook automatisch het gegeven attribuut toevoegt
           aan de lijst met attributen.

       force
           Doorgaan, zelfs als de DTD onbekend is of als onsgmls fouten vindt in het invoerbestand.

       include-all
           Standaard worden msgid's, welke slechts één entiteit (zoals '&version;') bevatten, overgeslagen  voor
           het comfort van de vertaler. Het activeren van deze optie voorkomt deze optimalisatie. Dit kan nuttig
           zijn als het document een constructie bevat, zoals "<title>&Aacute;</title>", hoewel ik eraan twijfel
           dat dergelijke zaken ooit voorkomen...

       ignore-inclusion
           Door  spaties  gescheiden lijst van entiteiten die niet worden geïntegreerd in de tekst. Gebruik deze
           optie voorzichtig: ze kan ervoor zorgen dat onsgmls (dat intern gebruikt wordt) tags toevoegt en  het
           uitvoerdocument ongeldig maakt.

STATUS VAN DEZE MODULE

       Het  resultaat  is  perfect.  Dat wil zeggen dat de gegenereerde documenten exact hetzelfde zijn. Maar er
       zijn nog steeds enkele problemen:

       • Standaard wordt de foutuitvoer van onsgmls omgeleid naar /dev/null, wat duidelijk niet goed is. Ik weet
         niet hoe dit vermeden kan worden.

         Het probleem is dat ik de voorwaardelijke insluitingen (d.w.z. de zaken "<! [ %foo ["  en  "]]>")  moet
         "beschermen"  tegen onsgmls. Anders eet onsgmls ze op, en ik weet niet hoe ik ze moet herstellen in het
         uiteindelijke document. Om dat te voorkomen, herschrijf ik ze naar "{PO4A-beg-foo}" en "{PO4A-end}".

         Het probleem hiermee is dat de "{PO4A-end}" en dergelijke, welke  ik  toevoeg,  ongeldig  zijn  in  het
         document (behalve in een <p>-tag of zo).

         Indien u de onsgmls-uitvoer wilt zien, moet u gewoon het volgende toevoegen aan uw commandoregel (of in
         de po4a configuratieregel):

           -o debug=onsgmls

       • Het  werkt  enkel  met  de  DebianDoc  en  DocBook DTD. Ondersteuning toevoegen voor een nieuwe DTD zou
         makkelijk moeten zijn. het mechanisme is hetzelfde voor elke DTD. U dient gewoon een lijst op te  geven
         met de tags en bepaalde van hun karakteristieken.

         Ik  ga  ermee  akkoord  dat dit wat meer documentatie kan gebruiken, maar het wordt nog steeds als bèta
         beschouwd en ik heb er een hekel aan om documentatie te maken voor zaken die kunnen/zullen veranderen.

       • Waarschuwing:   ondersteuning   voor   DTD's   is   eerder   experimenteel.   Ik   las   geen    enkele
         referentiehandleiding  om  de  definitie te vinden van elke tag. Ik voegde aan de module tag-definities
         toe tot ze werkte voor sommige documenten die ik op het internet vond. Indien in uw document meer  tags
         gebruikt  worden  dan  in  het  mijne, zal het niet werken. Maar zoals ik hiervoor reeds zegde, zou het
         redelijk makkelijk moeten zijn om dit aan te passen.

         Ik testte DocBook enkel met de SAG (System Administrator Guide),  maar  dit  is  een  behoorlijk  groot
         document en het zou gebruik moeten maken van de meeste van de specifieke kenmerken van DocBook.

         Voor DebianDoc testte ik met een aantal handleidingen van het DDP, maar nog niet met allemaal.

       • In  het  geval  er bestanden ingesloten worden, zullen de tekstfragmentreferenties van berichten in PO-
         bestanden (d.w.z. regels zoals "#: en/titletoc.sgml:9460") fout zijn.

         Dit is omdat ik een voorbehandeling toepas op het bestand om de voorwaardelijke insluitingen (d.w.z. de
         zaken "<! [ %foo [" en "]]>") en sommige entiteiten (zoals &version;)  af  te  schermen  voor  onsgmls,
         omdat  ik ze woordelijk in het gegenereerde document wil. Om die reden maak ik een tijdelijke kopie van
         het invoerbestand waarop ik alle gewenste  veranderingen  aanbreng,  vooraleer  ik  dat  ter  ontleding
         doorgeef aan onsgmls.

         Om  dit  te laten werken, vervang ik de entiteiten die vragen om de insluiting van een bestand, door de
         inhoud van het gegeven bestand (zodat ik ook in een subbestand de zaken die moeten afgeschermd  worden,
         kan  afschermen). Maar voorlopig werd nog niets gedaan om achteraf de referenties te corrigeren (d.w.z.
         bestandsnaam en regelnummer). Ik weet niet zeker wat er best gedaan zou kunnen worden.

AUTEURS

       Deze module is een aanpassing van sgmlspl (SGML postprocessor voor de ONSGMLS-ontleder). Deze was:

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

       De aanpassing voor po4a gebeurde door:

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

COPYRIGHT EN LICENTIE

        Copyright © 1995 David Megginson <dmeggins@aix1.uottawa.ca>.
        Copyright © 2002-2005 SPI, Inc.

       Dit programma is vrije software; u kunt het verder verspreiden en/of aanpassen onder de bepalingen van de
       GPL (zie het bestand COPYING).

Po4a-hulpmiddelen                                  2023-01-03                            Locale::Po4a::Sgml(3pm)