sbt/project/Formatting.scala

31 lines
1.2 KiB
Scala

import sbt._
import Keys._
import com.typesafe.sbt.SbtScalariform.{ ScalariformKeys => sr, _ }
object Formatting {
lazy val BuildConfig = config("build") extend Compile
lazy val BuildSbtConfig = config("buildsbt") extend Compile
lazy val settings: Seq[Setting[_]] = Seq() ++ scalariformSettings ++ prefs
lazy val prefs: Seq[Setting[_]] = {
import scalariform.formatter.preferences._
Seq(
sr.preferences := sr.preferences.value.setPreference(AlignSingleLineCaseStatements, true)
)
}
lazy val sbtFilesSettings: Seq[Setting[_]] = Seq() ++ scalariformSettings ++ prefs ++
inConfig(BuildConfig)(configScalariformSettings) ++
inConfig(BuildSbtConfig)(configScalariformSettings) ++
Seq(
scalaSource in BuildConfig := baseDirectory.value / "project",
scalaSource in BuildSbtConfig := baseDirectory.value / "project",
includeFilter in (BuildConfig, sr.format) := ("*.scala": FileFilter),
includeFilter in (BuildSbtConfig, sr.format) := ("*.sbt": FileFilter),
sr.format in Compile := {
val x = (sr.format in BuildSbtConfig).value
val y = (sr.format in BuildConfig).value
(sr.format in Compile).value
}
)
}