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