LangSwitch, or how to test your app’s localization.

One of the things I hate about Cocoa is its localization system. The first time you look at it, it looks really great. I mean, compared to REALBasic, or Java, or even Qt… at least it has one. But, you see, the problem is that sometimes it creates more problem than it solves.Let me explain: say you’re creating an amazing Cocoa app. You develop it in english until you get to a Release Candidate. Now’s the time to localize it… right, you do the job (it’s never pleasant to localize nibs). Ahh, okay done… You release your app!

It’s the “next big thing” and you become rich (or not). With all this fame you get wonderful feedback and even get it localized in 15 different languages. Wow, now’s the time for a 1.1. With all the feedback you’ve got you’ve decided to make a few big UI changes. The thing is, not only do you need to modify your english nib(s), but you also need to make the same changes to every other language’s nibs!!! Alright, since you’ve got no choice, you do it. The thing is: there is a high probability you will make a mistake without noticing (it happened to me once). What then happens is you ship with a faulty localizations, you get lots of weird complain email in Japanese, and… you’re screwed!

The only boring and time-consuming solution is to thoroughly test the new UI in every localization before releasing. This is especially time-consuming as you have to change the language settings in System Preferences every time you want to change the localization.
Also, another downside of this is that it changes your whole computer (well, just your session, but whatever…). I personally don’t really like to use a computer in Chinese…

That’s where LangSwitch comes in… It gives you a simple GUI way to switch the localization for only the app you’re testing. It displays only the localizations avaiable for your app. Here’s an easy way to test your different localizations without the hassle.

Oh, and did I forget to mention… It’s Free!

Update: Excellent LangSwitch review!

Download LangSwitch 1.0.1

This entry was posted on Sunday, July 8th, 2007 at 10:09 pm and is filed under Apple, Français, Internet, School. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
Add your thoughts!
G. Toth surmises
July 9th, 2007 at 9:53 pm

Thank you very much, just what I needed! Thumbs up!

Iain Delaney thinks aloud
July 9th, 2007 at 9:59 pm

Brilliant! This app solves the problem perfectly. Thank you so much for this.

Mirko Trepzik affirms
July 29th, 2007 at 8:48 pm

To launch applications in other languages you can use this ( Plugin as well.

michael exclaims
October 15th, 2007 at 11:31 am


as a small developer I “love” you for that app :-))

Martin screams
December 20th, 2007 at 11:16 pm

Two (very) small nits:
* The About window says: “© LangSwitch, 2007”
* In the Application menu, it says: “Hide NewApplication”

I know this doesn’t have anything to do with functionality, which I’ll definitely try next ;-)

Jussi says
March 18th, 2008 at 11:57 pm

Kenneth, just look at AppleGlot and iLocalize. Not perfect, but better.

April 30th, 2008 at 1:26 am

[…] | weil es mein content ist →teamviewer | für väter und sonstige daus →langswitch | lokalisierungshilfe →shadowclipboard | netzwerkgedächtniserweiterung →synk | 3 […]

Nicholas hums
March 31st, 2009 at 7:03 pm

Are you aware that you can translate nib files without opening them in IB? Read the nibtool man page—it allows you to import translations from a .strings file into the v1.1 nib and save it out as another langauge. Also, IB has a “don’t break the nib file” preference setting for translators.

If there is something about the Cocoa localisation system that seems backwards or broken to you, then you’ve probably overlooked the tool that makes it easy for you.

May 6th, 2009 at 8:02 pm

[…] discussing localization, if you have 23 localizations to spit out RIGHT NOW! like some of us do, here is a new addition to our Invaluable Development Tools list, LangSwitch: The only boring and time-consuming solution […]

September 3rd, 2009 at 6:08 pm

[…] Leopard?????????? […]

May 20th, 2011 at 5:48 pm

[…] ?????????????LangSwitch????????????????????????Mac??????????????? […]

September 21st, 2011 at 1:08 pm

[…] 10. LangSwitch […]

September 21st, 2011 at 1:09 pm

[…] 10. LangSwitch […]

October 22nd, 2011 at 10:38 pm

[…]  SeoSoft […]

Have something to say?