Regarding the textual format for your configuration fileRegarding the textual format for your configuration file (be it generated or not), I believe that you mostly need to document it well well (and the choice of some particular format is notnot that importantimportant; however I recommend to let your user be able to put some -skipped- comments inside it). You could use JSON (preferably with some JSON parser accepting and skipping comments with usual //
till eol or /*
...*/
...), or YAML, or XML, or INI or your own thing. Parsing a configuration file is reasonably easy (and you'll find many libraries related to that task).