Openbakery Translation Engine 0.1 released

Yesterday and today I created a translation engine for java which has several advantages over the default i18n using resource bundles:

  • The text in the default locale is the key for the translation
  • There is no properties file for the default locale, only for translations
  • There is a tool which analyzes a source tree and finds all translations which are missing in a certain properties file
  • This tool also finds entries in the properties file which are not used anymore and can be removed

Usage is really simple, you just call a static "translate" - method:

translate("This string should be translated"); //Simple translation
translate("This string has parameters: {0} and {1}", "Foo", "Bar"); //Translations can be parameterized
translate(File.class, "Open"); //Translations can have a context, which is the name of a Java class

You can find a complete example, download links, the bug tracker, and other information on the project page at openbakery.org. There is also a freshmeat project page for the project which should be available soon.