Provided by: po4a_0.69-1_all bug

NAME

       po4a - PO-Dateien und übersetzte Dokumente auf einen Rutsch aktualisieren

ÜBERSICHT

       po4a [Optionen] Konfig_Datei

BESCHREIBUNG

       Po4a (PO für alles) erleichtert die Pflege von Dokumentationsübersetzungen mittels der klassischen
       Gettext-Werkzeuge. Die Hauptfunktionalität von Po4a besteht darin, dass sie die Übersetzung des
       Dokumenteninhaltes von der Dokumentenstruktur entkoppelt. Bitte schauen Sie in die Seite po4a(7) für eine
       schonende Einführung in dieses Projekt.

       Bei der Ausführung wertet po4a alle in seiner Konfigurationsdatei festgelegten Dokumentationsdateien aus.
       Es aktualisiert die PO-Dateien (die die Übersetzung enthalten), um alle Änderungen an der Dokumentation
       abzubilden, und erstellt die übersetzte Dokumentation, indem der Inhalt der Übersetzung (wie er sich in
       den PO-Dateien befindet) in die Struktur des ursprünglichen Master-Dokumentes eingespeist wird.

       Zuerst enthalten die PO-Dateien nur die zu übersetzenden Zeichenketten aus der ursprünglichen
       Dokumentation. Dieses Dateiformat erlaubt es den Übersetzern, manuell eine Übersetzung für jeden Absatz,
       der von po4a herausgelöst wurde, bereitzustellen. Falls die Dokumentation nach der Übersetzung verändert
       wird, markiert po4a die entsprechende Übersetzung als »fuzzy« (unscharf) in der PO-Datei. Damit wird um
       eine manuelle Begutachtung durch die Übersetzer gebeten. Die Übersetzer können auch ein sogenanntes
       »addendum« bereitstellen, das zusätzliche Inhalte bereitstellt, in denen beispielsweise angegeben wird,
       wer die Übersetzung angefertigt hat und wie Fehler berichtet werden sollen.

           Masterdokumente  ---+---->-------->------>------>----+
        (Dokumentenerstellung) |                                |
                               V        (Po4a-Ausführung)       >-----+--> übersetzte
                               |                                |     |    Dokumente
        bestehende PO-Dateien ->---> aktualisierte PO-Dateien >-+     |
                ^                               |               |
                |                               V               |
                +----------<----------<---------+               ^
                 (manueller Übersetzungsprozess)                |
                                                                |
        Addendum -->--------------------------------------------+

       Der Arbeitsablauf in po4a ist asynchron, passend für Open-Source-Projekte. Der Dokumentenersteller
       schreibt das Master-Dokument in seiner eigenen Geschwindigkeit. Die Übersetzer prüfen und aktualisieren
       die Übersetzungen in den PO-Dateien. Die Betreuer führen bei Bedarf po4a erneut aus, um alle Änderungen
       an der Ursprungsdokumentation in den PO-Dateien wiederzugeben und aktualisierte Dokumentenübersetzungen
       bereitzustellen, indem sie die neusten Übersetzungen in die neuste Dokumentenstruktur einspeisen.

       Standardmäßig wird ein angegebenes Dokument erstellt, wenn mindestens 80% seines Inhalts übersetzt ist.
       Der nicht übersetzte Text wird in der Ursprungssprache behalten. Die erstellte Dokumentation mischt daher
       die Sprachen, falls die Übersetzung nicht vollständig ist. Sie können den Schwellwert von 80% mit der
       oben beschriebenen Option --keep ändern. Beachten Sie aber, dass das Verwerfen von Übersetzungen, sobald
       sie nicht mehr zu 100% erfüllt sind, für die Übersetzer entmutigend sein kann, deren Arbeit fast nie dem
       Benutzer angezeigt wird, während das Zeigen von »Übersetzungen«, die zu unvollständig sind, bei
       Endbenutzer zu Verdruß führen kann.

       Das Speichern der übersetzten Dokumentationsdateien in dem Versionssteuerungssystem ist wahrscheinlich
       eine schlechte Idee, da diese Dateien automatisch erstellt werden. Die wertvollen Dateien sind die PO-
       Dateien, die die harte Arbeit ihrer Mitübersetzer enthalten. Auch finden es manche Leute einfacher, mit
       den Übersetzern durch eine Online-Plattform wie weblate zu interagieren, aber dieses ist natürlich
       vollständig optional.

   Schnellstartanleitung
       Nehmen wir an, dass Sie ein Programm namens foo betreuen, das eine auf englisch geschriebene
       Handbuchseite man/foo.1 enthält. (Englisch wird in den meisten Open-Source-Projekten als Brückensprache
       verwandt, aber po4a kann in jeder Sprachkombination eingesetzt werden). Vor einiger Zeit stellte jemand
       eine deutsche Übersetzung mit dem Namen man/foo.de.1 bereit und verschwand. Dies ist ein Problem, da Sie
       gerade einen Fehlerbericht bekommen haben, der Sie informiert, dass Ihre Dokumentation eine grob
       irreführende Information enthält, die in allen Sprachen korrigiert werden muss. Sie sprechen aber kein
       Deutsch, so dass Sie nur das Ursprungsdokument korrigieren können, nicht die Übersetzung. Und jetzt
       möchte ein anderer Beitragender eine japanische Übersetzung erstellen und Sie sprechen auch kein
       japanisch.

       Jetzt ist es Zeit, Ihre Dokumentation nach po4a umzuwandeln, um Ihre Dokumentations-Wartungs-Albträume zu
       lösen. Sie möchten Ihre Dokumentation je nach Bedarf ändern können, Sie möchten die Arbeit ihrer
       Mitübersetzer erleichtern und Sie möchten sicherstellen, dass Ihre Benutzer niemals veraltete und daher
       irreführende Dokumentation sehen.

       Die Umwandlung besteht aus zwei Schritten: Einrichtung der Po4a-Infrastruktur und der Umwandlung der
       bisherigen deutschen Übersetzung, um die bisherige Arbeit zu retten. Letzterer Teil erfolgt mittels
       po4a-gettextize wie folgt beschrieben. Wie im Detail in po4a-gettextize(1) dargestellt, ist der Prozess
       selten vollautomatisch, aber wenn er einmal erledigt ist, dann enthält die Datei de.po die deutsche
       Übersetzung, die in Ihren Po4a-Arbeitsablauf integriert werden kann.

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

       Lassen Sie uns nun Po4a konfigurieren. Bei geeigneter Anordung der Dateien, könnte die
       Konfigurationsdatei so einfach wie folgende sein:

        [po_directory] man/po4a/

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

       Sie legt fest, dass alle PO-Dateien (die die Arbeit der Übersetzer enthalten) im Verzeichnis man/po4a/
       liegen und dass Sie eine Master-Datei man/foo.1 haben. Falls Sie mehrere Master-Dateien haben, hätten Sie
       mehrere Zeilen ähnlich der zweiten Zeile. Jeder dieser Zeilen gibt auch an, wohin die entsprechenden
       Übersetzungsdateien geschrieben werden sollen. Hier ist die deutsche Übersetzung von man/foo.1 in
       man/translated/foo.de.1.

       Das letzte, was wir zum Abschluss der Konfiguration von po4a benötigen, ist eine POT-Datei, die das
       Vorlagenmaterial enthält, das zum Starten einer neuen Übersetzung verwandt werden soll. Erstellen Sie
       einfach eine leere Datei mit der Endung .pot im festgelegten po_directory (z.B. man/po4a/foo.pot) und
       po4a wird sie mit dem erwarteten Inhalt ausfüllen.

       Hier ist eine kurze Wiederholung dieser Installation:

         ├── man/
         │   ├── foo.1        <- Die ursprüngliche Handbuchseite in englischer Sprache.
         │   ├── po4a/
         │   │   ├── de.po    <- Die deutsche PO-Übersetzung aus der Gettextisierung.
         │   │   └── foo.pot  <- Die POT-Vorlage für zukünftige Übersetzung (am Anfang leer)
         │   └── translated/  <- Verzeichnis, in das die Übersetzungen hin erzeugt werden
         └── po4a.cfg         <- Die Konfigurationsdatei.

       Sobald die Installation erfolgt ist, wird po4a Ihre Dokumentation auswerten, die POT-Vorlagendatei
       aktualisieren und diese zur Aktualisierung der PO-Übersetzungsdateien und zur Aktualisierung der
       Dokument-Übersetzungsdateien verwenden. Alles in einem Befehl:

               po4a --verbose po4a.cfg

       Das wars. po4a ist jetzt vollständig konfiguriert. Sobald Sie die Fehler in man/foo.1 behoben haben, wird
       der betroffene Absatz in der deutschen Übersetzung durch den korrigierten Absatz auf Englisch ersetzt.
       Das Mischen der Sprachen ist nicht optimal, aber es ist die einzige Möglichkeit, Fehler in Übersetzungen
       zu beheben, die Sie nicht mal verstehen und sicherzustellen, dass der den Benutzern dargestellte Inhalt
       niemals irreführend ist. Das Aktualisieren der deutschen Übersetzung ist in der entsprechenden PO-Datei
       auch viel leichter, so dass der Sprachen-Mix nicht sehr lange vorliegen könnte. Wenn dann schließlich der
       japanische Übersetzer Ihnen eine übersetzte Datei jp.po gibt, legen Sie diese einfach in man/po4a/po/ ab.
       Wenn Sie dann po4a wieder ausführen, erscheint einfach eine übersetzte Datei als man/translated/foo.jp.1
       (vorausgesetzt, dass genug Inhalt übersetzt ist).

