DEV Community


VSCode: Setting line lengths in the Black Python code formatter

adamlombard profile image Adam Lombard (he/him) Updated on ・1 min read

The docs for the Black Python code formatter say that the formatter "is not configurable". This is largely true, but if you have Black set up to work in VSCode, you can configure the line length.

In VSCode, go 'Code -> Preferences -> Settings' and search for "python formatting black args".

Add two separate arguments, in this order: --line-length and n, where "n" is your desired number of allowed characters per line:

Interface for adding Black formatting arguments in VSCode

A few notes about line lengths in Python:

If you are working on a shared project with a team, consider bypassing the VSCode settings entirely, and setting line lengths via the project's pyproject.toml:

line-length = 119
Enter fullscreen mode Exit fullscreen mode

Discussion (6)

jordanahaines profile image
Jordan Haines • Edited

Definitely going to reference this very time I start a new project -- right after I re-learn that setting max line length in .pylintrc is not a substitute for the setting Adam's proposed here. Thanks Adam!

adamlombard profile image
Adam Lombard (he/him) Author

You're welcome, Jordan! 🙂

waylonwalker profile image
Waylon Walker

119 seems uncomfortable! Then again I have never done Django and might be missing some context here.

I generally stick to black defaults and change my flake8 config to match.

adamlombard profile image
Adam Lombard (he/him) Author

Yeah, 119 is a little wide. Apparently it's the max char width for GitHub code review, which is why the Django project uses it as a max line length.

simkimsia profile image

Thank you this helps!

adamlombard profile image
Forem Open with the Forem app