Skip to main content

Apply black to all code cells in a Jupyter notebook.

Project description

black-nb logo

The uncompromising code formatter, for Jupyter notebooks

Build Status Code Coverage Code Style Code Style

black-nb applies black to Jupyter notebooks.

Much of the code is taken from the original black project and the behaviour is intentionally similar.

Installation

pip install black-nb

Usage

To apply black to all code cells in notebooks under the current directory:

black-nb .

To clear cell outputs in addition to reformatting:

black-nb --clear-output .

To check if notebooks pass black and additionally have no output (files will be unchanged):

black-nb --clear-output --check .

To reformat all *.ipynb files below ./, excluding paths matching */outputs/* or */.ipynb_checkpoints/*:

black-nb --exclude '/(outputs|\.ipynb_checkpoints)/' .

Command Line Options

black-nb doesn't provide many options. You can list them by running black-nb --help:

Usage: black-nb [OPTIONS] [SRC]...

  The uncompromising code formatter, for Jupyter notebooks.

Options:
  -l, --line-length INTEGER  How many characters per line to allow.  [default:
                             79]
  --check                    Don't write the files back, just return the
                             status.  Return code 0 means nothing would
                             change.  Return code 1 means some files would be
                             reformatted.  Return code 123 means there was an
                             internal error.
  --include TEXT             A regular expression that matches files and
                             directories that should be included on recursive
                             searches.  An empty value means all files are
                             included regardless of the name.  Use forward
                             slashes for directories on all platforms
                             (Windows, too).  Exclusions are calculated first,
                             inclusions later.  [default: \.ipynb$]
  --exclude TEXT             A regular expression that matches files and
                             directories that should be excluded on recursive
                             searches. An empty value means no paths are
                             excluded. Use forward slashes for directories on
                             all platforms (Windows, too). Exclusions are
                             calculated first, inclusions later.  [default: /(
                             \.git|\.hg|\.mypy_cache|\.nox|\.tox|\.venv|_build
                             |buck-out|build|dist|\.ipynb_checkpoints)/]
  -q, --quiet                Don't emit non-error messages to stderr. Errors
                             are still emitted, silence those with
                             2>/dev/null.
  -v, --verbose              Also emit messages to stderr about files that
                             were not changed or were ignored due to
                             --exclude=.
  --clear-output             Clear cell output as part of formatting.
  --config FILE              Read configuration from PATH.
  -h, --help                 Show this message and exit.

Copyright

Copyright © 2019 Tom Catling, Liam Coatman.

black-nb is distributed under the terms of the MIT licence.

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-nb-0.3.0.tar.gz (9.6 kB view details)

Uploaded Source

File details

Details for the file black-nb-0.3.0.tar.gz.

File metadata

  • Download URL: black-nb-0.3.0.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.5

File hashes

Hashes for black-nb-0.3.0.tar.gz
Algorithm Hash digest
SHA256 523546bfa71b90b9c06f885040c78346d004d4aa5e27b81c6b1c14f1ab2573d8
MD5 894378a86b862d9e153e06262003dee2
BLAKE2b-256 0469fde6c9d8a6566aa81bd4efc2e89bb8728efe0784b63f00f0dd327d4bdb44

See more details on using hashes here.

Supported by

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