Skip to main content

Seamless Proxy CLI for black ("The uncompromising code formatter") with support for non-pyproject.toml config files

Project description

Build Status Code Coverage PyPI - Python Version PyPI MIT License Automatic PyPI Release

black-configparser

Seamless proxy CLI for black ("The uncompromising code formatter") with support for non-pyproject.toml config files.

Table of Contents

  1. About the Project
  2. Installation
  3. Usage
  4. Known issues
  5. License

About the Project

The black-configparser is yet another tool (next to brunette, white, and maybe a few more out there), which tries to fill the gap of missing setup.cfg (or just any other non-pyproject.toml) config file.

Why it is different?

Unlike other tools, tries to stay dumb simple and add only minimum needed overhead to black usage.

  1. It is seamless - it works on the same CLI command - black - just passing logic through some extra code!
  2. There is no complex argument processing, if config file is present, the values set there are passed directly to black.
  3. Code of this tool is independent from black insides and will work properly as long as black won't make any braking changes in its command line options.

Installation

$ pip install black-configparser

Usage

  • Supported configuration files: setup.cfg, tox.ini.
  • Configuration file section: [black] or [tools:black].

Important! :warning:

  • When you black-configparser finds black configuration in any of supported file(s), most black's built-in command line arguments become unavailable.
    Exceptions:
    • --check
    • --code
    • --diff
    • --help
    • --verbose
    • --version
  • The black-configparser can be temporarily disabled, by adding --no-config-file flag to black command, for example:
    $ black --no-config-file --check ./path/to/file.py
    

Example configuration

[black]
line-length = 120
target-version =
  py27
  py33
  py34
  py35
  py36
  py37
  py38
pyi = True
skip-string-normalization = True
color = True
include = \.pyi?$
exclude = /(\.direnv|\.eggs|\.git|\.hg|\.mypy_cache|\.nox|\.tox|\.venv|\.svn|_build|buck-out|build|dist)/
force-exclude = lorem ipsum
quiet = True
verbose = True
  • Almost any option available for black (black --help) can be put onto config file.
  • Values for multi-value arguments must be one per line (separated by \n char).
  • Flags (arguments without values) must be set in config file as = True.

Known issues

  • Undefined behavior, when running with one of allowed CLI arguments which is also set in the config file.
  • After black-configparser package is uninstalled, the black command does not work anymore and black package must be reinstalled.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

black-configparser-0.2.0b2.tar.gz (5.8 kB view hashes)

Uploaded Source

Built Distribution

black_configparser-0.2.0b2-py3-none-any.whl (6.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page