|
Přípony souborů |
.po |
|
Rozšíření API |
gettext |
|
Import |
Ano |
|
Export |
Ano |
|
Podpora plurálových tvarů |
Ano |
|
Podpora pro popis |
Ano |
|
Možnosti formátu Tyto možnosti lze specifikovat při nahrát a/nebo Stáhnout souboru. V závislosti na metodě nahrát/Stáhnout (API, CLI, synchronizace repozitáře atd.) mohou být specifikovány v dotaz parametrech |
|
.Objednávka (Portable Object) je standardní formát souboru pro lokalizaci s GNU gettext, open-source GNU knihovnou navrženou pro zjednodušení procesu lokalizace. S GNU gettext jsou lokalizovatelné Strings extrahovány ze zdrojový kód do souboru Objednávka pro překlad. Soubor .Objednávka je řada párů klíč-hodnota. Klíč msgid je místo, kam se umísťuje zdroj řetězec, zatímco hodnota msgstr je místo, kam jde překlad.
gettext extrahuje Strings ze zdrojový kód do .POT (šablona přenosného objektu). Na základě definovaných kódů jazyka pak gettext převede soubor .POT na soubory .PO specifické pro kód jazyka pro nahrát do CAT nástroje pro překlad. Po překladu gettext převede přeložené soubory .PO na soubory .MO (strojové objektové soubory), které se nakonec používají pro lokalizaci.
Soubory .PO jsou identické se soubory .POT s výjimkou toho, že soubory .POT se obecně používají v gettext k vygenerování souborů .PO specifických pro kód jazyka. Přímý překlad souboru .POT a jeho přejmenování podle zamýšleného kódu jazyka nezpůsobuje problémy. Phrase podporuje překlad:
-
.PO soubory
-
Dvojjazyčné .PO soubory
-
Strojově čitelné .MO soubory
msgctxt bude použit jako předpona klíč, kombinovaná s msgid a oddělená pomocí ||.
Možnosti formátu
|
Identifikátor |
msgid_as_default |
|
Typ |
Booleovský typ |
|
Nahrání |
true |
|
Stažení |
false |
|
Výchozí |
false |
|
Popis |
Přebírá obsah překladu z hodnoty |
|
Identifikátor |
is_bilingual_file |
|
Typ |
Booleovský typ |
|
Nahrání |
true |
|
Stažení |
false |
|
Výchozí |
false |
|
Popis |
Zdrojové i cílové překlady budou importovány z nahraného souboru: zdrojový obsah bude převzat z hodnoty |
Vzor kódu
msgid "" msgstr "" "Language: Czech\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Generator: PhraseApp (phraseapp.com)\n" msgid "boolean_key" msgstr "--- true\n" msgid "empty_string_translation" msgstr "" # Toto je úžasný popis pro tento klíč! msgid "key_with_description" msgstr "Podívejte se na to! This key has a description! (At least in some formats)" msgid "key_with_line-break" msgstr "This translations contains\na line-break." msgid "nested.deeply.key" msgstr "Wow, this key is nested even deeper." msgid "nested.key" msgstr "This key is nested inside a namespace." msgid "null_translation" msgstr "" msgid "pluralized_key" msgid_plural "" msgstr[0] "Nalezena pouze jedna pluralizace." msgstr[1] "Páni, máte %s pluralizací!" msgid "sample_collection" msgstr "---\n- první položka\n- druhá položka\n- třetí položka\n" msgid "simple_key" msgstr "jednoduchý klíč, jednoduchá zpráva, tak jednoduché.2" #, částečná shoda msgid "unverified_key" msgstr "Potřebuji ověření, prosím ověřte mě!" (In some formats we also export this status)"
Typická položka gettext:
# popis (volitelné) msgid "key-name" msgstr "My Translation"
Hlavička gettext
Hlavička souboru gettext může obsahovat kód jazyka a data pro tvary množného čísla, která jsou extrahována během importu:
msgid "" msgstr "" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Generator: PhraseApp (phraseapp.com)\n"
Popisy
Komentáře v souboru gettext jsou během importu přidány jako popisy klíčů:
# Toto je můj popis msgid "app_title" msgstr \"Můj softwarový projekt\"
Kontext
gettext používá notaci msgctxt k rozlišení různých kontextů pro stejný msgid. Každý název klíč musí být jedinečný, takže msgctxt se přidá jako první část názvu klíč, oddělená dvěma symboly svislítka ||:
msgctxt "menu" msgid \"Open\" msgstr \"Jsem překlad\" msgctxt \"forum\" msgid \"Open\" msgstr \"Jsem nějaký jiný překlad\"
Chcete-li přidat msgctxt k novému klíči, přidejte jej před název klíče:
my_context||my_key_name
Výsledný výstup gettext:
... msgctxt "my_context" msgid "my_key_name" ...
Plurálové tvary
gettext podporuje množná čísla pro překlad:
msgid \"new_messages\"
msgid_plural ""
msgstr[0] \"Máte novou zprávu\"
msgstr[1] \"Máte %{count} nové zprávy\"
částečná shoda
Klíčové slovo částečná shoda se používá pro ověření překladu. částečná shoda automaticky vyvolá proces neověření v rámci Phrase.
#, částečná shoda msgid "app_title" msgstr \"Můj softwarový projekt\"