GNU gettext PO (Portable Object)

Das am weitesten verbreitete Format für die Übersetzung von Freier Software.

In der Datei gespeicherte Kontextinformationen werden durch Anpassen des Headers oder durch Verlinken mit entsprechenden Quelldateien unterstützt.

Änderung der Ausgangszeichenkette anzeigen

Weblate kann vorherige Ausgangszeichenketten aus den PO-Dateien extrahieren, falls vorhanden, und die Zeichenketten, die bearbeitet werden müssen, auf dieser Grundlage anzeigen. Um diese einzubeziehen, muss msgmerge mit --previous ausgeführt werden und die resultierende PO-Datei enthält dann Zeilen wie:

#, fuzzy
#| msgid "previous-untranslated-string"
msgid "untranslated-string"
msgstr "translated-string"

PO-Dateiheader

The header of the PO file is automatically maintained by Weblate. It can be configured to include the Language-Team, Last-Translator, X-Generator and Report-Msgid-Bugs-To headers using the Dateiformat-Parameter.

Die Kommentare im Header können auch mit Mitwirkende im Kommentar aktualisiert werden, um Autorennamen aufzunehmen.

Zeilenumbruch

Der Zeilenumbruch entspricht weitgehend dem Verhalten von GNU gettext. Sowohl der Umbruchalgorithmus in GNU gettext als auch die Unicode-Daten, auf denen der Umbruch basiert, entwickeln sich weiter, was in einigen Ausnahmefällen zu Unterschieden führen kann.

Die Umbruchbreite kann mit dem Parameter po_line_wrap konfiguriert werden, siehe Dateiformat-Parameter.

Erzeugen passender MO-Dateien

Falls MO-Dateien zusammen mit PO-Dateien im Repository aufbewahrt werden, kann MO-Dateien erzeugen verwendet werden, um sie mit den PO-Dateien auf dem neuesten Stand zu halten.

Aktualisieren von PO-Dateien aus der POT-Datei

PO-Dateien auf POT aktualisieren (msgmerge) kann verwendet werden, um PO-Dateien aus der POT-Datei zu aktualisieren, siehe Zielsprachedateien aktualisieren.

Gettext einsprachig

Einige Projekte entscheiden sich, gettext als einsprachiges Format zu verwenden – sie kodieren nur die IDs in ihrem Quellcode und die Zeichenkette muss dann in alle Sprachen, einschließlich Englisch, übersetzt werden. Dies wird unterstützt, allerdings müssen Sie dieses Dateiformat beim Importieren von Komponenten in Weblate explizit auswählen.

Beispieldateien

Die zweisprachige gettext-PO-Datei sieht in der Regel wie folgt aus:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Monday"
msgstr "Pondělí"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Tuesday"
msgstr "Úterý"

#: weblate/accounts/avatar.py:163
msgctxt "No known user"
msgid "None"
msgstr "Žádný"

Die einsprachige gettext-PO-Datei sieht normalerweise wie folgt aus:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Pondělí"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Úterý"

#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "Žádný"

Während die Basissprachdatei wie folgt aussieht:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Monday"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Tuesday"

#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "None"
Unterstützte Funktionen

Dateierweiterungen

.po, .pot

Linguistik:

Einsprachig

Unterstützt Pluralformen

Yes

Unterstützt Beschreibungen

Yes

Unterstützt Erklärung

No

Unterstützt Kontext

Yes

Unterstützt Ort

Yes

Unterstützt Markierungen

Yes

Zusätzliche Status

Needs editing

API-Kennung

po-mono

Unterstützt schreibgeschützte Zeichenketten

No

Unterstützte Funktionen

Dateierweiterungen

.po, .pot

Linguistik:

Zweisprachig

Unterstützt Pluralformen

Yes

Unterstützt Beschreibungen

Yes

Unterstützt Erklärung

No

Unterstützt Kontext

Yes

Unterstützt Ort

Yes

Unterstützt Markierungen

Yes

Zusätzliche Status

Needs editing

API-Kennung

po

Unterstützt schreibgeschützte Zeichenketten

No

Weblate-Konfiguration

Typische Weblate-Komponentenkonfiguration für zweisprachigen gettext

Dateimaske

po/*.po

Einsprachige Basissprachdatei

Leer

Vorlage für neue Übersetzungen

po/messages.pot

Dateiformat

Gettext PO-Datei

Typische Weblate-Komponentenkonfiguration für einsprachigen gettext

Dateimaske

po/*.po

Einsprachige Basissprachdatei

po/en.po

Vorlage für neue Übersetzungen

po/messages.pot

Dateiformat

Gettext PO-Datei (einsprachig)

Dateiformat-Parameter

Dateiformat-Parameter mit dem Muster po_* kann verwendet werden, um das Verhalten des gettext-Formats zu konfigurieren.