JSエディタの補完候補のカスタマイズ

補完に必要なJSファイルはプロジェクトのプロパティで指定することができますが、標準でも「コード補完」にあるようなものが組み込んであります。デフォルトではECMA ScriptとFirefoxがコード補完としてチェックされていますが、補完候補はすべてカスタマイズ可能です。つまり、ECMA Script のところの Object の定義とかも差し替えることができます。標準で組み込んであるJSファイルは以下にあります。(ECMAScriptのやつはECMAScript5thを見ながら地道に作りました…)

https://amateras.svn.sourceforge.net/svnroot/amateras/AmaterasIDE/trunk/tk.eclipse.plugin.htmleditor/js/

たとえば、Objectの定義をいじりたいような場合はecma/ecmascript-5.jsをベースに変更して、ライブラリとして登録して、コード補完のECMA Scriptのチェックをはずしてください。これでECMAScriptのバージョンが上がっても大丈夫!?

requireに対応

JavaScriptエディタですが,requireに対応してみました.JSのコードでrequire(“hoge”)とすると,hoge.jsを探しにいき,exportsを持ってきます../hogeのような指定の場合は,そのJSの相対パスになりますが,hogeの場合はプロジェクトのプロパティで指定したパスで探しに行きます(なので,パスを;区切りで指定してください).あとは,バリデーションオプションもプロジェクトのプロパティに加えました.内部的にはClosure Toolsを使っているので,オプションの説明はそれを見てください.

そんな感じで,バグとか,改善点などあれば,お知らせくださいまませ(ベストエフォート対応になりますが).バグとかであれば問題のJSのコードとか,Exceptionが出たならworkspace/.metadata/.log のスタックトレースをくださいー.

JSエディタのスナップショットビルド

AmaterasのJavaScriptエディタを改良しているけど,より多くの方にテストしてほしいな~とか思い,スナップショットビルドができるようにしてみました.

http://amateras.sourceforge.jp/files/htmleditor/

試すためには,そのzipの中のtk.~というディレクトリをEclipseのdropinsディレクトリ以下に置いてください.pluginsとかdropinsとかに既に旧バージョンのjarとかがあると,変な動きになると思うので,あれば取り除いてください.

今までより何が強化されているかというと,パーサーにはRhinoを使っているので,JavaScriptの解析能力は向上していると思います.あとは,依存するJavaScriptとかあればプロジェクトのプロパティで依存するJSファイルを指定できます.まぁ,前からあった機能ですが,ECMAScriptのオブジェクトやFirefoxのオブジェクトとかを追加して,よく使いそうなやつはチェックボックスでも指定できます(一応,node.jsも入れてみた).これらのJSファイルが補完の情報に利用されます.あとは,commonJSのmoduleにある require も対応したいと思っていますが,まだ,相対パスの指定しか対応できていません.

という感じで,もっとも重要なことは,これはスナップショットビルドです(その時点で最新のビルドです).つまり,想定する利用者はオープンソースだから一緒にJavaScriptエディタを良くしてやろう,というような生産的なご意見をいただける方の利用を期待しています.質にシビアな現場での利用とかは全く想定していません.バグとか改善点などをお知らせいただければ,ベストエフォートで対応したいとは思っています.そんな感じで,Eclipseな人に最高のJavaScriptエディタの提供を目指していますー.