GNU gettext PO (Portable Object)

Det mest använda formatet för översättning av fri programvara.

Kontextuell information som lagras i filen stöds genom att justera dess rubriker eller länka till motsvarande källfiler.

Visar ändring av källsträng

Weblate kan extrahera tidigare källsträngar från PO-filerna om sådana finns och visa strängskillnaden för strängar som behöver redigeras baserat på det. För att inkludera dessa måste msgmerge köras med --previous och den resulterande PO-filen innehåller då rader som:

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

PO-filens rubrik

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 Filformatsparametrar.

Rubrikkommentarerna kan också uppdateras så att de innehåller författarnamn med hjälp av Bidragsgivare i kommentar.

Radbrytning

Radbrytningen motsvarar i stort sett GNU gettexts beteende. Både radbrytningsalgoritmen i GNU gettext och Unicode-data som radbrytningen baseras på utvecklas, vilket kan orsaka skillnader i vissa specialfall.

Ombrytningsbredden kan konfigureras med parametern po_line_wrap, se Filformatsparametrar.

Skapa matchande MO-filer

Om MO-filer sparas i arkivet tillsammans med PO-filer kan Generera MO-filer användas för att hålla dem uppdaterade med PO-filerna.

Uppdatera PO-filer från POT-filen

Uppdatera PO-filerna till att matcha POT (msgmerge) kan användas för att uppdatera PO-filer från POT-filen, se Uppdatera filer på målspråket.

Enspråkig gettext

Vissa projekt väljer att använda gettext som enspråkiga format – de kodar bara ID:n i sin källkod och strängen måste sedan översättas till alla språk, inklusive engelska. Detta stöds, men du måste välja detta filformat uttryckligen när du importerar komponenter till Weblate.

Exempel-filer

Den tvåspråkiga gettext PO-filen ser vanligtvis ut så här:

#: 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ý"

Den enspråkiga gettext PO-filen ser vanligtvis ut så här:

#: 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ý"

Basens språkfil kommer att vara:

#: 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"
Stödda funktioner

File extensions

.po, .pot

Linguality

Monolingual

Supports plural

Yes

Supports descriptions

Yes

Supports explanation

No

Supports context

Yes

Supports location

Yes

Supports flags

Yes

Additional states

Needs editing

API identifier

po-mono

Supports read-only strings

No

Stödda funktioner

File extensions

.po, .pot

Linguality

Bilingual

Supports plural

Yes

Supports descriptions

Yes

Supports explanation

No

Supports context

Yes

Supports location

Yes

Supports flags

Yes

Additional states

Needs editing

API identifier

po

Supports read-only strings

No

Weblate-konfiguration

Typisk Weblate Komponentkonfiguration för tvåspråkig gettext

Filmask

po/*.po

Enspråkig basspråkfil

Tom

Mall för nya översättningar

po/messages.pot

Filformat

Gettext PO-fil

Typisk Weblate Komponentkonfiguration för enspråkig gettext

Filmask

po/*.po

Enspråkig basspråkfil

po/en.po

Mall för nya översättningar

po/messages.pot

Filformat

Gettext PO-fil (enspråkig)

Filformatsparametrar

Filformatsparametrar med mönstret po_* kan användas för att konfigurera beteendet för gettext-formatet.