Updating localizations
Eitot edited this page Mar 25, 2019
·
3 revisions
- Never update *.strings files manually
- Always update the source files first
- Use Xcode's XLIFF export/import capabilities
- Keep Crowdin up to date
- Make the changes to the source files
- NSLocalizedString in *.m or *.swift
- Interface Builder
- Export the development language (English) in Xcode
- Select the Vienna project in Xcode's project navigator
- Select "Editor" → "Export For Localization…" in the menu
- Select "Include: Development Language Only" in the save panel
- Commit the exported en.xliff file to Localizations/en.xliff and submit a pull request
- Upload the updated en.xliff file to Crowdin
- Update and build the localizations at Crowdin
- Merge Crowdin's pull request containing the updated XLIFF files
- Run
make localize
from the project root to import the XLIFF files into the project
- Follow the export instructions above
- Update the keys in the translated *.strings files
- Export the languages in Xcode, using "Include: Existing Translations"
- Upload the new XLIFF files to Crowdin manually
- Follow the import instructions above
Note: Do not commit the changes to the *.strings or XLIFF files. Steps 2–4 are only for the purpose of updating Crowdin's database.