• このエントリーをはてなブックマークに追加

ss-1338594335

はじめに

Scalaの勉強をはじめるにあたり,エディタの環境づくりから.

インストール

「Scalaのソースコードパッケージに入っている」との噂を聞いて,Homebrew でのインストールの際にダウンロードした 2.9.2 のものの中を探したけど見つからず.

The package “tool-support” was available using the “sbaz” package manager until version 2.9.1 of the Scala distribution. Subsequently, we moved our repository to GitHub and changed our distribution packaging infrastructure. At this time, “tool-support” it is not by default part of the 2.9.2 distribution, but it will be made available again in the next releases.
IDE and Editor plugins | The Scala Programming Language

「リポジトリを GitHub に移したりパッケージング基盤を変更したりな都合で,2.9.1 まではいっしょに入っていたけど,2.9.2 では入ってないよ.次のリリースではまた利用できるようになるよ!」というような感じでしょうかね.

そんなわけで,同ページに掲載されている GitHub の URL 先から入手できます.

入手したもののうち,scala-mode.elscala-mode-*.el を,パスの通るところに置きます.

設定少々

とりあえず次のような感じにしてみてみました:

;; ~/.emacs.d/init.el
 
(require 'scala-mode)
(add-to-list 'auto-mode-alist '("\\.scala$" . scala-mode))
(add-hook 'scala-mode-hook
  (function
    (lambda ()
      (setq scala-mode-indent:step 4)
      (scala-mode-lib:define-keys scala-mode-map
                                  ([(shift tab)]   'scala-undent-line)
                                  ([(control tab)] nil))
      (local-set-key [(return)] 'newline-and-indent))))
(add-hook 'scala-mode-hook 'jaspace-mode)

これは,次のような意図によるものです:

  • インデントを 4 スペースに(デフォルトは 2)
  • デフォルトでは Ctrl+Tab でアンインデントするけど,このキーバインドは ElScreen に割り当てているので,Shift+Tab に変更,また,scala-mode では Ctrl+Tab は無効となるように
  • Enter したらインデントされた状態で次の行へ(デフォルトでは改行後はカーソル位置が行頭になってしまう)

おわりに

まずは,持っている本のサンプルコードを写経するところから始めます!

amazonさん