Linguan 1.1 brings the long-awaited support for localizing XIB files. While it has proven a boon for iOS developers where you generally can easily set the UI strings from code, Mac developers where left in the rain because there you typically have way more strings in the XIB files making it impractical to localize everything in code.
For the immediate first version we are remote-controlling ibtool which needs to be installed with the Xcode Commanline Tools and the path properly set up.
sudo /usr/bin/xcode-select /Applications/Xcode.app/Contents/Developer
… or wherever your Xcode.app is installed.
This one was a mixture between procrastination on my part and rushing to submit it. The former because as a developer I am not so happy with the external dependency on ibtool. The latter because any major updates to Linguan probably have to be sandboxed after June 1st. This will – in all likelihood – necessitate that users can no longer conveniently open the xcodeproj, but instead will have to open the project folder and Linguan will have to hold onto the authorization for it. Also it will probably no longer be possible to execute an external shell script or tool from within the Sandbox.
Time will tell (and also Apple) how we will move forward, but I still plan to write an Open Source replacement for ibtool which we can add via static library and thus remove the external dependency.
When you select a XIB file in the project navigator you will notice that the comment and the name columns are grayed out. That is necessary because you cannot modify the object ids or else ibtool will not find the element that a certain string belongs to. Elements in XIB files are keyed by their object id and this has to be the same between two languages for the process to work.
If you find that the object identifiers have gone out of sync between to language versions of a XIB file then it is best to copy one over the other and localize it from scratch.
Also we ask that you are patient when loading large projects with many XIB files as ibtool is only single-threaded and awfully slow. But for the immediate short term this gives users a fully integrated way to localize their interface builder files.
- ADDED: Support for localizing XIB files
The update was sent to Apple and I will manually release it once it is approved because this will go in parallel with an increase in price. So if you want to purchase it at the current low price then please do so right now.