コンテンツにスキップ
  • 初心者向け

ktlint

ktlint では、lint rule の無効化などを .editorconfig ファイルで設定できます。

.editorconfig とベースライン(ktlint-baseline.xml)は、アーキテクチャ定義に書いて katachi に伝えておくのがおすすめです。

ProjectArchitecture.kt
@file:OptIn(ExperimentalKatachiApi::class)
import me.tbsten.katachi.ExperimentalKatachiApi
import me.tbsten.katachi.dsl.architecture
val projectArchitecture = architecture {
"Tools".group {
ktlint()
}
}
// roles/Ktlint.kt
@file:OptIn(ExperimentalKatachiApi::class)
import me.tbsten.katachi.ExperimentalKatachiApi
import me.tbsten.katachi.dsl.DeclarationContainerScope
fun DeclarationContainerScope.ktlint() =
"Ktlint".group {
"EditorConfig" {
title = "EditorConfig"
summary = "ktlint のルールを設定するファイル"
layout {
"**/.editorconfig".file()
}
}
"Baseline" {
title = "ktlint ベースライン"
summary = "既存の違反を許容するために ktlint が書き出すファイル"
layout {
"**/ktlint-baseline.xml".file()
}
}
}