Depending on .editorconfig property ij_kotlin_line_break_after_multiline_when_entry blank lines are added between all when-entries in a when-statement if the statement contains at least one multiline when-entry.
Simple when-statements (e.g. all when-entries are single line) then blank lines between the when-entries are removed (regardless of ij_kotlin_line_break_after_multiline_when_entry)
Closes #2533
Checklist
Before submitting the PR, please check following (checks which are not relevant may be ignored):
[X] Commit message are well written. In addition to a short title, the commit message also explain why a change is made.
[X] At least one commit message contains a reference Closes #<xxx> or Fixes #<xxx> (replace<xxx> with issue number)
[X] Tests are added
[X] KtLint format has been applied on source code itself and violations are fixed
[X] PR title is short and clear (it is used as description in the release changelog)
[X] Snapshot documentation in case documentation is to be released together with a code change
[ ] Release documentation in case documentation is related to a released version of ktlint and has to be published as soon as the change is merged to master
Description
Add rule blank-line-between-when-conditions.
Depending on
.editorconfig
propertyij_kotlin_line_break_after_multiline_when_entry
blank lines are added between all when-entries in a when-statement if the statement contains at least one multiline when-entry.Simple when-statements (e.g. all when-entries are single line) then blank lines between the when-entries are removed (regardless of
ij_kotlin_line_break_after_multiline_when_entry
)Closes #2533
Checklist
Before submitting the PR, please check following (checks which are not relevant may be ignored):
Closes #<xxx>
orFixes #<xxx>
(replace<xxx>
with issue number)Documentation is updated. See difference between snapshot and release documentation