Internacionalizace a lokalizace
Aplikace s gtkmm mohou jednoduše podporovat více jazyků, včetně neevropských, jako je čínština nebo zprava doleva psaná arabština. Správně napsaná a přeložená aplikace s gtkmm použije za běhu správný jazyk podle toho, jaké národní prostředí má uživatel nastavené.
Možná nebudete předpokládat potřebu podpory dalších jazyků, ale nikdy neříkejte nikdy. A je jednodušší aplikace hned ze začátku napsat správně, než ji později celou opravovat.
Proces psaní zdrojového kódu, který umožňuje jazykové překlady, se nazývá internacionalizace, což je často zkracováno na i18n. Lokalizace, zkracovaná na l10n je pak vlastní překlad textů vycházejících ze zdrojového kódu do jiných jazyků.
Hlavní činností při internacionalizaci je vyhledání řetězců, které uživatele uvidí a jejich označení k překladu. Nemusíte je všechny označit naráz – když správně nastavíte potřebnou infrastrukturu projektu, bude vaše aplikace normálně fungovat bez ohledu na to, kolik řetězců jste internacionalizací pokryli.
Řetězcové literály byste měli ve zdrojovém kódu psát v angličtině, ale obalené do makra. Nástroj gettext (nebo intltool) umí vytáhnout takto označené řetězce pro překladatele a za běhu je pak nahrazovat překlady.
- 25.1. Příprava vašeho projektu
- 25.2. Označení řetězců k překladu
- 25.3. Očekává se UTF-8
- 25.4. Úskalí
- 25.5. Získání pomoci s překladem