Documents
・Wiki Home
https://github.com/ensime/ensime-emacs/wiki
・Command Reference
https://github.com/ensime/ensime-emacs/wiki/Emacs-Command-Reference
・ENSIME SBT(Ensime用の設定ファイル生成ツール)設定
https://github.com/ensime/ensime-sbt
試した環境
・Mac OSX YosemiteかEl Capitan
・Emacs 24.5
構築
Scala+sbt
brew install scala
brew install sbt
Emacsインストール
scala-mode2+Ensimeインストール
~/.emacs.d/init.elに以下の記述を追加しEmacsを再起動
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
(unless (package-installed-p 'scala-mode2)
(package-refresh-contents) (package-install 'scala-mode2))
(unless (package-installed-p 'ensime)
(package-refresh-contents) (package-install 'ensime))
(setenv "PATH" (concat "PATH_TO_SBT:" (getenv "PATH")))
(setenv "PATH" (concat "PATH_TO_SCALA:" (getenv "PATH")))
(require 'scala-mode2)
(require 'ensime)
(add-hook 'scala-mode-hook 'ensime-scala-mode-hook)
sbt pluginの設定
~/.sbt/0.13/plugins/plugins.sbtに以下を追加
resolvers += Resolver.sonatypeRepo("snapshots")
addSbtPlugin("org.ensime" % "ensime-sbt" % "0.2.3")
// project/plugins.sbt
dependencyOverrides += "org.scala-sbt" % "sbt" % "0.13.8"
プロジェクト毎のEnsime用設定ファイル生成
プロジェクトのディレクトリに移動し以下コマンドを実行
sbt gen-ensime
Ensimeを起動
Emacs起動後に以下を実行
M-x ensime
よく使ってる機能
ショートカット | 説明 |
---|---|
C-c C-v f | ソースをフォーマット |
C-c C-v r | 呼び出し元にジャンプ |
C-c C-v i | カーソルが当たってる要素をインスペクト |
C-c C-c a | 全ソースを型チェック |
C-c C-t t | 現在のクラスのテストクラスに移動 |
C-c C-t i | 現在のテストクラスの実装クラスに移動 |
C-c C-r o | インポートを整理 |
M-. | 定義にジャンプ |
M-, | ジャンプから戻ってくる |
remote debugging
以下コマンドでデバッグモードでactivatorを起動
activator -jvm-debug 9999 run
ensimeからアタッチ
M-x ensime-db-attach