32.8. tabnanny — あいまいなインデントの検出

ソースコード: Lib/tabnanny.py


差し当たり、このモジュールはスクリプトとして呼び出すことを意図しています。しかし、IDE 上にインポートして下で説明する関数 check() を使うことができます。

注釈

このモジュールが提供する API を将来のリリースで変更する確率が高いです。このような変更は後方互換性がないかもしれません。

tabnanny.check(file_or_dir)

file_or_dir がディレクトリであってシンボリックリンクでないときに、 file_or_dir という名前のディレクトリツリーを再帰的に下って行き、この通り道に沿ってすべての .py ファイルをチェックします。 file_or_dir が通常の Python ソースファイルの場合には、問題のある空白をチェックします。診断メッセージは print() 関数を使って標準出力に書き込まれます。

tabnanny.verbose

冗長なメッセージをプリントするかどうかを示すフラグ。スクリプトとして呼び出された場合は、-v オプションによって増加します。

tabnanny.filename_only

問題のある空白を含むファイルのファイル名のみをプリントするかどうかを示すフラグ。スクリプトとして呼び出された場合は、-q オプションによって真に設定されます。

exception tabnanny.NannyNag

あいまいなインデントを検出した場合に process_tokens() が送出します。 この例外は check() で捕捉され処理されます。

tabnanny.process_tokens(tokens)

この関数は、 tokenize モジュールによって生成されたトークンを check() が処理するために使われます。

参考

tokenize モジュール
Pythonソースコードの字句解析器。