title: Python code style: is there a way to configure linters to split parameters into multiple lines?
body: <p>Currently I am working on a Python 3.8 project with Django 3.1.4 where I would like the code style to be enforced in the following manner:</p>
  <blockquote>
  <p>Split iterables into multiple lines, keeping brackets in separate lines from their contents. For example:</p>
  </blockquote>
  <pre><code>DATABASES = {
      &quot;default&quot;: {
          &quot;ENGINE&quot;: &quot;django.db.backends.postgresql&quot;,
          &quot;NAME&quot;: os.getenv(&quot;DATABASE_NAME&quot;, &quot;my_db&quot;),
          ...
          &quot;PORT&quot;: os.getenv(&quot;DATABASE_PORT&quot;, &quot;5432&quot;),
      }
  }
  
  ...
  
  CHOICES = (
      (LOCATION, &quot;Location&quot;),
      (INTEREST, &quot;Interest&quot;),
      (CULTURE, &quot;Culture&quot;),
  )
  </code></pre>
  <blockquote>
  <p>Split function signature parameters into multiple lines where they don't fit the same one, with one parameter per line, for readability. Example:</p>
  </blockquote>
  <pre><code>def test_user_can_filter_all_communities(
      self,
      filter_field: str,
      filter_value: JSONSerializable,
      include_results: list,
  ):
      # my code here
      ...
  </code></pre>
  <p>The most important to me at the moment being the latter.</p>
  <p>I have tried to use <code>autopep8</code>, <code>pylint</code>, <code>yapf</code> and <code>black</code>, but despite trying different configurations for each, I am currently unable to achieve this with an automatic code formatter.</p>
  <p>When I use <code>black</code>, parameters look like this:</p>
  <pre><code>def test_user_can_filter_all_communities(
      self, filter_field: str, filter_value: JSONSerializable, include_results: list
  ):
  </code></pre>
  <p>which drives me crazy because I like to &quot;enumerate&quot; how many parameters my function/method takes immediately.
  </p>
  <p>And when I use <code>yapf</code> this is what happens:</p>
  <pre><code>def test_user_can_filter_all_communities(self,
                                           filter_field: str,
                                           filter_value: JSONSerializable,
                                           include_results: list):
  </code></pre>
  <p>Which unfortunately it's still not ideal because I am verbose with variable names, so continuing indentation from parameter above is at many times impossible whilst also enforcing a line length limit.</p>
  <p>I am used to writing code this way and this style makes me productive, besides helping me spot code smells and potential bugs. But at the present moment I am working on a medium-sized codebase by myself and it's taking up too much of my time to enforce this style by manually formatting it.</p>
  <p>Is there any automatic code formatter out there which can help me achieve this? Or would anyone know how this can be achieved with one of the mentioned ones?</p>
  <p><em>(I do recall working on a project 3 years ago where we enforced this code style  with either <code>pylint</code> or <code>black</code>, so it should be feasible somehow but I cannot find out how.)</em></p>
  <p>Thank you in advance.</p>