ezbounce v2.0 User Preferences System --------------------------------------------------------- Last Updated: $Date: 2008-01-03 22:56:40 -0600 (Thu, 03 Jan 2008) $ 1. Introduction The user preferences system in ezbounce v2.0 provides a powerful and flexible way for users to customize their personal settings. 2. Differences from Earlier Versions Users will find the configurable preferences and interface to be similar to old versions. The major improvement is the ability to customize preferences for individual IRC networks, servers and channels. For example, chat logging options can now be controlled for individual channels. Previously it could only turned on or off globally. 3. Organization of Preferences The configurable preferences are organized into a hierarchy of 4 different levels: - A root, or top level - IRC Network level - IRC Server level - IRC Channel level Each level has its own set of preferences. For example, the top level has options to hold the preferred vhost and fake ident, while the IRC Server level has options such as auto-detach. The settings are stored in a tree-like structure. A 'node' exists for the top level which has 1 or more children of the Network level. The pattern is repeated; each Network-level node has 1 or more children of the Server level. Once again the pattern is repeated; each Server-level node has 1 or more children of the Channel level. Initially each node only has 1 child -- called "default." So, the root node has a Network-level child "default", and that node has a Server-level child "default" and so on. Additional nodes are created as needed when you set options. For example, if you set an option on Network EFNet, a node for EFNet will be created. This structure allows settings to be customized for individual channels, networks and even particular IRC servers. For example, you can set an option for any channel named #sports, or only the channel #sports on EFNet. TODO: expand this section 4. Option Types Currently there are 3 types of preferences: - Boolean: Acceptable values for these are true/false, 0/1 or on/off - Integer: Acceptable values depend on the option being set. - String: Plain text. It is recommended you enclose these in quotes. 5. Available Preferences For brevity, the complete set of options will not be listed here. You may use the 'preferences' or 'options' command while logged in to see the list. You can also get helpful description of an option with the 'help option