TIS ENGINEER NOTE

ITエンジニアのためのキャリア向上ノウハウブログ

プログラミング

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

更新日:

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ファイルを作成し、以下の内容を記述してください。

addSbtPlugin("org.ensime" % "sbt-ensime" % "2.0.1")

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

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

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

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

import org.ensime.EnsimeKeys._

ensimeIgnoreMissingDirectories := true

設定の読み込み

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

sbt ensimeConfig

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レベルの開発サポートが得られると思えば悪くないかなという印象です。

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

よく読まれている記事

エンジニア独立

2019/4/15

正社員エンジニアがフリーランスになるのは全く難しくないという事実

どうも、フリーランスエンジニアのてぃすです。 最近ではフリーランスエンジニアというのも珍しいものではなくなってきましたが、まだ誤解されている部分があります。 「フリーランスエンジニアになるのって大変なんでしょ?」 という誤解です。 エンジニアがフリーランスになるのに、 卓越した技術やセンス 業界内の幅広いコネ 仕事を取るための営業力 などは一切必要ありません。 今回はそのあたりの誤解を解消していきたいと思います。 フリーランス = ハイスキル ではない 世の中多くのエンジニアが誤解していることなんですが、 ...

続きを読む

エンジニア入門

2018/8/19

プログラミング初心者にRubyを強くオススメする理由

こんにちは、フリーエンジニアのてぃすです。 プログラミングを始めようと思った時にまず立ちはだかるのが、 どのプログラミング言語を選択するか という問題です。 Googleで『プログラミング おすすめ』や『プログラミング 初心者』などと調べてみても、 オススメプログラミング言語○選といった類の記事やサイトばかりで 結局何を勉強すればいいの? となってしまっていることでしょう。 そこで今回は、現在プログラマーとして働いている私から、これからプログラムを勉強したいという方に向け、国産プログラミング言語であるRu ...

続きを読む

エンジニア独立

2018/1/27

エンジニアは報酬・やりがい・成長機会の全てを求めるべき

こんにちは。フリーエンジニアのてぃすです。 僕は働く上で大事な要素となるのは以下の3つであると考えています。 報酬(給与)の額 やりがい 成長機会 で、これは僕のようなエンジニアという職業だと更に重要度が増します。 人手不足・需要拡大の影響もあり、事務や営業などといった非専門的な職業と比べて、選択次第で高収入を目指しやすくなっていますし、キャリア構築の重要性も他の職業よりも高いですからね。 自分の貢献した結果にふさわしい報酬を受け取りたい。 1日8時間、人生の大部分を働くことに費やすことがほとんどのわけで ...

続きを読む

エンジニア独立

2018/1/28

手数料公開のエンジニア案件紹介サービス『Lancers Top』に登録してみた

日本最大のクラウドソーシングサービスであるランサーズを運営するランサーズ株式会社が今年の10月2日より開始したサービスであるLancers Top。 僕自身既に複数の案件紹介サービスに登録しているのですが、このLancers Topでは色々と面白そうな試みをしており、興味が湧いたため、登録して個人面談まで行ってきました。 今回は実際にLancers Topを利用してみての感想や他のフリーランスエージェントと比べたときの特色などについて紹介していこうと思います。 ランサーズとは? ランサーズといえば言わずと ...

続きを読む

エンジニア独立

2019/4/26

プログラマー・エンジニアが情報発信をするべき2つの理由

こんにちは。フリーエンジニアのてぃすです。 プログラマー・ITエンジニアとして働いている人が、SNSやブログで積極的に技術的なTipsや働き方に関する考え方を発信しているのをよく見ると思います。 情報発信をしたことのない人からすると、なんでそんな一銭の得にもならない行為をやっているのか、という疑問も湧いてくるでしょう。 知っている人は知っていることですが、エンジニアにとって情報発信ってすごいメリットがある行為なんです。 そこで今日はプログラマー・ITエンジニアが今すぐにでも情報発信を始めるべき2つの理由を ...

続きを読む

-プログラミング
-,

Copyright© TIS ENGINEER NOTE , 2020 All Rights Reserved Powered by AFFINGER5.