У нас есть некоторые проблемы с тем, как работает форматирование кода при возврате после вызова параметров метода, который неправильно выровнен с указанным выше )
. В AndroidStudio 3.2.1 в настоящее время, но насколько я помню, это делалось. Проблема происходит в Kotlin и Java.
То, что делает автоформат, нам не нравится.
fun behaviourExample() {
this.methodCall(
lambda1 = { /*something*/ },
lambda2 = { /*somethingElse*/ }
)
.map { "Line incorrectly indented" }
.map { "I'd like the lines to be correctly indented" }
}
fun methodCall(lambda1: () -> Unit, lambda2: () -> Unit): String {
return "otherThing"
}
Мы бы хотели найти параметры для изменения автоформата следующим образом: map{}
правильно выровнен с закрытием )
fun behaviourExample() {
this.methodCall(
lambda1 = { /*something*/ },
lambda2 = { /*somethingElse*/ }
)
.map { "Line correctly indented" }
.map { "I'd like the lines to be correctly indented" }
}
Тем временем мы делаем это до methodCall
, это не красиво, но работает.
fun behaviourExample() {
this
.methodCall(
lambda1 = { /*something*/ },
lambda2 = { /*somethingElse*/ }
)
.map { "Line correctly indented but I don't like to be forced to add methodCall() in a new line" }
.map { "I'd like the lines to be correctly indented" }
}
Мы подозреваем, что это должно быть где-то в настройках -> Code Style -> Kotlin, но мы поиграли с кучей параметров и не нашли его
Выше приведен пример поведения автоформатов, но наша проблема в таких вызовах, как Single.zip()
, Observable.concat()
и т. Д. ... Отступы вводят в заблуждение, где в цепочке вы можете находиться. Таким образом, мы используем это так.
Single
.zip (
/* parameters */
)
.map { /* something */ }
вместо
Single.zip (
/* parameters */
)
.map { /* something */ }
Спасибо за любую помощь или приводит.