How ktfmt handles lambda line breaks
mainBy default, ktfmt respects user-authored line breaks inside lambda bodies. This preserves the semantic structure of DSLs (like Jetpack Compose or Gradle scripts) without forcing a specific layout.
- A multi-line lambda in the source remains multi-line.
- A single-line lambda in the source remains single-line.
// Multi-line in source is preserved
App {
SelectableCard {
Button { Text("Click me") }
}
}
// Single-line in source is also preserved
dependencies { implementation(libs.androidx.activity) }
val state = remember { mutableStateOf(false) }