
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 NAME

Locale::Po4a::Po - PO-Dateien-Manipulationsmodul

=head1 ÜBERSICHT

    use Locale::Po4a::Po;
    my $pofile=Locale::Po4a::Po->new();

    # PO-Datei einlesen
    $pofile->read('Datei.po');

    # Einen Eintrag hinzufügen
    $pofile->push('msgid' => 'Hello', 'msgstr' => 'bonjour',
                  'flags' => "wrap", 'reference'=>'file.c:46');

    # Eine Übersetzung herauslösen
    $pofile->gettext("Hello"); # returns 'bonjour'

    # In eine Datei zurückschreiben
    $pofile->write('Anderedatei.po');

=head1 BESCHREIBUNG

Locale::Po4a::Po ist ein Modul, das Ihnen die Bearbeitung von
Nachrichtenkatalogen ermöglicht. Sie können eine Datei laden und in sie
schreiben (deren Erweiterung oft I<po> lautet), Sie können dynamisch neue
Einträge hinzufügen oder um die Übersetzung einer Zeichenkette bitten.

Für eine umfangreichere Beschreibung der Nachrichtenkataloge im PO-Format
und ihren Einsatz lesen Sie bitte die Info-Dokumentation des
Gettext-Programms (Knoten »PO Files«).

Dieses Modul ist Teil des Po4a-Projekts, dessen Ziel es ist, PO-Dateien
(ursprünglich dazu erstellt, um die Übersetzung von Programmmeldungen zu
erleichtern) zur Übersetzung von allem einzusetzen, darunter Dokumentation
(Handbuchseiten, Info-Handbücher), Paketbeschreibungen, Debconf-Vorlagen und
allem, das daraus Nutzen ziehen kann.

=head1 VON DIESEM MODUL AKZEPTIERTE OPTIONEN

=over 4

=item B<--porefs> I<Typ>

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

=item B<--wrap-po> B<no>|B<newlines>|I<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 B<newlines>
gesetzt, wird Po4a die msgid und msgstr nur nach Zeilenumbrüchen im Inhalt
auftrennen. Falls auf B<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.

=item B<--msgid-bugs-address> I<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.

=item B<--copyright-holder> I<Zeichenkette>

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

=item B<--package-name> I<Zeichenkette>

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

=item B<--package-version> I<Zeichenkette>

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

=back

=head1 Funktionen, die gesamte Nachrichtenkataloge betreffen

=over 4

=item new()

Erstellt einen neuen Nachrichtenkatalog. Falls ein Argument angegeben ist,
ist es der Name der PO-Datei, die geladen werden soll.

=item read($)

Liest eine PO-Datei ein (deren Namen als Argument übergeben wird). Vorherige
Einträge in »self« werden nicht entfernt, die neuen werden am Ende des
Katalogs hinzugefügt.

=item write($)

schreibt den aktuellen Katalog in die übergebene Datei

=item write_if_needed($$)

Wie write, aber falls die PO- oder POT-Datei bereits existiert, wird das
Objekt in eine temporäre Datei geschrieben, die mit der bestehenden Datei
verglichen wird, um zu überprüfen, ob eine Aktualisierung benötigt wird
(dies vermeidet eine Änderung an der POT-Datei, um lediglich eine
Zeilenreferenz oder das Feld »POT-Creation-Date« zu aktualisieren).

=item filter($)

Diese Funktion löst einen Katalog aus einem bestehenden heraus. Nur die
Einträge, die eine Referenz in der angegebenen Datei haben, werden in dem
resultierenden Katalog eingefügt.

Diese Funktion wertet ihr Argument aus, konvertiert es in eine
Perl-Funktionsdefinition, wertet diese Definition aus und filtert die Felder
heraus, für die diese Funktion wahr zurückliefert.

Manchmal liebe ich Perl ;)

=back

=head1 Funktionen, die einen Nachrichtenkatalog für Übersetzungen verwenden

=over 4

=item gettext($%)

Erbittet die Übersetzung der als Argument übergebenen Zeichenkette im
aktuellen Katalog. Die Funktion liefert die ursprüngliche (unübersetzte)
Zeichenkette zurück, falls die Zeichenkette nicht gefunden wurde.

Nach der zu übersetzenden Zeichenkette können Sie einen Hash mit
zusätzlichen Argumenten übergeben. Dabei gibt es die folgenden gültigen
Einträge:

=over

=item B<wrap>

Logische Variable, die angibt, ob davon ausgegangen werden kann, dass
Leerzeichen in Zeichenketten nicht wichtig sind. Falls ja, überführt die
Funktion die Zeichenkette in eine kanonische Form, bevor sie nach einer
Übersetzung sucht, und bricht das Ergebnis um.

=item B<wrapcol>

die Spalte, an der umgebrochen werden soll (standardmäßig 76)

=back

=item stats_get()

