Using comments in different files seemed like an inefficient way to tell some implementation details of this software, so here are some info which may be important in the future for some reason :) == Importing the modules == ........... == Implementing config file parsers == Although the configuration files of the apps have similarities almost all of the apps needed its own module because of small differences in their configuration file structures. These are: 1) File structure type: xml: pidgin, amsn (with very different structures) javascript: mozilla key-value pairs: kde, gftp, aria2, wget key-value pairs (with sections unignorable): svn 2) Inactivation of an option: delete the line: svn, mozilla, wget delete the value: pidgin, kde, gftp, aria, amsn 3) Keys of the options: Almost all of them are different. Although, there are similarities among some of them, not all of the options have the same key or are available for all. 4) Existence of the config file: generated after install: generated after first use: generated by the module itself: However, the info other than the proxy related stuff "must be preserved" in all of these files, so, all parsers for the config files try not to violate this rule.