一貫性のあるシンプルなPythonのコードスタイルを徹底し、複雑なコードパターンを検出する、厳格で独自の方針を持つflake8プラグイン。
andreoliwa/nitpick
複数プロジェクトで共通の設定を適用し、設定ファイルを自動修正できるコマンドラインツール兼flake8プラグイン。
- スター
- 413
- フォーク
- 26
- 未解決の Issue
- 59
- 最終コミット
- 5 日前
これは何?
Nitpickは、複数のプロジェクト間で設定ファイルの内容を統一します。期待する設定をTOML形式のstyleファイルに記述すると、各プロジェクトのINI、TOML、YAML、JSONなどの設定ファイルに、指定したキーと値が含まれているかをチェックします。checkやfixコマンドを備えた単体のCLIとしても、flake8プラグインとしても実行できます。
nitpick fixコマンドは設定ファイルを直接編集します。blackやisortがPythonコードを整形するのと同じように使えます。styleは、Black、isort、flake8、Pylint、Mypy、Poetry、pre-commit、ShellCheckなどのツール向けプリセット集から作成でき、ほかのstyleを取り込むこともできます。
Nitpickはpip、uv、Poetry、pipx、Homebrewでインストールでき、pre-commit hookやMegaLinterとの連携にも対応しています。
主な機能
- 01INI、TOML、YAML、JSON、プレーンテキスト形式の設定ファイルを、共通のstyleに照らしてチェックします。
- 02fixコマンドで、styleに合うように設定ファイルを書き換えます。
- 03Black、isort、Flake8、Pylint、Mypyなどのツール向けプリセット集を提供します。
- 04styleに別のstyleを取り込めるため、プリセットを組み合わせられます。
- 05flake8プラグインまたはpre-commit hookとして実行できます。
ユースケース
- 複数のPythonリポジトリで、linterやformatterの設定を統一する。
- 多数のプロジェクトを抱えるチームで、pyproject.tomlやsetup.cfgの構成を共通化する。
- pre-commitやCIのパイプラインに、設定の一貫性チェックを追加する。
クイックスタート
- 1
pipxでインストールする
pipx install nitpick - 2
デフォルトのスタイルファイルをダウンロードする
nitpick init - 3
ファイルに差分がないか確認する
nitpick check
収録されている特集
トピック
よくある質問
- nitpick とは?
- 複数プロジェクトで共通の設定を適用し、設定ファイルを自動修正できるコマンドラインツール兼flake8プラグイン。 Nitpickは、複数のプロジェクト間で設定ファイルの内容を統一します。期待する設定をTOML形式のstyleファイルに記述すると、各プロジェクトのINI、TOML、YAML、JSONなどの設定ファイルに、指定したキーと値が含まれているかをチェックします。checkやfixコマンドを備えた単体のCLIとしても、flake8プラグインとしても実行できます。
- nitpick は無料で使えますか?ライセンスは?
- nitpick は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- nitpick は今もメンテナンスされていますか?
- 活発にメンテナンス中。nitpick の最終コミットは 2026年11月2日 です。
- nitpick は何に使えますか?
- 複数のPythonリポジトリで、linterやformatterの設定を統一する。 多数のプロジェクトを抱えるチームで、pyproject.tomlやsetup.cfgの構成を共通化する。 pre-commitやCIのパイプラインに、設定の一貫性チェックを追加する。
- nitpick のインストール方法は?
- pipxでインストールする: pipx install nitpick デフォルトのスタイルファイルをダウンロードする: nitpick init ファイルに差分がないか確認する: nitpick check
- nitpick はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/andreoliwa/nitpick
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
関数のMcCabe循環的複雑度を計算し、flake8プラグインとして複雑すぎるコードを検出するPythonツールです。
isinstance呼び出しの統合やifブロックの三項演算子への置き換えなど、より簡潔に書けるPythonコードを指摘するflake8プラグイン。
PyFlakes、pycodestyle、McCabeを1つのコマンドにまとめ、サードパーティ製プラグインにも対応するPythonリンターです。
Pythonのimportを選択したスタイルガイドに沿ってグループ分け・整列できているかをチェックする、flake8およびPylama用プラグイン。
Pythonのimport文を自動でソート・グループ化するユーティリティ兼ライブラリです。