From: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Date: Tue, 7 May 2019 13:58:59 +0000 (-0400)
Subject: Add `black -c "code"` (#761)
X-Git-Url: https://git.madduck.net/etc/vim.git/commitdiff_plain/06004cd319a6623a1fc29b582eb81e315179629f?hp=e7a44296c3288fc4b223e61fe4f38af871dc947e

Add `black -c "code"` (#761)
---

diff --git a/README.md b/README.md
index add9285..65eff88 100644
--- a/README.md
+++ b/README.md
@@ -71,6 +71,7 @@ black {source_file_or_directory}
 black [OPTIONS] [SRC]...
 
 Options:
+  -c, --code TEXT                 Format the code passed in as a string.
   -l, --line-length INTEGER       How many characters per line to allow.
                                   [default: 88]
   -t, --target-version [py27|py33|py34|py35|py36|py37|py38]
@@ -965,6 +966,8 @@ More details can be found in [CONTRIBUTING](CONTRIBUTING.md).
 * fix feature detection for trailing commas in function definitions and
   call sites (#763)
 
+* add `black -c` as a way to format code passed from the command line (#761)
+
 * fix bug that led *Black* format some code with a line length target of 1
   (#762)
 
diff --git a/black.py b/black.py
index 7bfcfca..e7dce5b 100644
--- a/black.py
+++ b/black.py
@@ -231,6 +231,7 @@ def read_pyproject_toml(
 
 
 @click.command(context_settings=dict(help_option_names=["-h", "--help"]))
+@click.option("-c", "--code", type=str, help="Format the code passed in as a string.")
 @click.option(
     "-l",
     "--line-length",
@@ -357,6 +358,7 @@ def read_pyproject_toml(
 @click.pass_context
 def main(
     ctx: click.Context,
+    code: Optional[str],
     line_length: int,
     target_version: List[TargetVersion],
     check: bool,
@@ -397,6 +399,9 @@ def main(
     )
     if config and verbose:
         out(f"Using configuration from {config}.", bold=False, fg="blue")
+    if code is not None:
+        print(format_str(code, mode=mode))
+        ctx.exit(0)
     try:
         include_regex = re_compile_maybe_verbose(include)
     except re.error: