=== Coding Style ===

Sutekh follows PEP 8: Style Guide for Python Code [1] with the following
choices, exceptions, additions and clarifications:

 * Variable names use Hungarian notation with a single letter prefix.
   The prefixes are:
     sMoo (string)
     iMoo (int)
     fMoo (float or file handle)
     aMoo (list)
     tMoo (tuple)
     dMoo (dictionary)
     oMoo (complex object)
     bMoo (boolean)

[1] http://www.python.org/dev/peps/pep-0008/

Constants are named using the ALL_CAPS naming cnvention

=== Regular Expressions for Matching Bad Style ===

 * Assignments without spaces around equals:
   r'^\s*[A-Za-z0-9.]+=[A-Za-z0-9.]+(\([^()]*\))?$'

=== Pylint options ====

While pylint doesn't handle some of the inheritence cases well (especially 
involving dialogs from gtk), it is useful for detecting some style and syntax
issues.

A sample pylintrc file is available as tools/sutekh_pylint. Some useful
additional checkers for pylint are also available in tools.

We use the _<Variable Name> convention to mark dummy variables and arguments
that will not be used - this is mainly used for loop counters and the required
arguments to the gtk callback functions.

In general, when disabling a pylint message, a comment explaining why
the message should be overridden is expected.

Currently (10/12/2008), I test using pylint 0.14 - some of the warnings
generated by SQLObject classes should be unnessecary with later versions
of pylint.
