DEV Community

Discussion on: VSCode: Using Black to automatically format Python

Collapse
 
waylonwalker profile image
Waylon Walker • Edited

I generally need to pass in the black path as well. This might be compatibility issues with wsl.

pipx install black
Enter fullscreen mode Exit fullscreen mode

settings.json

  "python.formatting.provider": "black",
  "python.formatting.blackPath": "/home/<user>/.local/bin/black",
Enter fullscreen mode Exit fullscreen mode

additionally you can turn on automatic formatting on save

"editor.formatOnSave": true,
Enter fullscreen mode Exit fullscreen mode

if you don't want automatic formatting on save for every language

  "editor.formatOnSave": false,
  "[python]": {
    "editor.formatOnSave": true,
   },
Enter fullscreen mode Exit fullscreen mode
Collapse
 
rngallen profile image
Luqman Jr

Thanks
What if I want to override (88) the default chars per line?

Collapse
 
adamlombard profile image
Adam Lombard • Edited

I'm a fan of using pyproject.toml, but as an alternative to Waylon's comment regarding config files, you can also configure the line length in VSCode.

Collapse
 
waylonwalker profile image
Waylon Walker

You can add this to your pyproject.toml, ~/.black, $XDG_CONFIG_HOME/black, or ~/.config/black

[tool.black]
line-length = 88
Enter fullscreen mode Exit fullscreen mode

black.readthedocs.io/en/stable/usa...