OPTIONEN

       -k, --keep
           Minimaler  Schwellwert  in  Prozent,  ab  der  die übersetzte Datei erhalten (d.h. geschrieben) wird,
           standardmäßig 80. D.h., standardmäßig müssen Dateien zu 80% übersetzt sein, um auf Platte geschrieben
           zu werden.

       -h, --help
           zeigt eine kurze Hilfemeldung an

       -M, --master-charset
           Zeichensatz der Dateien, die die zu  übersetzenden  Dokumente  enthalten.  Beachten  Sie,  dass  alle
           Master-Dokumente im gleichen Zeichensatz vorliegen müssen.

       -L, --localized-charset
           Zeichensatz  der  Dateien,  die  die  lokalisierten  Dokumente  enthalten.  Beachten  Sie,  dass alle
           übersetzte Dateien den gleichen Zeichensatz verwenden werden.

       -A, --addendum-charset
           Zeichensatz der Addenda. Beachten Sie, dass alle Addenda im gleichen Zeichensatz vorliegen sollten.

       -V, --version
           zeigt die Version des Skripts und beendet sich

       -v, --verbose
           Erhöhen der Ausführlichkeit des Programms

       -q, --quiet
           Verringern der Ausführlichkeit des Programms

       -d, --debug
           Fehlersuch- (Debug-)Informationen ausgeben

       -o, --option
           Extraoption(en), die an die Formaterweiterung übergeben werden  soll.  Lesen  Sie  die  Dokumentation
           jeder  Erweiterung  für  weitere  Informationen  über  die  gültigen  Optionen  und ihre Bedeutungen.
           Beispielsweise könnten Sie dem  AsciiDoc-Auswerter  »-o  tablecells«  übergeben,  während  der  Text-
           Auswerter »-o tabs=split« akzeptierte.

       -f, --force
           immer die POT- und PO-Dateien erstellen, selbst wenn po4a dies nicht für notwendig betrachtet

           Das Standardverhalten (wenn --force nicht angegeben ist) ist wie folgt:

               Falls  die POT-Datei bereits existiert, wird sie neu erstellt, falls ein Master-Dokument oder die
               Konfigurationsdatei neuer ist (außer --no-update ist angegeben). Die POT-Datei wird auch  in  ein
               temporäres Dokument geschrieben und po4a überprüft, dass die Änderungen wirklich benötigt werden.

               Eine Übersetzung wird auch nur neu erstellt, falls das Master-Dokument, die PO-Datei, einer ihrer
               Addenda  oder  die  Konfigurationsdatei  neuer  ist.  Um  zu  vermeiden,  dass die Erstellung von
               Übersetzungen, die die Schwellwertbarriere nicht erreichen, versucht wird  (siehe  --keep),  kann
               eine Datei mit der Erweiterung .po4a-stamp erstellt werden (siehe --stamp).

           Falls  ein  Master-Dokument  Dateien  einbindet,  soillten Sie den Schalter --force verwenden, da der
           Änderungszeitpunkt dieser eingebundenen Dateien nicht mit betrachtet wird.

           Die PO-Dateien werden basierend auf der POT-Datei mittels msgmerge -U neu erstellt.

       --stamp
           Sorgt dafür, dass po4a Stempeldateien erstellt, wenn eine Übersetzung nicht erstellt  wurde,  da  sie
           den  Schwellwert nicht erreichte. Diese Stempeldateien werden entsprechend des erwarteten übersetzten
           Dokuments, mit der Erweiterung .po4a-stamp, benannt.

           Hinweis: Dies aktiviert nur die Erstellung der .po4a-stamp-Dateien. Die Stempeldateien  werden  immer
           benutzt,  falls  sie existieren, und sie werden mit --rm-translations oder wenn die Datei schließlich
           übersetzt ist entfernt.

       --no-translations
           die übersetzten Dokumente nicht erstellen, nur die POT- und PO-Dateien aktualisieren

       --no-update
           die POT- und PO-Dateien nicht ändern, nur die Übersetzung darf aktualisiert werden.

       --keep-translations
           behält die existierenden Übersetzungsdateien, selbst falls die Übersetzung  nicht  die  durch  --keep
           festgelegte  Schwelle  erreicht.  Dies wird keine Übersetzungsdateien mit wenigen Inhalten erstellen,
           sondern bestehende Dateien sichern, deren Übersetzungen aufgrund von Änderungen an den Master-Dateien
           verfallen.

           WARNUNG: Dieser Schalter ändert das Verhalten von Po4a ziemlich drastisch: Ihre  übersetzten  Dateien
           werden  überhaupt  nicht  aktualisiert,  bis  die  Übersetzung  verbessert wird. Verwenden Sie diesen
           Schalter nur, falls Sie die Auslieferung von veralteter Dokumentation gegenüber einer akuraten  nicht
           übersetzten Dokumentation bevorzugen.

       --rm-translations
           entfernt die übersetzten Dateien (impliziert --no-translations)

       --no-backups
           Seit  Version  0.41  macht  dieser Schalter nichts und könnte daher in zukünftigen Veröffentlichungen
           entfernt werden.

       --rm-backups
           Seit Version 0.41 macht dieser Schalter nichts und könnte  daher  in  zukünftigen  Veröffentlichungen
           entfernt werden.

       --translate-only übersetzte-Datei
           Nur  die  angegebene  Datei übersetzen. Das kann nützlich sein, um die Verarbeitung zu beschleunigen,
           falls die Konfigurationsdatei eine Reihe Dateien enthält. Beachten Sie, dass diese  Optione  die  PO-
           und POT-Dateien nicht aktualisiert. Diese Option kann mehrfach angewandt werden.

       --variable Var=Wert
           Definiert  eine  Variable,  die  in der po4a-Konfigurationsdatei expandiert wird. Jedes Vorkommen von
           $(Var) wird durch Wert ersetzt. Diese Option kann mehrfach verwandt werden.

       --srcdir QUELLVERZ
           setzt das Basisverzeichnis für alle Eingabedokumente, die in der Konfigurationsdatei  po4a  angegeben
           sind

           Falls  sowohl  ZIELVERZ  als auch QUELLVERZ festgelegt sind, wird in den folgenden Verzeichnissen, in
           dieser Reihenfolge, nach Eingabedateien gesucht: ZIELVERZ, das aktuelle  Verzeichnis  und  QUELLVERZ.
           Ausgabedateien werden in das ZIELVERZ, falls angegeben, oder in das aktuelle Verzeichnis geschrieben.

       --destdir ZIELVERZ
           setzt  das  Basisverzeichnis  für  alle  in der po4a-Konfigurationsdatei angegebenen Dokumente (siehe
           --srcdir weiter oben).

   Optionen, die die POT-Kopfzeilen verändern
       --porefs Typ
           Gibt das Referenzformat an. Das Argument Typ kann entweder never (keine Referenz erzeugen), file (nur
           die Datei ohne Zeilenzahlen festlegen), counter (alle Zeilennummern durch einen  ansteigenden  Zähler
           ersetzen) oder full (komplette Referenzen einbinden) sein. Die Vorgabe ist »full«.

       --wrap-po no|newlines|Zahl (Vorgabe: 76)
           Legt  fest,  wie  die PO-Datei umgebrochen werden soll. Dies ermöglicht die Auswahl zwischen Dateien,
           die schön  umgebrochen  sind  aber  zu  GIT-Konflikten  führen  können  oder  Dateien,  die  leichter
           automatisch handzuhaben, aber schwerer für Menschen zu lesen sind.

           Aus  kosmetischen  Gründen  hat die Gettext-Programmsammlung PO-Dateien in der 77.Spalte umgebrochen.
           Diese Option legt das Verhalten von Po4a fest. Falls auf einen numerischen Wert  gesetzt,  wird  Po4a
           die  PO-Datei  nach  dieser  Spalte  und nach Zeilenumbrüchen im Inhalt umbrechen. Falls auf newlines
           gesetzt, wird Po4a die msgid und msgstr nur nach Zeilenumbrüchen im Inhalt auftrennen. Falls  auf  no
           gesetzt,  wird  Po4a  die PO-Datei überhaupt nicht umbrechen. Die Referenzkommentare werden durch die
           von Po4a intern verwandten Gettext-Werkzeuge immer umgebrochen.

           Beachten Sie, dass diese Option keine Auswirkung darauf hat, wie msgid und msgstr umgebrochen werden,
           d.h. wie Zeilenumbrüche zu dem Inhalt dieser Zeilen hinzugefügt werden.

       --master-language
           Sprache der Quelldateien, die die zu übersetzenden  Dokumente  enthalten.  Beachten  Sie,  dass  alle
           Master-Dokumente in der gleichen Sprache vorliegen müssen.

       --msgid-bugs-address e-mail@adresse
           Setzt  die  E-Mail-Adresse,  an  die  Fehler  in  den  Meldungen  (msgid)  berichtet  werden  sollen.
           Standardmäßig haben die erstellten POT-Dateien keine »Report-Msgid-Bugs-To«-Felder.

       --copyright-holder Zeichenkette
           Setzt den Namen des Urhebers in den Kopfzeilen der POT-Datei. Standardmäßig ist dies  »Free  Software
           Foundation, Inc.«.

       --package-name Zeichenkette
           Setzt den Paketnamen für die POT-Kopfzeilen. Standardmäßig »PACKAGE«.

       --package-version Zeichenkette
           Setzt die Paketversion für die POT-Kopfzeilen. Standardmäßig »VERSION«.

   Optionen, um PO-Dateien zu verändern
       --msgmerge-opt Optionen
           Extraoptionen für msgmerge(1).

           Hinweis: $lang wird zur aktuellen Sprache erweitert.

       --no-previous
           Diese  Option  entfernt  --previous  aus den an msgmerge übergebenen Optionen. Dies ist notwendig, um
           Version von gettext-Versionen vor 0.16 zu unterstützen.

       --previous
           Diese Option fügt --previous zu den an msgmerge übergebenen Optionen  hinzu.  Dies  benötigt  gettext
           0.16 oder neuer und ist standardmäßig aktiviert.

