Repolode
peterjc

peterjc/flake8-black

一个 flake8 插件,将 black 代码格式检查结果以 BLK 错误码形式输出到 flake8 中。

Star
167
Fork
11
未关闭 Issue
3
最近提交
4天前

这是什么?

flake8-black 是一个 flake8 插件,在 flake8 检查过程中调用 black 的检查模式。black 会改动的文件会以 BLK100 错误码报告,因此可以用同一条 flake8 命令同时运行 black 格式检查和其他代码规范检查。

它适合用于 git pre-commit 钩子和持续集成流程,一次 flake8 调用即可覆盖格式和其他规则。插件会读取 pyproject.toml 中的 target_version、skip_string_normalization、line_length 等 black 配置,也支持通过 --black-config 指定共享的配置文件。内部错误使用 BLK9xx 编码报告,例如文件无法读取或 TOML 格式无效。

插件目前不考虑 black 的 include 和 exclude 设置,需要在 flake8 中单独排除相应文件。由于 black 版本更新可能带来新的 BLK100 报错,建议固定 black 的版本。

核心功能

  • 01将 black 会改动的文件报告为 BLK100 flake8 错误。
  • 02读取 pyproject.toml 中的 line_length、target_version 等 black 配置。
  • 03支持通过 --black-config 指定共享的配置文件路径。
  • 04以 BLK9xx 错误码报告文件读取失败、TOML 无效等内部问题。
  • 05可通过 PyPI 或 conda-forge 安装。

适用场景

  • 在 CI 中与其他 flake8 规则一起运行 black 风格检查。
  • 通过 git pre-commit 钩子统一 Python 代码格式。
  • 在多个 Python 项目之间共享同一份 black 配置。

快速上手

  1. 1

    使用 pip 从 PyPI 安装插件

    pip install flake8-black
  2. 2

    对 Python 文件运行 flake8 以查看 BLK 代码

    flake8 example.py

使用前须知

  • 它不考虑 black 的 include 和 exclude 设置,因此这些文件需要在 flake8 中单独排除。
  • README 称 0.3.7 版本起不支持 black 25.9.0,尽管待发布的 v0.4.0 将修复此问题。

收录于专题

标签

常见问题

flake8-black 是什么?
一个 flake8 插件,将 black 代码格式检查结果以 BLK 错误码形式输出到 flake8 中。 flake8-black 是一个 flake8 插件,在 flake8 检查过程中调用 black 的检查模式。black 会改动的文件会以 BLK100 错误码报告,因此可以用同一条 flake8 命令同时运行 black 格式检查和其他代码规范检查。
flake8-black 可以免费使用吗?用的什么许可证?
flake8-black 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
flake8-black 还在维护吗?
活跃维护中。flake8-black 最近一次提交是在 2026年11月3日。
flake8-black 适合用来做什么?
在 CI 中与其他 flake8 规则一起运行 black 风格检查。 通过 git pre-commit 钩子统一 Python 代码格式。 在多个 Python 项目之间共享同一份 black 配置。
flake8-black 怎么安装和运行?
使用 pip 从 PyPI 安装插件: pip install flake8-black 对 Python 文件运行 flake8 以查看 BLK 代码: flake8 example.py
在哪里获取 flake8-black?
源代码和安装说明在 GitHub 上:https://github.com/peterjc/flake8-black

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目