]> git.madduck.net Git - etc/vim.git/blobdiff - black.py

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Fix invalid code in an omitted trailer on large expressions
[etc/vim.git] / black.py
index 57cd9a6b9da63eedabccd18d9f624108b2b3e3ee..8d551640f365e8dd0072adc08cbb0452cad1c715 100644 (file)
--- a/black.py
+++ b/black.py
@@ -46,9 +46,10 @@ from blib2to3.pgen2.parse import ParseError
 
 __version__ = "18.5b0"
 DEFAULT_LINE_LENGTH = 88
 
 __version__ = "18.5b0"
 DEFAULT_LINE_LENGTH = 88
+CACHE_DIR = Path(user_cache_dir("black", version=__version__))
+
 
 # types
 
 # types
-syms = pygram.python_symbols
 FileContent = str
 Encoding = str
 Depth = int
 FileContent = str
 Encoding = str
 Depth = int
@@ -65,6 +66,9 @@ Cache = Dict[Path, CacheInfo]
 out = partial(click.secho, bold=True, err=True)
 err = partial(click.secho, fg="red", err=True)
 
 out = partial(click.secho, bold=True, err=True)
 err = partial(click.secho, fg="red", err=True)
 
+pygram.initialize(CACHE_DIR)
+syms = pygram.python_symbols
+
 
 class NothingChanged(UserWarning):
     """Raised by :func:`format_file` when reformatted code is the same as source."""
 
 class NothingChanged(UserWarning):
     """Raised by :func:`format_file` when reformatted code is the same as source."""
@@ -2602,6 +2606,9 @@ def generate_trailers_to_omit(line: Line, line_length: int) -> Iterator[Set[Leaf
         if length > line_length:
             break
 
         if length > line_length:
             break
 
+        if leaf.type == STANDALONE_COMMENT:
+            break
+
         optional_brackets.discard(id(leaf))
         if opening_bracket:
             if leaf is opening_bracket:
         optional_brackets.discard(id(leaf))
         if opening_bracket:
             if leaf is opening_bracket:
@@ -3051,9 +3058,6 @@ def can_omit_invisible_parens(line: Line, line_length: int) -> bool:
     return False
 
 
     return False
 
 
-CACHE_DIR = Path(user_cache_dir("black", version=__version__))
-
-
 def get_cache_file(line_length: int) -> Path:
     return CACHE_DIR / f"cache.{line_length}.pickle"
 
 def get_cache_file(line_length: int) -> Path:
     return CACHE_DIR / f"cache.{line_length}.pickle"