GNU gettext PO (objecte portàtil)

Most widely used format for translating libre software.

La informació contextual emmagatzemada al fitxer s’admet ajustant les seves capçaleres o enllaçant als fitxers font corresponents.

Showing source string change

Weblate pot extreure cadenes d’origen anteriors dels fitxers PO si hi ha i mostrar la diferència de cadenes per a les cadenes que necessiten editar-se en funció d’això. Per incloure’ls, msgmerge s’ha d’executar amb --previous i el fitxer PO resultant conté línies com ara:

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

This is controlled by the po_keep_previous Paràmetres del format de fitxer parameter. It does not affect obsolete entries marked with #~.

Obsolete strings

msgmerge keeps strings removed from the POT file as obsolete #~ entries by default. Enable the po_remove_obsolete Paràmetres del format de fitxer parameter to remove obsolete entries when Weblate saves PO files.

Capçalera del fitxer PO

La capçalera del fitxer PO es manté automàticament per Weblate. Es pot configurar per incloure les capçaleres Language-Team, Last-Translator, X-Generator i Report-Msgid-Bugs-To utilitzant els Paràmetres del format de fitxer.

Contributor comments

Use the po_contributor_comments Paràmetres del format de fitxer parameter to add contributor names and years to PO header comments. Choose gettext for traditional comments or spdx for SPDX copyright entries. The default, none, disables contributor updates without removing existing comments. This setting works independently of the Last-Translator header setting.

With gettext, contributor comments look like this:

# Jane Doe <jane@example.com>, 2024, 2026.

With spdx, the same entry becomes:

# SPDX-FileCopyrightText: 2024, 2026 Jane Doe <jane@example.com>

On the next commit by an eligible contributor, SPDX mode converts all recognized contributor comments, preserves historical contribution years, and adds the current year for that contributor. Anonymous Weblate authors are skipped. Unrelated comments and copyright notices are preserved. Weblate does not infer copyright claims from translated credit strings or add project-specific notices or license identifiers; handle these in custom tooling.

Line wrapping

L’ajustament de línia coincideix principalment amb el comportament de GNU gettext. Tant l’algoritme d’embolcall del GNU gettext com les dades Unicode es basa en l’embolcall, que pot provocar diferències en alguns casos de cantonada.

L’amplada d’embolcall es pot configurar mitjançant el paràmetre po_line_wrap, vegeu Paràmetres del format de fitxer.

Generating matching MO files

En cas que els fitxers MO es guardin al dipòsit juntament amb els fitxers PO, es pot utilitzar Genera els fitxers MO per mantenir-los actualitzats amb els fitxers PO.

Updating PO files from the POT file

Actualitza els fitxers PO perquè coincideixin amb el POT (msgmerge) es pot utilitzar per actualitzar fitxers PO des del fitxer POT, vegeu Updating target-language files.

Gettext monolingüe

Alguns projectes decideixen utilitzar gettext com a formats monolingües: codifiquen només els identificadors del seu codi font i la cadena s’ha de traduir a tots els idiomes, inclòs l’anglès. Això és compatible, tot i que heu de triar aquest format de fitxer explícitament quan importeu components a Weblate.

Example files

El fitxer PO de gettext bilingüe normalment té aquest aspecte:

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

El fitxer PO gettext monolingüe normalment té aquest aspecte:

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

Mentre que el fitxer d’idioma base serà:

#: 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"
Supported features

File extensions

.po, .pot

Lingualitat ⓘ

Monolingual

Supports plural ⓘ

Yes

Supports descriptions ⓘ

Yes

Admet l’explicació ⓘ

No

Supports context ⓘ

Yes

Supports location ⓘ

Yes

Supports flags ⓘ

Yes

Additional states ⓘ

Needs editing

API identifier

po-mono

Admet cadenes de només lectura ⓘ

No

Supports removing obsolete strings ⓘ

Yes

Supported features

File extensions

.po, .pot

Lingualitat ⓘ

Bilingual

Supports plural ⓘ

Yes

Supports descriptions ⓘ

Yes

Admet l’explicació ⓘ

No

Supports context ⓘ

Yes

Supports location ⓘ

Yes

Supports flags ⓘ

Yes

Additional states ⓘ

Needs editing

API identifier

po

Admet cadenes de només lectura ⓘ

No

Supports removing obsolete strings ⓘ

Yes

Configuració del Weblate

Weblate típic Configuració dels components per a gettext bilingüe

Filtre de fitxers

po/*.po

Fitxer de llengua base monolingüe

«Buit».

Plantilla per a traduccions noves

po/messages.pot

Format de fitxer

Gettext PO file

Placa web típica Configuració dels components per a gettext monolingüe

Filtre de fitxers

po/*.po

Fitxer de llengua base monolingüe

po/en.po

Plantilla per a traduccions noves

po/messages.pot

Format de fitxer

Fitxer PO Gettext (monolingüe)

Paràmetres del format de fitxer

Paràmetres del format de fitxer amb el patró po_* es pot utilitzar per configurar el comportament del format gettext.