Liefert Statistiken über das Trefferverhältnis von Gettext seit dem letzten
Aufruf von stats_clear() zurück. Beachten Sie, dass dies nicht die gleiche
Statistik ist, die von »msgfmt --statistic« ausgegeben wird. Hier berichtet
die Statistik über die kürzliche Verwendung der PO-Datei, während Msgfmt
über den Status der Datei berichtet. Beispiel:

    [einige Verwendung der PO-Datei, um Zeug zu übersetzen]

    ($percent,$hit,$queries) = $pofile->stats_get();
    print "Bisher wurden Übersetzungen für $percent\% ($hit von $queries) der Zeichenketten gefunden.\n";

=item stats_clear()

bereinigt die Statistiken über Gettext-Treffer

=back

=head1 Funktionen, um einen Katalog mit Meldungen aufzubauen

=over 4

=item push(%)

Schiebt einen neuen Eintrag an das Ende des aktuellen Katalogs. Die
Argumente sollten eine Hash-Tabelle darstellen. Die gültigen Schlüssel sind:

=over 4

=item B<msgid>

die Zeichenkette in der Ursprungssprache

=item B<msgstr>

die Übersetzung

=item B<reference>

eine Angabe, wo die Zeichenkette gefunden wurde. Beispiel: Datei.c:46
(d.h. in Datei.c, Zeile 46). Es kann eine durch Leerzeichen getrennte Liste
sein, falls die Zeichenkette mehrfach vorkommt.

=item B<comment>

ein manuell (vom Übersetzer) hinzugefügter Kommentar. Das Format ist hier
frei.

=item B<automatic>

ein automatisch hinzugefügter Kommentar, der vom
Zeichenkettenausleseprogramm hinzugefügt wurde. Lesen Sie zu der Option
»B<--add-comments>« des Programms B<xgettext> für weitere Informationen
hierzu.

=item B<flags>

durch Leerzeichen getrennte Liste aller definierten Schalter für diesen
Eintrag.

Gültige Schalter sind: B<c-text>, B<python-text>, B<lisp-text>,
B<elisp-text>, B<librep-text>, B<smalltalk-text>, B<java-text>, B<awk-text>,
B<object-pascal-text>, B<ycp-text>, B<tcl-text>, B<wrap>, B<no-wrap> und
B<fuzzy>.

Lesen Sie die Getttext-Dokumentation bezüglich ihrer Bedeutung.

=item B<type>

Dies ist hauptsächlich ein internes Argument: Es wird beim Einbau von
Gettext in Dokumente verwandt. Die Idee hierbei ist, sowohl das Original als
auch die Übersetzung in ein PO-Objekt auszuwerten und sie dann
zusammenzuführen, wobei die Mgsids des einen die Msgids werden und die
Mgsgids des anderen die Msgstr. Um sicherzustellen, dass alles stimmig wird,
wird jeder Msgid in PO-Objekten ein Typ vergeben, basierend auf ihrer
Struktur (wie »chapt«, »sect1«, »p« und so weiter in Docbook). Falls die
Typen der Zeichenketten nicht übereinstimmen, bedeutet dies, dass die beiden
Dateien nicht über die gleiche Struktur verfügen. Der Prozess liefert dann
eine Fehlermeldung.

Diese Information wird als automatischer Kommentar in die PO-Datei
geschrieben, da dies den Übersetzern Kontext zu den zu übersetzenden
Zeichenketten liefert.

=item B<wrap>

Logische Variable, die angibt, ob Leerzeichen bei kosmetischen
Neuformatierungen gequetscht werden dürfen. Falls wahr, wird die
Zeichenkette vor der Verwendung in eine kanonische Form gebracht.

Diese Information wird mit dem Schalter B<wrap> oder B<no-wrap> in die
PO-Datei geschrieben.

=item B<wrapcol>

ignoriert; dieser Schlüssel wird für ältere Berechnung beibehalten.

=back

=back

=head1 Verschiedene Funktionen

=over 4

=item count_entries()

liefert die Anzahl an Einträgen im Katalog (ohne die Kopfzeilen)

=item count_entries_doc()

Liefert die Anzahl der Einträge im Dokument. Falls eine Zeichenkette
mehrfach im Dokument auftaucht, wird sie auch mehrfach gezählt.

=item msgid($)

liefert die Msgid der angegebenen Nummer

=item msgid_doc($)

liefert die Msgid mit der angegebenen Position im Dokument

=item type_doc($)

Liefert den Typ der Msgid mit der angegebenen Position im Dokument
zurück. Dies ist wahrscheinlich nur für die Gettextisierung nützlich, und es
wird separat von {$msgid}{'type'} gespeichert, da letzterer Ort durch einen
anderen Typ überschrieben werden könnte, falls die $msgid im Master-Dokument
mehrfach vorkommt.

=item get_charset()

gibt den in den PO-Kopfzeilen definierten Zeichensatz zurück. Falls er nicht
gesetzt wurde, wird »UTF-8« zurückgegeben.

=back

=head1 AUTOREN

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