So Many Strings, So Little Time

I've been working with Java for almost thirty years and in all that time, I've never had to internationalize a GUI app. That is, until now.

Alhena 5.2.8 is out with a figurative metric ton of enhancements and fixes. Before I get to the strings, I wanted to mention emojis - specifically emoji optimization.

Early versions of Alhena could take nearly ten seconds to load Acidus's comprehensive emoji page on my Mac M1 macbook. That number improved over time and more recently settled in at a little over two seconds for sprite emojis. The new version can render that page in less than a second (JIT willing). Sprite emojis are faster than font-based but font-based also got a huge performance boost - so good, in fact, that I'm embarrassed to say how slow they used to be.

EDIT TO REMOVE HUMBLE BRAG

Back to strings. Alhena 5.2.8 lays the groundwork to support multiple languages in the UI. The default language file is "MessagesBundle.properties" in the resources folder. To create a translation, copy that file to one with the locale in the name. For example, "MessagesBundle_fr.properties" for French. If you're French Canadian, the file would be "MessagesBundle_fr_CA.properties" and so on. Next, edit the file and change the value strings (leave the keys). You can force Alhena to use a different locale by setting the ALHENA_LOCALE environment variable.

This is the first time I've done this so there are probably unnecessary duplicates and other non-standard oddities. You have to restart the app to test your changes. If you want your translation included in the next official Alhena release, do it via GitHub or send the file to bradmgrier@gmail.com. I've thought about using a translation app to create these files but that would probably be a recipe for disaster.

Alhena

Acidus Emoji Page