Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

VimでPlay Frameworkの開発環境を整える

$
0
0

Play FrameworkにはEclipseプロジェクトへの変換機能(activator eclipse)や、ブラウザ上で開発できる機能(activator ui)が提供されている。しかし、普段使っていない開発環境を使うと、使い方を覚えることに多くの時間を割かれてしまい効率が悪い。一方で、Vimの環境を利用していると、EclipseのようなJavaやScalaの優れた補完機能などが活用できない。そこでEclimというEclipseとVimとの橋渡しをするプラグインを使い、使い慣れたVimの中で、Eclipseの機能を利用できるように設定した。以下でCentOS 7上で行った設定の手順を紹介する。またEclimのサイトには充実したドキュメントがあるので、そちらも参照するとよい。

1. 前提条件

  • Javaの実行環境があること。(バージョン1.6以降)
  • NeocompleteによるVimの補完の設定がされていること。

2. 手順

  1. まずEclipseの最新版(Eclipse 4.4 Luna)を持っていない場合は、Eclipseのサイトからダウンロードする。
  2. 初期設定のままではEclipseでScala IDEを起動したときに以下のような警告が表示される

    We detected that some of your settings are not adequate for the Scala IDE plugin.
    
    Run setup diagnostics to ensure correct plugin settings?
    

    これを回避するためにeclipse.iniを編集しておく。EclipseのWikiなどを参考に-vmargs ...の部分を例えば以下のように修正する。

    -vmargs
    -Xms512m
    -Xmx1024m
    -XX:PermSize=256m
    -XX:MaxPermSize=512m
    
  3. 次に、Eclimのサイトから現時点(2015-03-10)での最新版eclim_2.4.1.jarをダウンロードする。

  4. 以下のコマンドを実行し、インストーラーを起動する。

    java -jar eclim_2.4.1.jar
    
  5. インストーラーの指示に従いインストールを進めていく。Please select the features you would like to install.と言われたら、“Scala Development Toolkit”の項目にチェックをつけて次へ進む。既にマーケットプレイスなどを使ってScalaのIDEをインストールしてあれば必要はない。

  6. .vimrcを編集する。(参照:seansawyer/vim-eclim-scala.md, ervandew/eclim issues #121

    let g:EclimCompletionMethod = "omnifunc"
    let g:neocomplete#force_omni_input_patterns.java = '\k\.\k*'
    let g:neocomplete#force_omni_input_patterns.scala = '\k\.\k*'
    set completeopt-=preview
    
  7. Playのプロジェクトのルートディレクトリ(appやconfがあるところ)でターミナルを開き./activator eclipseを実行する。これを実行すると、このプロジェクトをEclipseでインポートできるようになる。

  8. Eclipseからプロジェクトをインポートする。[File]→[Import...]→[General]→[Existing Projects into Workspace]と開いていき、インポートするプロジェクトのルートディレクトリを指定し、[Finish]を押す。インポートをしたところapp/controllers/Application.scalaviews.html.indexの部分にエラーを示す波線が引かれていた。ここを参考にし、[Properties]→[Java Build Path]→[Source]→[Add Folder]と進み、target/scala-2.11/twirl/mainを追加した。Eclipseは一旦終了する。

  9. Eclipse本体のあるディレクトリにeclimdというファイルがあるはずなので、ターミナルで./eclimdを実行し、Eclimのデーモンを起動する。一度実行してしまうと、Ctrl-Cで終了するまで他のコマンドを打てなくなるので./eclimd &としてプロセスを切り離したり、tmuxで分割した画面で走らせておくと便利である。

  10. これでようやく準備が整ったので、Vimでプロジェクトのファイルを編集する。.をタイプしたときや、Ctrl-X Ctrl-O, Ctrl-Nをタイプしたときに入力の候補が提示される。候補はCtrl-Nで選択する。

    eclim.png

3. まとめ

ScalaやPlayに慣れてないため、まだ分からないことが多いが、その分補完から得られる恩恵は大きかった。マシンの性能次第ではかなり重くなってしまうが、普段からEclipseで開発している環境ならば問題なく動くと思うので試してみるとよいと思う。


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>