ktlint
ktlintA linter / formatter for Kotlin. Configuration lives in .editorconfig.
ktlint lets you configure things like disabling lint rules through the .editorconfig file.
We recommend declaring .editorconfig and the baseline (ktlint-baseline.xml) in your architecture definition so katachi knows about them.
@file:OptIn(ExperimentalKatachiApi::class)
import me.tbsten.katachi.ExperimentalKatachiApiimport me.tbsten.katachi.dsl.architecture
val projectArchitecture = architecture { "Tools".group { ktlint() }}
// roles/Ktlint.kt@file:OptIn(ExperimentalKatachiApi::class)
import me.tbsten.katachi.ExperimentalKatachiApiimport me.tbsten.katachi.dsl.DeclarationContainerScope
fun DeclarationContainerScope.ktlint() = "Ktlint".group { "EditorConfig" { title = "EditorConfig" summary = "The file that configures ktlint's rules" layout { "**/.editorconfig".file() } }
"Baseline" { title = "ktlint baseline" summary = "The file ktlint writes out to tolerate existing violations" layout { "**/ktlint-baseline.xml".file() } } }