KONFIGURATIONSDATEI

       Po4a erwartet eine Konfigurationsdatei als Argument. Diese Datei muss die folgenden Elemente enthalten:

       •   Den Pfad zu den PO-Dateien und der Liste der in dem Projekt existierenden Sprachen.

       •   Optional,  einige  globale  Optionen  und  sogenannte  Konfigurationsaliase,  die  als  Vorlagen  zur
           Konfiguration individueller Master-Dateien verwandt werden.

       •   Die Liste der zu übersetzenden Master-Dateien, zusammen mit speziellen Parametern.

       Alle Zeilen enthalten einen Befehl zwischen eckigen Klammern, gefolgt von seinen  Parametern.  Kommentare
       beginnen  mit dem Zeichen »#« und gehen bis zum Zeilenende. Sie können das Zeilenende maskieren, um einen
       Kommentar über mehrere Zeilen auszubreiten.

       In dieser Seite werden einige vollständige Beispiele vorgestellt, andere Beispiele können im  Verzeichnis
       "t/cfg" der Quelldistribution gefunden werden.

   Finden der PO- und POT-Dateien
       Die einfachste Lösung ist die explizite Angabe der Pfade zu den POT- und PO-Dateien, wie folgt:

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

       Die  speziellen  Pfade zu der POT-Datei zuerst, und dann die Pfade zu den deutschen und französischen PO-
       Dateien.

       Die gleiche Information kann wie folgt geschrieben werden, um das  Risko  von  Kopier-/Einfügefehlern  zu
       vermeiden:

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

       Die  Komponente  $lang  wird automatisch mittels der bereitgestellten Sprachliste ausgegeben, wodurch das
       Risiko von Kopieren-/Einfüge-Fehlern reduziert wird, wenn eine neue Sprache hinzugefügt wird.

       Die gleiche Information kann  noch  kompakter  geschrieben  werden,  indem  Sie  nur  die  Pfade  zu  dem
       Verzeichnis angeben, das Ihr Übersetzungsprojekt enthält, wie folgt:

        [po_directory] man/po/

       Das  bereitgestellte  Verzeichnis  muss eine Gruppe von PO-Dateien enthalten, jede mit Namen XX.po, wobei
       "XX" der ISO 631-Code der in dieser Datei verwandten Sprache ist. Das Verzeichnis muss auch eine einzelne
       POT-Datei enthalten, die die Endung ".pot" trägt. Beim ersten Lauf kann diese Datei leer sein,  sie  muss
       aber existieren (Po4a kann den Namen, der vor der Erweiterung zu verwenden ist, nicht erraten).

       Beachten  Sie,  dass  Sie  nur  einen  aus  "po_directory"  und  "po4a_paths"  auswählen dürfen. Ersterer
       ("po_directory") ist kompakter, reduziert das Risiko von Kopieren-/Einfügenfehlern weiter, erzwingt  aber
       die Verwendung von einer erwarteten Projektstruktur und Dateinamen. Die zweite Möglichkeit ("po4a_paths")
       ist  expliziter,  wahrscheinlich  lesbarer  und  wird  empfohlen,  wenn  Sie  Ihr erstes Projekt mit Po4a
       einrichten.

       Zentralisierte oder getrennte PO-Dateien?

       Standardmäßig erstellt Po4a eine einzelne  PO-Datei  pro  Zielsprache,  die  den  gesamten  Inhalt  Ihres
       Übersetzungsprojektes   enthält.   Mit  dem  Wachstum  Ihres  Projektes  könnte  die  Größe  der  Dateien
       problematisch werden. Bei der Verwendung von Weblate ist es möglich, für jedes Übersetzungssegment (d.h.,
       msgid) Prioritäten festzulegen, so  dass  wichtige  zuerst  übersetzt  werden.  Einige  Übersetzungsteams
       bevorzugen es aber weiterhin, den Inhalt in mehrere Teile zu trennen.

       Um eine PO-Datei pro Master-Datei zu erhalten, müssen Sie einfach die Zeichenkette $master im Namen Ihrer
       PO-Dateien auf der "[po4a_paths]"-Zeile wie folgt verwenden:

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

       Mit  dieser  Zeile  wird Po4a getrennte POT- und PO-Dateien für jedes zu übersetzende Dokument erstellen.
       Wenn Sie beispielsweise 3 Dokumente und 5 Sprachen haben, führt dies zu 3 POT-Dateien und 15  PO-Dateien.
       Diese  Dateien  werden  so  benannt, wie sie in der Vorlage "po4a_paths" festgelegt wurden, wobei $master
       durch den Basisnamen jedes der zu übersetzenden Dokumente ersetzt wird.  Im  Falle  von  Namenskonflikten
       können Sie mit dem Parameter "pot=" die zu verwendende POT-Datei festlegen.

       Diese  Funktionalität  kann  auch dazu verwandt werden, um mehrere übersetzte Dateien in die gleiche POT-
       Datei zu gruppieren. Das folgende Beispiel erstellt  nur  zwei  POT-Dateien:  l10n/po/foo.pot  (dass  das
       Material  aus foo/gui.xml enthält) und l10n/po/bar.pot (dass das Material aus sowohl bar/gui.xml als auch
       bar/cli.xml enthält).

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

       Im getrennten Modus baut po4a während  der  PO-Aktualisierung  ein  temporäres  Kompendium  auf,  um  die
       Übersetzungen  zwischen  allen  PO-Dateien gemeinsam zu benutzen. Falls zwei PO-Dateien eine verschiedene
       Übersetzung der gleichen Zeichenkette haben, wird po4a diese Zeichenkette mit »fuzzy« markieren und beide
       Übersetzungen in alle PO-Dateien einstellen, die diese Zeichenkette enthalten. Wenn  der  Übersetzer  die
       Zeichenkette bereinigt, dann wird die Übersetzung automatisch in jede PO-Datei übernommen.

   Angabe der zu übersetzenden Dokumente
       Sie  müssen  auch  die  zu  übersetzenden  Dokumente  aufführen.  Für jede Master-Datei müssen Sie den zu
       verwendenden Format-Auswerter, den Ort der zu erstellenden Dokumente und optional  weitere  Konfiguration
       festlegen. Beispiel:

        [type: sgml] dok/mein_zeug.sgml fr:dok/fr/mon_truc.sgml \
                     de:dok/de/mein_kram.sgml
        [type: man] script fr:dok/fr/script.1 de:dok/de/script.1
        [type: docbook] dok/script.xml fr:dok/fr/script.xml \
                    de:dok/de/script.xml

       Aber  diese  drei  komplexen Zeilen sind wieder schwer zu lesen und zu verändern, z.B. wenn neue Sprachen
       hinzugefügt werden. Es ist viel einfacher,  die  Dinge  neu  mittels  der  Vorlage  $lang  wie  folgt  zu
       organisieren:

        [type: sgml]    dok/mein_zeug.sgml $lang:dok/$lang/mein_zeug.sgml
        [type: man]     script.1           $lang:po/$lang/script.1
        [type: docbook] dok/script.xml     $lang:dok/$lang/script.xml

   Angabe der Optionen
       Es  gibt  zwei  Arten  von  Optionen: Po4a-Optionen sind Vorgabewerte für die Po4a-Befehlszeilenoptionen,
       während Formatoptionen zur Änderung  des  Verhaltens  der  Formatauswertprogramme  verwandt  werden.  Als
       Po4a-Option  könnten  Sie beispielsweise in Ihrer Konfigurationsdatei festlegen, dass der Vorgabewert für
       den Befehlszeilenparameter von --keep 50% statt 80% beträgt.  Formatoptionen  sind  in  ihren  speziellen
       Handbuchseiten   für   jedes   Auswertmodul   dokumentiert,   z.B.  Locale::Po4a::Xml(3pm).  Sie  könnten
       beispielsweise nostrip an das XML-Auswertprogramm übergeben, um die  Leerzeichen  rund  um  herausgelöste
       Zeichenketten nicht zu entfernen.

       Sie können diese Optionen für eine bestimmte Masterdatei oder sogar für eine bestimmte Übersetzung dieser
       Datei  mittels  "opt:"  und  "opt_XX:" für die Sprache "XX" übergeben. Im nachfolgenden Beispiel wird die
       Option nostrip für den XML-Auswerter (für alle Sprachen)  übergeben,  während  der  Schwellwert  für  die
       französische Übersetzung auf 0% reduziert wird (diese wird daher immer beibehalten).

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

       Auf  jeden  Fall  müssen  diese  Konfigurationsteile  sich  am Ende der Zeile befinden. Die Erklärung der
       Dateien muss zuerst kommen, dann das Addendum, falls vorhanden, (siehe unten) und dann nur die  Optionen.
       Die  Gruppierung der Konfigurationsteile ist nicht sehr wichtig, da die Elemente intern als Zeichenketten
       aneinandergehängt werden. Die folgenden Beispiele sind alle äquivalent:

         [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

       Beachten Sie, dass beim Bau von POT-Dateien die sprachspezifischen Optionen nicht verwandt werden. Es ist
       beispielsweise unmöglich, nostrip  nur  an  das  Auswertprogramm  zu  übergeben,  wenn  die  französische
       Übersetzung  gebaut wird, da die gleiche POT-Datei zur Aktualisierung aller Sprachen verwandt wird. Daher
       sind die einzigen sprachspezifischen Optionen diejenigen, die bei der Erstellung der Übersetzung verwandt
       werden können, wie die Option "--keep".

       Konfigurationsaliase

       Um die gleiche Option an mehrere Dateien zu übergeben, ist es am besten, wie  folgt  einen  Typ-Alias  zu
       definieren.  Im  nächsten  Beispiel  wird "--keep 0" an jede italienische Übersetzung mittels dieses Typs
       "test" übergeben, der eine Erweiterung des Typs "man" ist.

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

       Sie können auch einen bestehenden Typ wie folgt erweitern, um den gleichen Aliasnamen erneut zu benutzen.
       Dies wird nicht als fehlerhafte rekursive Definition interpretiert.

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

       Globale Vorgabeoptionen

       Sie können auch "[options]"-Zeilen verwenden, um Optionen zu definieren, die für alle Dateien, unabhängig
       von deren Typ, verwandt werden müssen.

         [options] --keep 20 --option nostrip

       Wie bei Befehlszeilenoptionen können Sie die in der Konfigurationsdatei übergebenen Parameter abkürzen:

         [options] -k 20 -o nostrip

       Optionsprioritäten

       Die Optionen jeder Quelle werden aneinandergehängt, wodurch sichergestellt wird,  dass  die  Vorgabewerte
       leicht durch speziellere Optionen außer Kraft gesetzt werden können. Die Reihenfolge ist wie folgt:

       •   "[options]"-Zeilen  stellen  Vorgabewerte  bereit,  die  durch jede andere Quelle außer Kraft gesetzt
           werden können.

       •   Dann werden Typ-Aliase  verwandt.  Sprachspezifische  Einstellungen  setzen  die  für  alle  Sprachen
           angewandten Einstellungen außer Kraft.

       •   Einstellungen,  die  für  eine  gegebene Master-Datei spezifisch sind, setzen sowohl die Vorgabe- als
           auch  die  von  Typ-Alias  kommenden  Einstellungen  außer  Kraft.  In  diesem   Fall   setzen   auch
           sprachspezifische Einstellungen die globalen außer Kraft.

       •   Schließlich  setzen  auf  der  po4a-Befehlszeile  bereitgestellte  Parameter  alle  Einstellungen aus
           Konfigurationsdateien außer Kraft.

       Beispiel

       Hier ist ein Beispiel, das zeigt, wie Leer- und Anführungszeichen maskiert werden:

        [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: Zusätzliche Inhalte in der Übersetzung hinzufügen
       Falls Sie einen  zusätzlichen  Abschnitt  zu  der  Übersetzung  hinzufügen  möchten,  beispielsweise  für
       Danksagungen  an  den Übersetzer, müssen Sie ein Addendum für die Zeile, die ihre Master-Datei definiert,
       hinzufügen. In der Handbuchseite po4a(7) finden Sie weitere Details zu der Syntax von Addendum-Dateien.

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

       Sie können wie folgt auch Sprachvorlagen verwenden:

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

       Falls ein Addendum nicht angewandt werden kann, wird die Übersetzung verworfen.

       Attribute für die Addendum-Angabe

       Addendum-Attribute können die Konfigurationsdatei in Fällen, in denen nicht alle  Sprachen  ein  Addendum
       bereitstellen oder wenn sich Addenda von Sprache zu Sprache verändern, vereinfachen. Das Attribut ist ein
       einzelnes Zeichen, das sich vor dem Dateinamen befindet.

       ? Berücksichtige Addendum_Pfad falls die Datei existiert, andernfalls passiert nichts.

       @ Addendum_Pfad  ist  kein  reguläres  Addendum,  sondern eine Datei, die eine Liste von Addenda enthält,
         eines pro Zeile. Jedem Addendum kann ein Modifikator vorangestellt sein.

       ! Addendum_Pfad  wird  verworfen,  es  wird  nicht   geladen   und   wird   auch   nicht   von   weiteren
         Addendumspezifikationen geladen.

       Folgendes  Beispiel  enthält  ein Addendum für jede Sprache, aber nur, falls es existiert. Falls es nicht
       existiert, wird kein Fehler gemeldet.

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

       Folgendes Beispiel enthält eine Liste von Addenda für jede Sprache:

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

   Übersetzte Zeichenketten filtern
       Manchmal möchten Sie einige Zeichenketten vor dem Übersetzungsprozess verstecken. Um dies  zu  erreichen,
       können Sie einen "pot_in"-Parameter an Ihre Masterdatei übegeben, um den Namen der Datei festzulegen, die
       statt des echten Masters für den Bau der POT-Datei verwandt werden soll. Hier ist ein Beispiel:

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

       Mit  dieser  Einstellung  werden  die  zu  übersetzenden Zeichenketten aus book-filtered.xml herausgelöst
       (diese Datei muss vor dem Aufruf von po4a erstellt worden sein),  während  die  übersetzten  Dateien  aus
       book.xml  heraus  gebaut  werden.  Damit wird jede Zeichenkette, die Teil von book.xml ist, aber nicht in
       book-filtered.xml vorkommt, nicht Teil der PO-Dateien sein und damit verhindert, dass die Übersetzer eine
       Übersetzung davon bereitstellen. Daher verbleiben diese  Zeichenketten  bei  der  Erstellung  übersetzter
       Dokumente unverändert. Damit wird logischerweise der Anteil der Übersetzung reduziert und Sie könnten die
       Option "--keep" verwenden müssen, um sicherzustellen, dass das Dokument trotzdem erstellt wird.

SIEHE AUCH

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

AUTOREN

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

URHEBERRECHT UND LIZENZ

       Copyright 2002-2022 SPI, Inc.

       Dieses Programm ist freie Software; Sie können es unter den Bedingungen der GPL (siehe die Datei COPYING)
       vertreiben und/oder verändern.

Po4a-Werkzeuge                                     2023-01-03                                           PO4A(1p)