Apple Strings (.strings)
Apple Strings (.strings) je primární formát řetězcových prostředků pro aplikace iOS, macOS, watchOS a tvOS. Každý podporovaný jazyk má soubor Localizable.strings uložený v jazykové složce pojmenované kódem jazyka s příponou .lproj — en.lproj, fr.lproj, de.lproj. Formát má jednoduchou strukturu klíč-hodnota: každý záznam je klíč v uvozovkách, znaménko rovná se, přeložený řetězec v uvozovkách a středník. Komentáře ve stylu C nad každým záznamem slouží jako poznámky překladatele.
Formátovací specifikátory pro interpolované hodnoty používají notaci ve stylu printf: příznak řetězce pro znakové řetězce, příznak celého čísla pro celá čísla, příznak desetinného čísla pro čísla s plovoucí desetinnou čárkou a poziční specifikátory umožňující přeuspořádání argumentů v jazycích, kde se slovosled liší od angličtiny. Nástroj příkazového řádku genstrings extrahuje volání NSLocalizedString ze zdrojových souborů Swift a Objective-C a zapisuje je do souboru .strings, přičemž komentář vývojáře uvádí jako poznámku překladatele.
Osvědčená praxe: povolte Base Localisation v nastavení projektu Xcode, aby soubory storyboardu žily v Base.lproj s oddělenými soubory .strings pro každý jazyk. Udržujte všechny uživatelsky viditelné řetězce v jednom souboru Localizable.strings namísto více souborů .strings — konsolidace zvyšuje účinnost překladové paměti. Napište smysluplný komentář pro každé volání NSLocalizedString; tyto komentáře jsou kontext, na který se překladatelé spoléhají. Spouštějte genstrings jako fázi sestavení, aby byly řetězce synchronizovány. Language Monster detekuje soubory .strings ve všech složkách .lproj a zachovává formátovací specifikátory během překladu.
