X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/e911c79809c4fd9b0773dea5b6a0e710b59614cf..d1e0d79e38db934a65dded44b903f05ab85829b4:/black.py diff --git a/black.py b/black.py index 8a4eb05..54044a5 100644 --- a/black.py +++ b/black.py @@ -102,7 +102,9 @@ def main( report = Report() try: if not p.is_file() and str(p) == '-': - changed = format_stdin_to_stdout(line_length=line_length, fast=fast) + changed = format_stdin_to_stdout( + line_length=line_length, fast=fast, write_back=not check + ) else: changed = format_file_in_place( p, line_length=line_length, fast=fast, write_back=not check @@ -178,7 +180,9 @@ def format_file_in_place( return True -def format_stdin_to_stdout(line_length: int, fast: bool) -> bool: +def format_stdin_to_stdout( + line_length: int, fast: bool, write_back: bool = False +) -> bool: """Format file on stdin and pipe output to stdout. Return True if changed.""" contents = sys.stdin.read() try: @@ -189,7 +193,8 @@ def format_stdin_to_stdout(line_length: int, fast: bool) -> bool: return False finally: - sys.stdout.write(contents) + if write_back: + sys.stdout.write(contents) def format_file_contents( @@ -872,7 +877,7 @@ def whitespace(leaf: Leaf) -> str: # noqa C901 return DOUBLESPACE assert p is not None, f"INTERNAL ERROR: hand-made leaf without parent: {leaf!r}" - if t == token.COLON and p.type != syms.subscript: + if t == token.COLON and p.type not in {syms.subscript, syms.subscriptlist}: return NO prev = leaf.prev_sibling @@ -905,7 +910,7 @@ def whitespace(leaf: Leaf) -> str: # noqa C901 return NO elif prevp.type == token.COLON: - if prevp.parent and prevp.parent.type == syms.subscript: + if prevp.parent and prevp.parent.type in {syms.subscript, syms.sliceop}: return NO elif prevp.parent and prevp.parent.type in {syms.factor, syms.star_expr}: