Home | History | Annotate | Download | only in library
      1 :mod:`tabnanny` --- Detection of ambiguous indentation
      2 ======================================================
      3 
      4 .. module:: tabnanny
      5    :synopsis: Tool for detecting white space related problems in Python
      6               source files in a directory tree.
      7 
      8 .. moduleauthor:: Tim Peters <tim_one (a] users.sourceforge.net>
      9 .. sectionauthor:: Peter Funk <pf (a] artcom-gmbh.de>
     10 
     11 .. rudimentary documentation based on module comments
     12 
     13 **Source code:** :source:`Lib/tabnanny.py`
     14 
     15 --------------
     16 
     17 For the time being this module is intended to be called as a script. However it
     18 is possible to import it into an IDE and use the function :func:`check`
     19 described below.
     20 
     21 .. note::
     22 
     23    The API provided by this module is likely to change in future releases; such
     24    changes may not be backward compatible.
     25 
     26 
     27 .. function:: check(file_or_dir)
     28 
     29    If *file_or_dir* is a directory and not a symbolic link, then recursively
     30    descend the directory tree named by *file_or_dir*, checking all :file:`.py`
     31    files along the way.  If *file_or_dir* is an ordinary Python source file, it
     32    is checked for whitespace related problems.  The diagnostic messages are
     33    written to standard output using the :func:`print` function.
     34 
     35 
     36 .. data:: verbose
     37 
     38    Flag indicating whether to print verbose messages. This is incremented by the
     39    ``-v`` option if called as a script.
     40 
     41 
     42 .. data:: filename_only
     43 
     44    Flag indicating whether to print only the filenames of files containing
     45    whitespace related problems.  This is set to true by the ``-q`` option if called
     46    as a script.
     47 
     48 
     49 .. exception:: NannyNag
     50 
     51    Raised by :func:`process_tokens` if detecting an ambiguous indent. Captured and
     52    handled in :func:`check`.
     53 
     54 
     55 .. function:: process_tokens(tokens)
     56 
     57    This function is used by :func:`check` to process tokens generated by the
     58    :mod:`tokenize` module.
     59 
     60 .. XXX document errprint, format_witnesses, Whitespace, check_equal, indents,
     61    reset_globals
     62 
     63 
     64 .. seealso::
     65 
     66    Module :mod:`tokenize`
     67       Lexical scanner for Python source code.
     68