Frankfurtské studio pro vícejazyčné digitální prezentace +49 69 95209894 [email protected] Po–Pá 9–17 hod Zákaznický portál →
ČeštinaCS

Praktický průvodce

Průvodce lokalizací aplikací a softwaru (i18n)

Lokalizace aplikací a softwaru vyžaduje promyšlené oddělení kódu a textů. Tento průvodce se zabývá technickými aspekty, jako jsou zástupné znaky, pravidla pro množná čísla, délky textů, klíče řetězců, kontext pro překladatele a podpora RTL. Pomáhá vývojářům navrhovat mezinárodní aplikace efektivně a konzistentně, aniž by se dotýkal právních či finančních témat.

i18n
Zkratka internacionalizace
RTL
Podpora zprava doleva
ICU
Mezinárodní komponenty pro Unicode
Diagram oddělení kódu a jazykových zdrojů

1. Oddělení kódu a textů

Základním předpokladem každé lokalizace je důsledné oddělení programového kódu a textového obsahu. Všechny zobrazované texty by měly být uloženy v externích souborech prostředků (např. Properties, JSON, YAML), nikoli pevně zakódovány ve zdrojovém kódu. To umožňuje překladatelům pracovat bez úpravy kódu. Používejte jedinečné klíče řetězců jako reference v kódu, které odkazují na příslušné překlady. Toto oddělení také usnadňuje údržbu a umožňuje později přidávat nové jazyky bez změn kódu. Dbejte na to, aby popisky UI, chybové zprávy a tooltips byly také v těchto souborech.

2. Zástupné znaky a proměnné

Texty často obsahují dynamický obsah, jako jsou čísla, jména nebo data. Ty musí být vloženy pomocí zástupných znaků, např. pomocí formátování printf (%s, %d) nebo modernějších přístupů, jako jsou složené závorky {0}. Důležité je, aby překladatelé znali pořadí a význam zástupných znaků. Používejte pojmenované zástupné znaky (např. „{username}“) pro poskytnutí kontextu. U jazyků s odlišným slovosledem se může pořadí zástupných znaků lišit. Proto nabídněte možnost upravit pořadí v překladu. Otestujte všechny varianty, abyste předešli chybným nebo neúplným výstupům.

Příklad zástupných symbolů v překládaných řetězcích

3. Pravidla množného čísla a tvoření plurálu

V němčině existuje pouze jednotné a množné číslo, ale mnoho jazyků má složitější pravidla pro množné číslo (např. arabština se šesti kategoriemi). Používejte knihovny jako ICU MessageFormat, které řeší pravidla pro množné číslo specificky pro jednotlivé jazyky. Definujte ve svých zdrojích samostatné klíče pro různé tvary množného čísla (one, other). Kód pak automaticky vybere vhodný tvar na základě čísla. Příklad: "{count} {count, plural, one {jablko} other {jablka}}". Otestujte každý jazyk s několika číselnými hodnotami, abyste se ujistili, že se zobrazuje správný tvar množného čísla. Vyhněte se pevným if dotazům – to je náchylné k chybám.

4. Délka textu a rezerva v rozvržení

Překlady jsou často delší nebo kratší než původní text. Zejména u tlačítek, nabídek a popisků to může narušit rozvržení. Proto naplánujte dostatek místa pro rozšíření textu – dobrým vodítkem je 30 % dodatečného prostoru pro západní jazyky, více pro asijské. Používejte dynamická rozvržení, která se přizpůsobí délce textu (např. Auto-Layout v iOS nebo Flexbox na webu). Vyhněte se pevným šířkám. V případě potřeby umožněte prvkům uživatelského rozhraní zalomení textu. Otestujte rozhraní s nejdelšími očekávanými překlady, abyste předešli překrývání nebo ořezávání.

5. Klíče řetězců, kontext pro překladatele a RTL

Jedinečné klíče řetězců jsou páteří lokalizace. Používejte výstižné názvy (např. "login.button.title") a dokumentujte účel použití. Poskytněte překladatelům kontext: screenshoty, maximální délku znaků, omezení (např. "ne delší než 20 znaků"). Pro jazyky RTL, jako je arabština nebo hebrejština, musí být uživatelské rozhraní zrcadleno. Používejte atributy rozvržení, které RTL automaticky podporují (např. start/end místo left/right). Otestujte celou navigaci v podmínkách RTL. Myslete také na ikony a grafiku – mohou být v různých kulturách interpretovány odlišně.

Kontrolní seznam pro vstup na trh

  • Využívat externí soubory zdrojů pro texty
  • Zástupné znaky s pojmenovanými proměnnými a upravitelným pořadím
  • Implementovat pravidla pro množné číslo pomocí ICU MessageFormat
  • Layout s alespoň 30% rezervou pro rozšíření textu
  • Výstižné klíče řetězců s dokumentací kontextu
  • Podpora RTL pomocí atributů rozvržení, jako je start/end
Mřížka rozvržení s různými délkami textu a vycpávkami

Často kladené otázky

Proč je oddělení kódu a textů důležité?

Umožňuje překlady bez změn kódu, zjednodušuje údržbu a umožňuje přidávat nové jazyky bez nutnosti překompilování softwaru.

Jak zacházet s množným číslem v různých jazycích?

Používejte knihovny jako ICU MessageFormat, které pro každý jazyk vyberou správný tvar množného čísla. V prostředcích definujte klíče pro každou kategorii množného čísla (např. one, other).

Co je třeba zvláště zohlednit u jazyků s RTL zápisem?

UI musí být zrcadleno: Používejte logické atributy rozvržení (start/end) místo absolutních směrů. Testujte navigaci a odsazení textu za podmínek RTL.

Připraveni na tento trh?

Lokalizujeme vaše webové stránky jazykově, technicky a kulturně – s rodilým přezkumem a pevnou cenou. Vyžádejte si nezávaznou nabídku.

Vyžádat nezávaznou nabídku

Německá GmbHMěstský soud Frankfurt nad Mohanem · HRB 111727
Registrováno D-U-N-S®315030052
Zpracování v souladu s GDPRHosting v Německu
Pevné ceny s písemnou zárukou dodání