ざる魂

真似ぶ魂、学ぶの本質。知られざる我が魂

Emacs JDEE でlibGDXプログラミング!

はじめに

libGDX でゲームプログラミングを始めています。

最初は、Eclipseでコーディングしていました。

でも重すぎるので、軽いと評判のIntelliJ IDEAに乘りかえました。

確かに快適でした。Eclipseよりは。しかしそれでもいろいろ不満がつのる。。。

…結局、Emacsに戻ってきました。やはり最後はいつもの場所へ。悲しい性ですね。

ということで、EmacsでJavaやるなら JDEE です。

gradleプロジェクトをJDEEでも使えるようにする

JDEEはgradleをサポートしてません。 でもやっぱりいるんですねー。すばらしき先人が。 GradleプロジェクトをJDEEの plj.el に変換するスクリプトを発見しました。

上記で紹介されている jdee.gradle を、libGDXのプロジェクトルートに配置します。 そのままだと、testディレクトリがないと怒られるので、testを含む行をコメントアウトします。

更に build.gradle を編集し、 apply from:... を追加します。

     }
 }
 
+apply from:'jdee.gradle'
 
 allprojects {
     apply plugin: "eclipse"
     apply plugin: "idea"

あとは、プロジェクトルートで下記コマンドを実行します。

$ ./gradlew jdee

すると各サブプロジェクト内で、 prj.el が作成されます。

最後に下記の plj.el をプロジェクトルートに配置します。

(jde-project-file-version "1.0")
(jde-set-variables

 '(jde-jdk (quote ("1.7")))
 '(jde-jdk-registry (quote (
                            ;;("1.7" . "c:/Program Files/Java/jdk1.7.0_09/")
                            ("1.7" . "/usr/lib/jvm/jdk1.7.0/")
                            )))
 '(jde-jdk-doc-url "http://docs.oracle.com/javase/jp/6/api/") ;; JDKのjavadocのURL
 '(jde-help-docsets '(("JDK API" "http://docs.oracle.com/javase/jp/6/api/" nil)
                      ("libGDX API" "http://libgdx.badlogicgames.com/nightlies/docs/api/" nil)
                      ))
 '(jde-help-use-frames nil)

 )
 (setq jde-import-auto-sort t) ;; import文挿入時に自動でソート

パスは各自の環境に合せて適宜変更してください。

これで、libGDXのインポートの自動生成やメソッド補完ができます。 C-c C-v C-w でコンテキストヘルプ(JavaDoc)も引けます。 ただしビルドはコンソールから実行する必要があります。 でもメッソッド補完とクラスインポートが使えれば十分。

http://mikio.github.io/img/libgdx-jdee/001.png
Helmメソッド補完 + YASnippetで快適快適ー

いやしかしこんな奇特な人間、世界でも数人しかいないんだろうなぁー。