ScalaをAtomで開発しやすくする

      2017/12/10

AtomでScalaを開発する際に、ある程度使いやすくするための設定をやっていきます。環境はMacを前提として進めていきます。

パッケージ

ひとまず以下の2つのパッケージをインストールします。

language-scala

何はともあれ言語サポート

https://atom.io/packages/language-scala

ensime

定義元ジャンプや補完、型検索を可能にしてくれる凄い子。AtomがIDEになっちゃう!

https://atom.io/packages/ensime

apmコマンドでインストールした場合、再起動時にエラーが発生する可能性がありますが、その際はもう一度再起動してみてください。

ensimeの設定

language-scalaの方は入れるだけで働いてくれるのですが、ensimeの方はちまちまと設定が必要となります。

sbtのインストール

自分はScalaをインストールするときに同時にインストールしたので問題ありませんでしたが、まだsbtがPC上に存在していない場合、インストールしておきましょう。

Atom側の設定

sbtの実行パスを設定します。

  1. Atomの設定画面
  2. Package
  3. ensimeで検索
  4. 検索結果に出てきたensimeのSettingを選択
  5. sbt Execの中にsbtの実行パスを設定
    • 実行パスはsbtを特別な方法でインストールしていない限り、/usr/local/bin/sbtとなっています。異なるパスにインストールしている場合はそのパスを入力してください。

sbtのプラグインにensimeを追加

ホームディレクトリ配下に.sbt/XXX[数字]といった形のディレクトリが存在していますので、pluginsディレクトリを作成し、plugins.sbtファイルを作成し、以下の内容を記述してください。

実行時の最新バージョンについてはこちらのページでコマンドを確認すればOKでしょう。

ENSIMEがディレクトリを作成しないように設定

Ensimeがバージョン番号のついたscalaディレクトリを作成するケースがあるので、それを防ぐための設定をしておきます。

ホームディレクトリ配下の.sbt/XXX[数字]ディレクトリにglobal.sbtというファイルを作成し、以下のように記述します。

設定の読み込み

Atomとsbtへの設定が完了したら、プロジェクトディレクトリで以下のコマンドを実行します。

ensimeの実行

あとは同じくプロジェクトディレクトリにおいてコマンドパレット(cmd + shift + P)からEnsime: Startを起動すればOKです。

Ensime:Startにおいてエラーが発生した場合

僕の場合、Ensime:Startを実行した際、エラーが発生しました。以下の手順を行なったところ、正常に起動するようになりました。

  1. Atomのensimeパッケージをアンインストール
  2. apm install ensime/ensime-atomを実行
  3. Atomを再起動
  4. Ensime:Startを実行

まとめ

プロジェクトごとに設定の反映とスタートを行わなければならないのが手間ではありますが、IDEレベルの開発サポートが得られると思えば悪くないかなという印象です。

ディレクトリ開いたときに自動的に起動するようなスクリプトなど作れれば便利そう・・・

 - プログラミング , ,