When I migrated from C# to Flex/AIR in order to develop YNAB 3, I was met with a few surprises. One of them was that the default Flex Resource Bundles were not localized. Oh sure, they include Japanese, but not FIGS (French, Italian, German, Spanish). This means, from what I’ve been able to find, that if you want to display currencies and dates in the user’s default language, you’re stuck translating them yourself.
When we wrote YNAB Pro in C#, one of the things we got for FREE was default currency and date/time formats. I just told YNAB Pro to display money and time in the appropriate format that Windows defined, and I immediately had a partially localized application.
When I first ran into this, I assumed that surely other people had already solved this problem and posted standard .properties files somewhere, but my Google-Foo has turned up nothing. So now, I want to be that guy. Within the next few weeks, I’d like to have an open source project hosted somewhere (Google Code most likely) that will offer localized versions of the following files for every language:
How will I do this? Well, first, I’m only going to localize the parts of those files that are related to date/time/numbers/currency. In other words, the standard stuff. Secondly, I’m going to automate it. I’ll write a C# program that loops through the available cultures and spits out the appropriate values for things like decimal separators and currency symbols into the appropriate files.
You’ll be able to log on, grab these partially-localized resource bundles, configure your build process, and you’ll be a lot further along in localizing your program.
So, before I begin, I wanted to ask:
- Has someone already done this?
- Does anyone see any problems with my plan? Please let me know!
- Does anyone else think this sounds like fun and want to do it yourself? If you’re geek like me, the thought of automating the creation of so many useful files sounds like a tremendous amount of fun. Please feel free to run with this and be the hero for Flex/AIR developers everywhere. I’ll gladly trade glory for time.
- I assume I’ll have to license the files we generate under the MPL (like the Flex SDK) because this counts as a modification to existing framework files, right?