Scalaの異なるバージョンの実行を一括で行う sbt 0.9.X プラグインを作成した。 (追記:作るまでもなくコマンドがあった)
sbt 0.9系では対話環境で下記のコマンドを入力するだけで、Scalaのバージョンを切り替えることができます。
> set scalaVersion := "2.9.0"
そこで、タイトル通りのプラグインを作成しました → https://github.com/maeda-/xsbt-switch-environment-plugin
このプラグインを入れて、下記のコマンドを実行するとMain Class を 2.7.7, 2.8.1, 2.9.0 の順で実行します。
詳細はリンク先のREADMEを参考にしてください。
追記:作るまでもなく、コマンドの前に'+'をつけるだけでOKでした。
> set crossScalaVersions := Seq("2.7.7", "2.8.1", "2.9.0") > + run
.NETのドキュメント検索向けKeySnailプラグイン 「Heaven's Door for .NET」
機能
.NET FrameworkのClass等を索引としてFirefoxに保存し、EmacsのAnythingライクに絞り込みによるオープンを可能とします。
設定
- FirefoxにKeySnail拡張をインストールする。
- Heaven's Door for .NET をインストールする。このリンク(.NET)を右クリックで「このプラグインをインストール」を選択
- .keysnail.jsのPRESERVE領域内に下記の記述を追加してください。
.keysnail.jsのPRESERVE領域内に記述を追加してください。(英語版にしか対応していません。)
plugins.options["heaven.dotnet.references"] = [ { name : "dotnet", param : { rootDocUrl : "http://msdn.microsoft.com/en-us/library/gg145045.aspx" } } ];
.keysnailに下記のようなキーバインドを設定します。
key.setViewKey(['C-c', 'd', 'd'], function(ev, arg){ plugins.heavens.dotnet.open(); }, '.NET Documentcを開く');
上記のような設定により C-c d d でclass/interface等のドキュメントの検索が可能になります。
初回実行時はインデックスの作成が実行されます(数十分かかります。)右上にインデックス作成完了のメッセージが表示された後、再度 C-c d dを実行してください。
ScalaおよびJavaのソースコード/ドキュメント検索向けKeySnailプラグイン 「Heaven's Door」
機能
保存された索引からClass/Trait/Objectを選択するときは、EmacsのAnythingライクに絞り込みによる選択が可能です。
設定
- FirefoxにKeySnail拡張をインストールする。
- Heaven's Door for Scala/Javaをインストールする。このリンク(Scala/Java)を右クリックで「このプラグインをインストール」を選択
- Scala/Javaのcodeとdocをダウンロードして、ローカルに展開する。(docはweb上でも可)
- .keysnail.jsのPRESERVE領域内に下記の記述を追加してください。(パスは環境に応じて適切に設定してください)
plugins.options["heaven.scala.references"] = [ { name : "scala", param : { version: "2.9", rootDocUrl : "file:///where/your/scala/doc/scala-2.9.0.RC1-devel-docs/api/", // ScalaDocのindex.htmlがあるディレクトリ rootSourceLinkUrl:"https://lampsvn.epfl.ch/trac/scala/browser/scala/branches/2.9.x/src/", // 2.9の場合はコレ rootSourceDir:"/where/your/scala/code/scala-2.9.0.RC1-sources/src/" // Scalaコードのlibraryディレクトリがあるディレクトリ } } ]; plugins.options["heaven.java.references"] = [ { name : "java", param : { rootDocUrl : "file:///where/your/java/doc/ja/api/", // JavaDocのallclasses-frame.htmlがあるディレクトリ rootSourceDir:"/where/your/java/code/j2se/src/share/classes/" // ローカルのコードの配置ディレクトリ } } ];
- .keysnailに下記のようなキーバインドを設定します。
key.setViewKey(['C-c', 's'], function(ev){ ext.exec("heavens-view",arg); }, 'コードをエディタで開く'); key.setViewKey(['C-c', 'd', 's'], function(ev){ plugins.heavens.scala.open(); }, 'Scala Docを開く'); key.setViewKey(['C-c', 'd', 'j'], function(ev){ plugins.heavens.java.open(); }, 'Java Docを開く');
上記のような設定により C-c d s / C-c d j でclass/trait/objectの一覧が表示されます。キーワードを入力で絞り込んだ後、表示する項目を選択すると、ドキュメントが表示されます。
初回実行時はインデックスの作成が実行されます。右上にインデックス作成完了のメッセージが表示された後、再度 C-c d s / C-c d jを実行してください。
また、Documentを表示中に、C-c sで、今表示しているclass等のコードをテキストエディタで開きます。