Screencast Ahoy!

Posted by Paul Haddad Thu, 07 Dec 2006 19:38:00 GMT

So after much tweaking, re-recording and re-re-re-recording the first PTHPasteboard Screencast is done. I wouldn’t say its good, but its an OK first effort. Took forever to get the video/audio settings just right but overall I’m happy with the results.

I don’t think too many people have noticed the Custom Filter Window feature, so if nothing else this is good to show that off. Feedback is as always welcomed.

Check it out!

Tags , , ,  | 5 comments | no trackbacks

Localization Part Deux

Posted by Paul Haddad Tue, 28 Nov 2006 03:39:00 GMT

I think I got most of the localization stuff cleaned up. The semi-automated process is conceptually fairly simple.

  1. Create .nib.strings files from each of the English nibs (these are basically generated with the nibtool -L command)
  2. Create a “dictionary” of all localized strings
  3. Update all localized strings files, by getting all the keys from the English version and setting the value to either, the current value, any localized value from the dictionary or the english key.
  4. Generate a list of strings that aren’t localized (this is basically to make sure nothing is missed).

So this basically creates a bunch of .nib.strings files (one/nib/locale). These then get fed in at build time to nibtool to generate the actual nibs from the English version and the locale strings file.

For the most part I was able to make the English nib elements large enough to accommodate the Japanese strings, though there are a few nibs where this couldn’t be done. For those I created partial nibs that contain just the offending elements and used the nibtool—incremental flag to properly size them.

The only thing I’d like to look at in the future, purely as an optimization step, is to generate the localized nibs on the fly from the English ones. Basically ship with the .nib.strings files and no nibs and have the English nibs translated as they are needed. This should make a pretty big difference size wise on the shipped executable once there are more then a few localizations.

I’m including the scripts I use below in case they are interesting to anyone. They are all written in Ruby and the only other dependency is the plist gem. They aren’t really all fully polished but should serve as a good starting point.

Tags , , ,  | no comments | no trackbacks