Fluent - příklady použití v překladech projektů Mozilla
Nejdříve si prosím přečtěte základy Fluentu.
Sloňování a názvy vývojových verzí Firefoxu
V době psaní této stránky (duben 2023) Mozilla z technických důvodů neumožňuje ve všech případech překládat názvy vývojových verzí Firefoxu (Firefox Beta, Firefox Nightly, atd.). To ale znamená, že některé přeložené řetězce nemusí znít v nefinálních verzích Firefoxu přirozeně.
Toto se ale týká jen a pouze překladů Firefoxu (potažmo Thunderbirdu a dalších aplikací). Při překladu webů jako je Mozilla.org tento problém nenastává, protože tam k dynamickému zaměňování názvů nedochází.
Ve finální verzi Firefoxu sice máme k dispozici kompletní skloňování
-brand-full-name =
{ $case ->
*[nom] Mozilla Firefox
[gen] Mozilly Firefoxu
[dat] Mozille Firefoxu
[acc] Mozillu Firefox
[voc] Mozillo Firefoxe
[loc] Mozille Firefoxu
[ins] Mozillou Firefoxem
}
Ale v betaverzi bude tento termín dostupný jen jako
-brand-full-name = Firefox Beta
Námi překládaný řetězec, aby zněl opravdu přirozeně, může záviset jak na pádu,
tak na rodu názvu dané verze. Proto při překladech názvu produktu ve Firefoxu
přidáváme ještě dva atributy gender
a case-status
. Celý termín pak vypadá
následovně:
-brand-full-name =
{ $case ->
*[nom] Mozilla Firefox
[gen] Mozilly Firefoxu
[dat] Mozille Firefoxu
[acc] Mozillu Firefox
[voc] Mozillo Firefoxe
[loc] Mozille Firefoxu
[ins] Mozillou Firefoxem
}
.gender = masculine
.case-status = with-cases
Atribut gender
Atribut gender
označuje gramatický rod a slouží např. pro správné ohýbání
přídavných jmen nebo sloves v příčestí minulém.
third-party-warning-icon =
.title =
{ -brand-short-name.gender ->
[masculine] { -brand-short-name } spadl při vykonávání kódu tohoto modulu
[feminine] { -brand-short-name } spadla při vykonávání kódu tohoto modulu
[neuter] { -brand-short-name } spadlo při vykonávání kódu tohoto modulu
*[other] Aplikace { -brand-short-name } spadla při vykonávání kódu tohoto modulu
}
V případě finální verze Firefoxu tedy dostaneme
Firefox spadl při vykonávání kódu tohoto modulu
kdežto u betaverze, kde Fluent nezná rod, se elegantně využije výchozí varianta řetězce s pomocným slovem aplikace.
Aplikace Firefox Beta spadla při vykonávání kódu tohoto modulu
Atribut case-status
Podobně nám poslouží atribut case-status
pro rozeznání, jestli Fluent dokáže
název produktu sloňovat.
aboutDialog-title =
.title =
{ -brand-full-name.case-status ->
[with-cases] O { -brand-full-name(case: "loc") }
*[no-cases] O aplikaci { -brand-full-name }
}
Ve finální verzi bude výsledný řetězec krásně včetně skloňování
O Firefoxu
kdežto u betaverze, skloňování chybí, se elegantně využije výchozí varianta řetězce s pomocným slovem aplikace.
O aplikaci Firefox Beta