XENEXE

Scalafmt を sbt のプラグインとしてインストール・実行する方法


heroImage

1. はじめに

Scala の自動整形ツールは,ScalafmtScalariform が有名です。筆者は,開発頻度も高く,ドキュメントも充実している Scalafmt を愛用しています。IntelliJ IDEAプラグインとして Scalafmt を使用する場合は簡単に導入できますが,sbt のプラグインとして Scalafmt を使用する場合 1 は一手間かかります。そこで,本記事では Scalafmt を sbt のプラグインとしてインストール・実行する方法について記述します。

2. 環境情報

次章以降で行う作業は以下の環境下で行ったものである。

3. 事前準備

任意のフォルダ内に以下のようにファイルとフォルダを作成・配置します。

Terminal window
1
[dir]
2
├── project
3
└── plugins.sbt
4
└── main.scala

sbt のバージョンによって plugins.sbt の記述方式が変わってくるので Scalafmt のドキュメントを確認してください。

Terminal window
1
$ addSbtPlugin("com.geirsson" % "sbt-scalafmt" % "1.5.1")

任意でインテンドを挿入してコーディングエラーを再現しています。

main.scala
1
object Main extends App {
2
println("Hello")
3
}

4. インストール・実行

任意のフォルダ直下で以下のコマンドを実行すると Scalafmt が自動的にインストール・実行されます。

Terminal window
1
$ sbt scalafmt

インテンドが修正されていれば成功です。

main.scala
1
object Main extends App {
2
println("Hello")
3
}

5. おわりに

FAQ や .scalafmt.conf などについては Scalafmt のドキュメントに詳しく記述されているので,そちらを参照してください。最後に,本記事が少しでも Scala ユーザーの助けになれば幸いです。


  1. Visual Studio や Atom など,IntelliJ 以外の IDE,テキストエディタを使用する場合