ファイルの収集と検出

直接Blackファイルを渡すことができますが、ディレクトリを渡すこともでき、Blackはそのディレクトリを走査して、フォーマットするファイルを集めます。包含と除外の正規表現、および変更時刻を使用して、フォーマットまたはスキップするファイルを自動的に決定します。

変更されていないファイルを無視する

Blackは、--diffフラグが使用されるか、標準入力でコードが渡されない限り、既にフォーマット済みのファイルを記憶します。この情報は、ユーザーごとに保存されます。ファイルの正確な場所は、BlackのバージョンとBlackが実行されるシステムによって異なります。ファイルはポータブルではありません。一般的なオペレーティングシステムの標準的な場所は次のとおりです。

  • Windows: C:\\Users\<username>\AppData\Local\black\black\Cache\<version>\cache.<line-length>.<file-mode>.pickle

  • macOS: /Users/<username>/Library/Caches/black/<version>/cache.<line-length>.<file-mode>.pickle

  • Linux: /home/<username>/.cache/black/<version>/cache.<line-length>.<file-mode>.pickle

file-modeは、ファイルが3.6以上でのみフォーマットされたか、.pyiとしてフォーマットされたか、文字列正規化が省略されたかを決定する整数フラグです。

これらのファイルの場所をすべてのシステムで上書きするには、環境変数BLACK_CACHE_DIRを優先する場所に設定します。または、macOSとLinuxでは、XDG_CACHE_HOMEを優先する場所に設定します。たとえば、キャッシュをBlackを実行しているディレクトリに配置する場合は、BLACK_CACHE_DIR=.cache/blackを設定します。その後、Blackは上記のファイルを.cache/blackに書き込みます。BLACK_CACHE_DIRXDG_CACHE_HOMEの両方が設定されている場合、BLACK_CACHE_DIRが優先されます。

.gitignore

--excludeが設定されていない場合、Blackは存在する場合は自動的に.gitignoreファイル内のファイルとディレクトリを無視します。

除外ルールも設定しながらBlack.gitignoreを引き続き使用することを希望する場合は、--extend-excludeを使用してください。