最佳实践Python代码格式化器
项目描述
brunette
🟤 最佳实践Python代码格式化器
这是"black"格式化器的改进版本
--config
选项支持setup.cfg
格式。- 当
single-quotes
选项启用时,将单引号作为首选。
- 当
--single-quotes
选项使单引号成为首选。
安装
pip install brunette
使用
与'black'格式化器相同的方式使用。
brunette **/*.py
brunette *.py --config=setup.cfg
brunette *.py --line-length=79 --single-quotes
示例setup.cfg
[tool:brunette]
line-length = 79
verbose = true
single-quotes = false
# etc, etc...
这也可以与Flake8的配置相结合
[flake8]
# This section configures `flake8`, the python linting utility.
# See also https://flake8.pycqa.org/en/latest/user/configuration.html
ignore = E201,E202,E203
# E201 - whitespace after ‘(‘
# E202 - whitespace before ‘)’
# E203 - whitespace before ‘:’
# Exclude the git directory and virtualenv directory (as `.env`)
exclude = .git,.env
[tool:brunette]
line-length = 79
# etc, etc...
为什么需要存在这个项目?
-
Black的当前维护者拒绝添加单引号选项。由于他个人的偏好(这种偏好与大多数Python社区不共享)。
-
Black的当前维护者拒绝添加setup.cfg支持。setup.cfg是Python项目最广泛使用的配置文件。该库的维护者更喜欢不灵活且要求使用Poetry的"pyproject.toml",而目前很少有人使用。
-
Black采用的当前配置文件格式可能与pip的新的构建隔离上下文冲突。为了避免这种情况,建议使用
setup.cfg
文件,但该政策正在由维护者审查(https://github.com/pypa/pip/issues/8437#issuecomment-644196428)。
如何在VSCode中配置
- 获取brunette安装的完整路径。在终端中输入
which brunette
(Linux)where brunette
(Windows)
在我的情况下,这看起来像 /home/work/.pyenv/shims/brunette
。在Windows上,它更像 C:\Python39\Scripts\brunette.exe
。现在复制这个值。
-
打开 设置 UI。
-
搜索 black。
- 将此路径粘贴到 Black Path 中。
- 将
black
设置为 Python 格式化提供者。 - 将您喜欢的
--single-quotes
参数添加到 Black Args 中。
- 这就完成了!现在每次您 格式化 Python 代码 时,都会使用 brunette。
如何使用 Pre-Commit 配置
-
运行
pip install pre-commit
以安装 -
在
.pre-commit-config.yaml
中添加 brunnet 的本地仓库选项
# See https://pre-commit.git-scm.cn for more information
# See https://pre-commit.git-scm.cn/hooks.html for more hooks
repos:
- repo: https://github.com/odwyersoftware/brunette
rev: 0.2.7
hooks:
- id: brunette
# Drop-in replacement for black with brunette
# - repo: https://github.com/psf/black
# rev: stable
# hooks:
# - id: black
# language_version: python3.6
- repo: https://gitlab.com/pycqa/flake8
rev: 3.8.1
hooks:
- id: flake8
-
运行
pre-commit install
以安装 Git 预提交钩子 -
运行
pre-commit run
以验证所有文件
版本发布历史
0.2.8 (2022-11-07)
- 修复 setup.py 描述。
0.2.7 (2022-05-30)
- 将 black 版本修复为 black==21.12b0,更高版本不工作。
0.2.6 (2022-05-26)
- 将 black 版本修复为 black<22.0.0,更高版本不工作。
0.2.5 (2022-03-30)
- 针对 black 版本
22.1.0
+ 的修复。
0.2.4 (2022-03-09)
- 针对 black 的破坏性更改
black.find_project_root
的修复。
0.2.3 (2022-03-01)
- 错误修复,要求 black>=21.5b1
0.2.2 (2021-10-26)
- 错误修复,支持 "black" 版本 >=21。
0.2.1 (2021-10-01)
- 放宽对 "black" 版本的依赖性。
0.2.0 (2020-12-18)
- 添加
--single-quotes
CLI 选项。
0.1.9 (2020-12-16)
- 错误修复,将 black 版本修复为 black==20.8b1。
0.1.8 (2020-12-16)
- 修复单引号格式化不工作的问题。
0.1.7 (2020-06-26)
- 修复读取配置文件时多个选项变量的问题。
- 从 black 更新
normalize_string_quotes
。
0.1.6 (2020-06-26)
- 文档更新。
0.1.5 (2020-06-18)
- 文档更新。
0.1.4 (2020-06-16)
- 处理缺少 setup.cfg 的情况。
0.1.3 (2020-06-16)
- 处理缺少 setup.cfg 的情况。
0.1.2 (2020-06-16)
- 为 CLI 执行添加
__main__
。
0.1.1 (2020-06-15)
- 添加 wheels。
0.1.0 (2020-06-15)
- 首次发布。
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源分布
brunette-0.2.8.tar.gz (11.3 kB 查看散列)
构建分布
brunette-0.2.8-py2.py3-none-any.whl (8.8 kB 查看散列)