5 comments

[ 2.9 ms ] story [ 18.6 ms ] thread
Looks great. I hadn't considered localizing my future iPad game using Cocos2D and now I'm thinking about doing it for at least 4 languages (Spanish, English, Portuguese, Chinese)! I'll get more if I can get hold of some friends who could do me the favor.
Great-looking tool and an even better post. It does a very thorough job of explaining Twine's value to someone who might not already understand localization pain points on iOS. If Apple's own localization doc were this straightforward, we might see a lot more localized apps out there.
> ibtool does not do merging

Upon receipt of an updated .strings file for a localization, run

  ibtool --strings-file updated.strings xx.lproj/existing.xib --write xx.lproj/existing.xib
which will preserve any layout changes made to

  xx.lproj/existing.xib
It is working out fine for a client app called Chumkee which has about a dozen localizations.
Interesting... Thanks for the tip. I will have to update my post accordingly.
How is this better than porting something like gettext to iOS (if it hasn't been ported already)?

The one "downside" to gettext (at least from the OP's perspective) is that it uses the English text as the key. Personally I don't find this to be a downside at all. I hate having to make up artificial keys and then associate them with English strings. It makes programming much less natural and breaks my flow. I've never found the typo/misspelling issue to be much of an issue.

I suppose gettext also doesn't support XIB files, though it wouldn't be hard to translate back and forth between .strings and .po files...