Localization
I am dictating this blog using Microsoft Vista’s built in speech recognition. I have been using speech recognition for over five years now, and I’m very excited about the quality I’m seeing. Back to WeSay…
It’s obviously important that people can easily change the user interface of WeSay to use a national or regional language that the user understands. Internationalization is an involved in topic, and it’s easy to get bogged down in all of the potential complexities. Following my personal adage”if it’s worth doing, it’s worth doing poorly”, we’ve done something pretty simple to get our localization ball rolling.
The first decision we made was that we don’t want people to have to buy special or complicated tools in order to produce a localized version of WeSay. We want them to be able to just edit a text file, or use a simple free tool. Of course, po/gettext files fit this bill.
The next decision was how to actually use that file… I tried getting the relevant gnu libraries for .net, but I just kept running into problems. Eric convinced me that I should just to write a little parser for it myself, and even though that felt so terribly wrong, I did have the parser going in a fraction of the time I had spent trying to locate/use standard libraries.
Anyhow, Eric provided some Portuguese for a few labels, and we produced the following:
We get this simply by adding /ui:br to the shortcut that launches WeSay (‘br’ is for Brazil). This causes WeSay to go looking for a file named br.po, first in the user’s project directory, and then in the WeSay common directory. Users will be able to submit po files that they have localized and are willing to include in the next distribution of WeSay. But no one needs to wait for a new distribution… they can simply make their own po file or share the file with colleagues in the area.