Now that Jalbum 8.9 supports skin models, I've created the attached utility for skin developers to create a SkinModel.java file from a headless-settings.jap file (Tools -> Skin developer -> Prepare for online and console use).
The skin model is a method of data-typing (and initializing) skin variables without Jalbum guessing the data type from an entry in a *.jap file.
I realize that my utility also has to guess the data types from the *.jap file but it was created to simply take away some of the tediousness of manually creating a SkinModel.java file (either by editing a headless-settings.jap file or from scratch). (My skin has over 1,000 skin variables and I needed some kind of automation to get me started.)
Load the 'Create Jalbum Skin Model File' as a skin, feed it a headless-settings.jap file and click 'Create'. A SkinModel.java file will be created alongside the headless-settings.jap file.
It rifles through the selected headless-settings.jap file and looks for keys starting with "skin.". If the property value is 'true' or 'false' it'll define the variable as a boolean. If it looks like a number then it'll be defined as an int (unless there is a single decimal point in which case it'll be defined as a double). Anything else (including empty entries) will be defined as a String.
You'll probably need to check the resulting SkinModel.java file to make sure all data types are actually as you intend them to be. eg.
This utility cannot know whether you wish var1 and var2 to be treated as Strings or an int and boolean respectively.
The SkinModel.java file can then be put directly into the relevant skin's 'plugins' folder (or can be compiled into SkinModel.class first).
Skin developers who do not have the JDK installed might like to use this remote compiling service to compile their SkinModel.java file into SkinModel.class. (No need to upload any library files, don't bother selecting any checkboxes and select 1.5.0 as the JDK version.)
There should then be no need for a headless-settings.jap file in the skin and any skin variables set via hints.jap files can be removed. (Entries for Jalbum variables set in hints.jap files should be kept.)
Most skins are unlikely to have anywhere near the number of skin variables that I had to content with but for anyone who does, I hope this is somewhat helpful.
I just updated the file attached to my previous post as you posted your last comment.
The tool now lists the skin variables in alphabetical order. It might be easier for any skin developer having to scan the resulting file to check that all data types are as intended.