GNU gettext PO (Portable Object)¶
Najpoužívanejší formát na preklad slobodného softvéru.
Kontextové informácie uložené v súbore sú podporované úpravou jeho hlavičiek alebo prepojením s príslušnými zdrojovými súbory.
Viď aj
Zobrazenie zmeny zdrojového reťazca¶
Weblate môže extrahovať predchádzajúce zdrojové reťazce zo súborov PO, ak sú prítomné, a na ich základe zobraziť rozdiel reťazcov pre reťazce vyžadujúce úpravu. Aby ste ich zahrnuli, msgmerge sa musí spustiť s --previous a výsledný súbor PO potom obsahuje riadky, ako napr.:
#, fuzzy
#| msgid "previous-untranslated-string"
msgid "untranslated-string"
msgstr "translated-string"
Toto je ovládané parametrom po_keep_previous Parametre formátu súboru. Nemá to vplyv na zastarané položky označené #~.
Zastarané reťazce¶
msgmerge predvolene ponecháva reťazce odstránené zo súboru POT ako zastarané položky #~. Povoľte parameter po_remove_obsolete Parametre formátu súboru na odstránenie zastaraných položiek pri ukladaní súborov PO vo Weblate.
Hlavička súboru PO¶
Hlavička súboru PO je automaticky udržiavaná systémom Weblate. Pomocou Parametre formátu súboru ju možno nakonfigurovať tak, aby obsahovala hlavičky Language-Team, Last-Translator, X-Generator a Report-Msgid-Bugs-To.
Komentáre prispievateľov¶
Použite parameter po_contributor_comments Parametre formátu súboru na pridanie mien prispievateľov a rokov do komentárov hlavičky PO. Vyberte gettext pre tradičné komentáre alebo spdx pre položky autorských práv SPDX. Predvolená hodnota none zakazuje aktualizácie prispievateľov bez odstránenia existujúcich komentárov. Toto nastavenie funguje nezávisle od nastavenia hlavičky Last-Translator.
S gettext vyzerajú komentáre prispievateľov takto:
# Jane Doe <jane@example.com>, 2024, 2026.
S spdx sa rovnaká položka zmení na:
# SPDX-FileCopyrightText: 2024, 2026 Jane Doe <jane@example.com>
Pri ďalšom zápise od oprávneného prispievateľa režim SPDX konvertuje všetky rozpoznané komentáre prispievateľov, zachováva historické roky príspevkov a pridáva aktuálny rok pre daného prispievateľa. Anonymní autori Weblate sa preskakujú. Nesúvisiace komentáre a oznámenia o autorských právach sa zachovávajú. Weblate neodvodzuje nároky na autorské práva z preložených reťazcov poďakovania ani nepridáva oznámenia špecifické pre projekt alebo identifikátory licencií; tieto riešte vo vlastných nástrojoch.
Zalamovanie riadkov¶
Zalamovanie riadkov väčšinou zodpovedá správaniu GNU gettext. Algoritmus zalamovania v GNU gettext aj údaje Unicode, na ktorých je zalamovanie založené, sa vyvíjajú, čo môže spôsobiť rozdiely v niektorých hraničných prípadoch.
Šírku zalamovania možno konfigurovať pomocou parametra po_line_wrap, pozri Parametre formátu súboru.
Generovanie zodpovedajúcich súborov MO¶
Ak sa súbory MO uchovávajú v repozitári spolu so súbormi PO, Generovať súbory MO možno použiť na ich udržiavanie v aktuálnom stave so súbormi PO.
Aktualizácia súborov PO zo súboru POT¶
Aktualizovať súbory PO tak, aby zodpovedali POT (msgmerge) možno použiť na aktualizáciu súborov PO zo súboru POT, pozri Aktualizácia súborov cieľového jazyka.
Jednojazyčný gettext¶
Niektoré projekty sa rozhodnú používať gettext ako jednojazyčný formát – v svojom zdrojovom kóde kódujú iba ID a reťazec potom treba preložiť do všetkých jazykov vrátane angličtiny. Toto je podporované, hoci musíte tento formát súboru explicitne vybrať pri importe komponentov do Weblate.
Príkladové súbory¶
Dvoj-jazyčný súbor gettext PO zvyčajne vyzerá takto:
#: 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ý"
Jednojazyčný súbor gettext PO zvyčajne vyzerá takto:
#: 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ý"
Zatiaľ čo súbor základného jazyka bude:
#: 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"
Prípony súborov |
|
|---|---|
Jazykovosť ⓘ |
Jednojazyčné |
Podporuje množné číslo ⓘ |
|
Podporuje popisy ⓘ |
|
Podporuje vysvetlenie ⓘ |
|
Podporuje kontext ⓘ |
|
Podporuje umiestnenie ⓘ |
|
Podporuje príznaky ⓘ |
|
Ďalšie stavy ⓘ |
|
Identifikátor API |
|
Podporuje reťazce iba na čítanie ⓘ |
|
Podporuje odstraňovanie zastaraných reťazcov ⓘ |
|
Prípony súborov |
|
|---|---|
Jazykovosť ⓘ |
Dvojjazyčné |
Podporuje množné číslo ⓘ |
|
Podporuje popisy ⓘ |
|
Podporuje vysvetlenie ⓘ |
|
Podporuje kontext ⓘ |
|
Podporuje umiestnenie ⓘ |
|
Podporuje príznaky ⓘ |
|
Ďalšie stavy ⓘ |
|
Identifikátor API |
|
Podporuje reťazce iba na čítanie ⓘ |
|
Podporuje odstraňovanie zastaraných reťazcov ⓘ |
|
Konfigurácia Weblate¶
Typický Weblate Konfigurácia komponentu pre dvoj-jazyčný gettext |
|
|---|---|
Maska súboru |
|
Jednojazyčný súbor základného jazyka |
Prázdne |
Šablóna pre nové preklady |
|
Formát súboru |
Súbor Gettext PO |
Typický Weblate Konfigurácia komponentu pre jednojazyčný gettext |
|
|---|---|
Maska súboru |
|
Jednojazyčný súbor základného jazyka |
|
Šablóna pre nové preklady |
|
Formát súboru |
Súbor Gettext PO (jednojazyčný) |
Parametre formátu súboru¶
Parametre formátu súboru so vzorom po_* možno použiť na konfiguráciu správania formátu gettext.