X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/ea5293b0360b6e2e56c004d1e27cbe33c87dcb94..722735d20ebdc66c0da0e0df7658293455694500:/docs/the_black_code_style/future_style.md?ds=inline

diff --git a/docs/the_black_code_style/future_style.md b/docs/the_black_code_style/future_style.md
index b2cdca2..861bb64 100644
--- a/docs/the_black_code_style/future_style.md
+++ b/docs/the_black_code_style/future_style.md
@@ -47,11 +47,13 @@ with contextlib.ExitStack() as exit_stack:
     ...
 ```
 
+(labels/preview-style)=
+
 ## Preview style
 
 Experimental, potentially disruptive style changes are gathered under the `--preview`
 CLI flag. At the end of each year, these changes may be adopted into the default style,
-as described in [The Black Code Style](./index.rst). Because the functionality is
+as described in [The Black Code Style](index.md). Because the functionality is
 experimental, feedback and issue reports are highly encouraged!
 
 ### Improved string processing
@@ -93,7 +95,6 @@ parentheses are now removed. For example:
 
 ```python
 my_dict = {
-    my_dict = {
     "a key in my dict": a_very_long_variable
     * and_a_very_long_function_call()
     / 100000.0,
@@ -111,3 +112,51 @@ my_dict = {
     "another key": short_value,
 }
 ```
+
+### Improved multiline string handling
+
+_Black_ is smarter when formatting multiline strings, especially in function arguments,
+to avoid introducing extra line breaks. Previously, it would always consider multiline
+strings as not fitting on a single line. With this new feature, _Black_ looks at the
+context around the multiline string to decide if it should be inlined or split to a
+separate line. For example, when a multiline string is passed to a function, _Black_
+will only split the multiline string if a line is too long or if multiple arguments are
+being passed.
+
+For example, _Black_ will reformat
+
+```python
+textwrap.dedent(
+    """\
+    This is a
+    multiline string
+"""
+)
+```
+
+to:
+
+```python
+textwrap.dedent("""\
+    This is a
+    multiline string
+""")
+```
+
+And:
+
+```python
+MULTILINE = """
+foobar
+""".replace(
+    "\n", ""
+)
+```
+
+to:
+
+```python
+MULTILINE = """
+foobar
+""".replace("\n", "")
+```