GpsPrune has a handful of options which you can configure so that you don't have to set them each time you run. If you want to, GpsPrune can save these settings and load them again next time it runs, and even automatically save the settings if you want it to.
So you shouldn't need to know anything about the configuration mechanism as long as you use GpsPrune's functions to set the settings you want (eg file locations, GPS device name etc), and then choose "Save settings" from the Settings menu. GpsPrune will show you the settings it will save and will ask you where to save the file. If you accept the default file location then all your settings should be reloaded next time you launch GpsPrune, assuming that you start GpsPrune in the same way (from the same directory).
If you do want to tweak the settings file yourself, or wish to choose a different filename, then this page describes how it works.
By default, GpsPrune will try to load a file called XDG_CONFIG_HOME/gpsprune.config
or ~/.config/gpsprune.config
or %APPCONFIG%/gpsprune/gpsprune.config
depending on the platform. If this file isn't there, it doesn't matter, it'll just be ignored and GpsPrune will use default settings as before. The file won't be created for you if it doesn't exist.
Update: with earlier versions of GpsPrune, the file was called .pruneconfig
(note the dot at the start of the filename), stored either in the current directory or in the user's home directory. This location was changed with version 24 of GpsPrune, and now the contents of the old file will be migrated to the new location if the user wishes. If the user chooses not to (perhaps because they're also still using older versions of GpsPrune), then it will continue to use the old location.
If you save the settings from GpsPrune, it will suggest this default file location for you. If you want to use another location for this file, or another filename, then you'll have to tell GpsPrune where it is when you start it next time. You can do this with an extra commandline parameter, like this:
java -jar gpsprune.jar --configfile=h:/gps/gpspruneconfig.txt
You can obviously set this in any shortcuts or aliases that you're currently using so you don't have to type it in every time. If you specify a file like this and GpsPrune can't find it or can't read it, you'll get a warning message in the console.
You shouldn't need to know the file structure unless you want to manually edit it. But just in case you do, the configuration file is a simple text file, so you can edit it with any editor like Notepad, Kate or gedit. Each line in the file represents a configuration setting, with the format like a java properties file:
key=value
The key should exactly match one of the recognised parameters. These include settings such as directory paths, paths to additional programs, language settings, tile caching settings, colours, and other display settings. Any unrecognised keys will just be ignored.
The file can contain any number of settings, in any order. You can have just one in there or all possible settings.
If you want GpsPrune to automatically save all the settings each time you exit the program, just select the appropriate checkbox in the Settings menu.
But then don't forget to save your settings, so that the settings file is selected and so that the autosave setting is saved too.