Skip to content

python-lsp-server plugin that adds support to black autoformatter, forked from https://github.com/rupert/pyls-black/

License

Notifications You must be signed in to change notification settings

Ruslan0Dev/python-lsp-black

 
 

Repository files navigation

python-lsp-black

PyPI Code style: black Python

Black plugin for the Python LSP Server.

Install

In the same virtualenv as python-lsp-server:

pip install python-lsp-black

Usage

To avoid unexpected results you should make sure yapf and autopep8 are not installed.

  • python-lsp-black can either format an entire file or just the selected text.
  • The code will only be formatted if it is syntactically valid Python.
  • Text selections are treated as if they were a separate Python file. Unfortunately this means you can't format an indented block of code.
  • python-lsp-black will use your project's pyproject.toml if it has one.
  • python-lsp-black only officially supports the latest stable version of black. An effort is made to keep backwards-compatibility but older black versions will not be actively tested.

Development

To install the project for development you need to specify the dev optional dependencies:

python -m venv .venv
. .venv/bin/activate
pip install -e .[dev]

This project uses pre-commit hooks to control code quality, install them to run them when creating a git commit, thus avoiding seeing errors when you create a pull request:

pre-commit install

To run tests:

make test

To run linters:

make lint  # just a shortcut to pre-commit run -a
make <linter_name>  # black, flake8, isort, mypy

To upgrade the version of the pre-commit hooks:

pre-commit autoupdate
# check and git commit changes to .pre-commit-config.yaml

About

python-lsp-server plugin that adds support to black autoformatter, forked from https://github.com/rupert/pyls-black/

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 96.9%
  • Makefile 3.1%