style guide enforcement tools like Flake8. Since ``W503`` is not PEP 8 compliant,
you should tell Flake8 to ignore these warnings.
+### Parentheses
+
+Some parentheses are optional in the Python grammar. Any expression can
+be wrapped in a pair of parentheses to form an atom. There are a few
+interesting cases:
+
+- `if (...):`
+- `while (...):`
+- `for (...) in (...):`
+- `assert (...), (...)`
+- `from X import (...)`
+
+In those cases, parentheses are removed when the entire statement fits
+in one line, or if the inner expression doesn't have any delimiters to
+further split on. Otherwise, the parentheses are always added.
+
## Editor integration
2. Locate your `black` installation folder.
- $ which black # MacOS/Linux
+ On MacOS / Linux / BSD:
+
+ $ which black
/usr/local/bin/black # possible location
- <!-->
+ On Windows:
- $ where black # Windows
+ $ where black
%LocalAppData%\Programs\Python\Python36-32\Scripts\black.exe # possible location
-
+
3. Open External tools in PyCharm with `File -> Settings -> Tools -> External Tools`.
4. Click the + icon to add a new external tool with the following values:
Use [joslarson.black-vscode](https://marketplace.visualstudio.com/items?itemName=joslarson.black-vscode).
+### SublimeText 3
+
+Use [sublack plugin](https://github.com/jgirardet/sublack).
### Other editors
that is pinned to the latest release on PyPI. If you'd rather run on
master, this is also an option.
+
+## Ignoring non-modified files
+
+*Black* remembers files it already formatted, unless the `--diff` flag is used or
+code is passed via standard input. This information is stored per-user. The exact
+location of the file depends on the black version and the system on which black
+is run. The file is non-portable. The standard location on common operating systems
+is:
+
+* Windows: `C:\\Users\<username>\AppData\Local\black\black\Cache\<version>\cache.pkl`
+* macOS: `/Users/<username>/Library/Caches/black/<version>/cache.pkl`
+* Linux: `/home/<username>/.cache/black/<version>/cache.pkl`
+
+
## Testimonials
**Dusty Phillips**, [writer](https://smile.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=dusty+phillips):
## Change Log
+### 18.4a3
+
+* generalized star expression handling, including double stars; this
+ fixes multiplication making expressions "unsafe" for trailing commas (#132)
+
+* fix parsing of complex expressions after star and double stars in
+ function parameters (#2)
+
+### 18.4a2
+
+* fixed parsing of unaligned standalone comments (#99, #112)
+
+* fixed placement of dictionary unpacking inside dictionary literals (#111)
+
+* Vim plugin now works on Windows, too
+
+* fixed unstable formatting when encountering unnecessarily escaped quotes
+ in a string (#120)
+
+
### 18.4a1
* added `--quiet` (#78)
+* added automatic parentheses management (#4)
+
* added [pre-commit](https://pre-commit.com) integration (#103, #104)
* fixed reporting on `--check` with multiple files (#101, #102)
* fixed removing backslash escapes from raw strings (#100, #105)
+
### 18.4a0
* added `--diff` (#87)
Glued together by [Łukasz Langa](mailto:lukasz@langa.pl).
Maintained with [Carol Willing](mailto:carolcode@willingconsulting.com),
-[Carl Meyer](mailto:carl@oddbird.net), and
-[Mika Naylor](mailto:mail@autophagy.io).
+[Carl Meyer](mailto:carl@oddbird.net),
+[Mika Naylor](mailto:mail@autophagy.io), and
+[Zsolt Dollenstein](mailto:zsol.zsol@gmail.com).
Multiple contributions by:
* [Anthony Sottile](mailto:asottile@umich.edu)
* Hugo van Kemenade
* [Ivan Katanić](mailto:ivan.katanic@gmail.com)
* [Osaetin Daniel](mailto:osaetindaniel@gmail.com)
-* [Zsolt Dollenstein](mailto:zsol.zsol@gmail.com)