Sawfish provides two levels of configuration:
Obviously the first of these requires a lot less specialized knowledge than the second. But even then, the user has to edit startup files containing the Lisp forms setting the variables. To remove this need for hand-editing, Sawfish has a specialized system allowing all customizations to be made through a GUI, and then automatically reloaded each time that the window manager is started.
Invoke the user-customization GUI. group defines the class of customization variables to configure, or all classes if group is undefined.
There also exists commands like
customize:appearance, i.e. for
each top-level customization group, the command to customize only it
and its subgroups.
The sawfish-config program can be used to invoke the GUI manually.
In order to provide these customization options however, an extra
requirement is placed on the Lisp programmer. Instead of just using the
defvar special form to declare variables, the
macro must be used. This augments the variable with extra information
for the GUI, including such things as its required data type.
|• Defgroup and Defcustom:|
|• Customization Files:|
|• Customized Variable Status:|