In some addins I have written (currently using JMP 16.2) I am storing user preferences in a file inside the addin folder.
On the other side there are these PFS files which JMP uses itself to store its settings and preferences.
I think it would be a great idea to have some JSL commands to store preferences and settings in PFS files - much alike the PFS files are used in e.g. JSL-Hamcrest.
These addin-generated preference files should be persistent, so that an addin update does not remove the PFS file.
Example of an PFS file which e,g, JMP and JSL-Hamcrest does use:
Example Preferences(
GUI Location( "Bottom" ),
Use Markup( 1 ),
Show Embedded Log( 1 )
)
The PFS files store are as I have seen all data types as Strings, Numbers, List, Matrix, ...
The preference file should be loaded from the addin by its filename:
load preferences("<addin-path>\user-preferences.PFS")
To get a preference value we call a function to load the value (String, Number, List, Matrix,...)
get preference( "Use Markup" ) // => 1
For setting the preference value we call a function to set the value (String, Number, List, Matrix,...)
set preference( "Use Markup" ) = 0
After addin usage the preference file should be saved back:
save preferences("<addin-path>\user-preferences.PFS")
It would be helpful if you can add this fucntionality to the next JMP/JSL version.