加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何自动格式化sbt构建文件与标量?

发布时间:2020-12-16 19:04:40 所属栏目:安全 来源:网络整理
导读:我想格式化我的sbt构建文件与标量.在启动sbt时,是否可以在构建定义本身上运行 scalariform? 解决方法 把它放在project / scalariform.sbt中: addSbtPlugin("com.typesafe.sbt" % "sbt-scalariform" % "1.2.0") 而在scalariform.sbt: import scalariform.f
我想格式化我的sbt构建文件与标量.在启动sbt时,是否可以在构建定义本身上运行 scalariform?

解决方法

把它放在project / scalariform.sbt中:

addSbtPlugin("com.typesafe.sbt" % "sbt-scalariform" % "1.2.0")

而在scalariform.sbt:

import scalariform.formatter.preferences._
import ScalariformKeys._

lazy val BuildConfig = config("build") extend Compile
lazy val BuildSbtConfig = config("buildsbt") extend Compile

val foo: Int => Int = {
  case 1 => 1
  case     2 => 2
}

noConfigScalariformSettings

inConfig(BuildConfig)(configScalariformSettings)

inConfig(BuildSbtConfig)(configScalariformSettings)

scalaSource in BuildConfig := baseDirectory.value / "project"

scalaSource in BuildSbtConfig := baseDirectory.value

includeFilter in (BuildConfig,format) := ("*.scala": FileFilter)

includeFilter in (BuildSbtConfig,format) := ("*.sbt": FileFilter)

format in BuildConfig := {
  val x = (format in BuildSbtConfig).value
  (format in BuildConfig).value
}

preferences := preferences.value.
  setPreference(AlignSingleLineCaseStatements,true).
  setPreference(AlignParameters,true)

跑:

helloworld> build:scalariformFormat
[info] Formatting 1 Scala source {file:/Users/eed3si9n/work/helloworld/}helloworld(buildsbt) ...
[info] Reformatted 1 Scala source {file:/Users/eed3si9n/work/helloworld/}helloworld(buildsbt).
[success] Total time: 1 s,completed Oct 5,2013 2:58:45 PM

魔法!

val foo: Int => Int = {
  case 1 => 1
  case 2 => 2
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读