17db96d56Sopenharmony_ci:mod:`tabnanny` --- Detection of ambiguous indentation 27db96d56Sopenharmony_ci====================================================== 37db96d56Sopenharmony_ci 47db96d56Sopenharmony_ci.. module:: tabnanny 57db96d56Sopenharmony_ci :synopsis: Tool for detecting white space related problems in Python 67db96d56Sopenharmony_ci source files in a directory tree. 77db96d56Sopenharmony_ci 87db96d56Sopenharmony_ci.. moduleauthor:: Tim Peters <tim_one@users.sourceforge.net> 97db96d56Sopenharmony_ci.. sectionauthor:: Peter Funk <pf@artcom-gmbh.de> 107db96d56Sopenharmony_ci 117db96d56Sopenharmony_ci.. rudimentary documentation based on module comments 127db96d56Sopenharmony_ci 137db96d56Sopenharmony_ci**Source code:** :source:`Lib/tabnanny.py` 147db96d56Sopenharmony_ci 157db96d56Sopenharmony_ci-------------- 167db96d56Sopenharmony_ci 177db96d56Sopenharmony_ciFor the time being this module is intended to be called as a script. However it 187db96d56Sopenharmony_ciis possible to import it into an IDE and use the function :func:`check` 197db96d56Sopenharmony_cidescribed below. 207db96d56Sopenharmony_ci 217db96d56Sopenharmony_ci.. note:: 227db96d56Sopenharmony_ci 237db96d56Sopenharmony_ci The API provided by this module is likely to change in future releases; such 247db96d56Sopenharmony_ci changes may not be backward compatible. 257db96d56Sopenharmony_ci 267db96d56Sopenharmony_ci 277db96d56Sopenharmony_ci.. function:: check(file_or_dir) 287db96d56Sopenharmony_ci 297db96d56Sopenharmony_ci If *file_or_dir* is a directory and not a symbolic link, then recursively 307db96d56Sopenharmony_ci descend the directory tree named by *file_or_dir*, checking all :file:`.py` 317db96d56Sopenharmony_ci files along the way. If *file_or_dir* is an ordinary Python source file, it 327db96d56Sopenharmony_ci is checked for whitespace related problems. The diagnostic messages are 337db96d56Sopenharmony_ci written to standard output using the :func:`print` function. 347db96d56Sopenharmony_ci 357db96d56Sopenharmony_ci 367db96d56Sopenharmony_ci.. data:: verbose 377db96d56Sopenharmony_ci 387db96d56Sopenharmony_ci Flag indicating whether to print verbose messages. This is incremented by the 397db96d56Sopenharmony_ci ``-v`` option if called as a script. 407db96d56Sopenharmony_ci 417db96d56Sopenharmony_ci 427db96d56Sopenharmony_ci.. data:: filename_only 437db96d56Sopenharmony_ci 447db96d56Sopenharmony_ci Flag indicating whether to print only the filenames of files containing 457db96d56Sopenharmony_ci whitespace related problems. This is set to true by the ``-q`` option if called 467db96d56Sopenharmony_ci as a script. 477db96d56Sopenharmony_ci 487db96d56Sopenharmony_ci 497db96d56Sopenharmony_ci.. exception:: NannyNag 507db96d56Sopenharmony_ci 517db96d56Sopenharmony_ci Raised by :func:`process_tokens` if detecting an ambiguous indent. Captured and 527db96d56Sopenharmony_ci handled in :func:`check`. 537db96d56Sopenharmony_ci 547db96d56Sopenharmony_ci 557db96d56Sopenharmony_ci.. function:: process_tokens(tokens) 567db96d56Sopenharmony_ci 577db96d56Sopenharmony_ci This function is used by :func:`check` to process tokens generated by the 587db96d56Sopenharmony_ci :mod:`tokenize` module. 597db96d56Sopenharmony_ci 607db96d56Sopenharmony_ci.. XXX document errprint, format_witnesses, Whitespace, check_equal, indents, 617db96d56Sopenharmony_ci reset_globals 627db96d56Sopenharmony_ci 637db96d56Sopenharmony_ci 647db96d56Sopenharmony_ci.. seealso:: 657db96d56Sopenharmony_ci 667db96d56Sopenharmony_ci Module :mod:`tokenize` 677db96d56Sopenharmony_ci Lexical scanner for Python source code. 68