diff --git a/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt b/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt index ab9a10aa251..10dbac21e46 100644 --- a/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt +++ b/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt @@ -251,6 +251,9 @@ fun createSpacingBuilder(settings: CodeStyleSettings, builderUtil: KotlinSpacing betweenInside(TYPE_ARGUMENT_LIST, LAMBDA_ARGUMENT, CALL_EXPRESSION).spaces(1) between(WHEN_ENTRY, WHEN_ENTRY).lineBreakInCode() + + around(BY_KEYWORD).spaces(1) + betweenInside(IDENTIFIER, PROPERTY_DELEGATE, PROPERTY).spaces(1) } custom { diff --git a/idea/testData/formatter/By.after.kt b/idea/testData/formatter/By.after.kt new file mode 100644 index 00000000000..0635a912b67 --- /dev/null +++ b/idea/testData/formatter/By.after.kt @@ -0,0 +1,4 @@ +class Bar(val r: Runnable) : Runnable by r +class Foo { + val bar by lazy { "" } +} diff --git a/idea/testData/formatter/By.kt b/idea/testData/formatter/By.kt new file mode 100644 index 00000000000..bba9825e8d2 --- /dev/null +++ b/idea/testData/formatter/By.kt @@ -0,0 +1,4 @@ +class Bar(val r: Runnable) : Runnable by r +class Foo { + val bar by lazy { "" } +} diff --git a/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java b/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java index 68ecd44eb8a..5c73ebefa9d 100644 --- a/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java @@ -98,6 +98,12 @@ public class FormatterTestGenerated extends AbstractFormatterTest { doTest(fileName); } + @TestMetadata("By.after.kt") + public void testBy() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/formatter/By.after.kt"); + doTest(fileName); + } + @TestMetadata("Cast.after.kt") public void testCast() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/formatter/Cast.after.kt");