◆ TernはJavaScript解析エンジンです
◆ PCに入ってるLight Tableで使ってみます
◆ インストールでエラーが出ます
 バグで修正版済みですが安定版として公開されてないので使うためには自分でビルドが必要みたい

Tern

Tern というJavaScript解析エンジンを見つけました

Tern DEMO

↑のDEMOページみたいにオートコンプリートや定義元へのジャンプができるようです
Chromeのコンソールみたいなことがエディタでできるんですね

便利そうなので 使ってみようと思います

えーと 対応エディタはーー、、
There are currently plugins available for Emacs (and Emacs company-mode), Vim, Sublime Text, Eclipse (and general Java API), Light Table, Atom and gedit, and built-in support in Brackets, Edge Code, and CodeLite.
Emacs」? 「Vim」? ないない。

Sublime Text」 んー Sublimeって 悪くはないって印象ですがこれといって他にない優れた機能があるって感じがしないですしわざわざ入れようと思えないんですよね
普通に万能な感じで特にココが特徴的ってのがないサクラエディタみたいな感じのイメージです
使ったこと無いので実は違うのかもしれないです

Light Table」「Atom」 そういえばLight Tableは確か入っていたはず

gedit」 入れたい環境はWindowsなので使えないです

Brackets」「Edge Code」「CodeLite」ではプラグインいらなくて内蔵されているみたいです
Brackets しか知らない…

Brackets は昔少し使っていたのですが 何か文字打つと補完のための読み込みで数秒から数十秒固まって何も出来ないというダメ仕様でした
一度読み込みが終わると 後はそこまで遅くなかったですが 起動のたびにロード待ちが起きます
気軽に起動してちょっと使って閉じて という使い方には向いてないです

そんな感じでBracketsは全然使ってません
今使ってるPCだとインストールすらされてないかも


Light Tableで使ってみる


lt01

この独特なUIが好きだったりします
Light Tableってフォントもいいです

久々に見たなぁ

さてTernです
Light Tableではプラグインでインストがいるようです

Ctrl-Space でコマンド入力できるので 「plugin」 と打てば 候補にプラグインマネージャが出てくると思うのでそれを開きます

検索ボックスに 「tern」 と打って検索して でてきた TernJS をインストールします

lt02

さて これで使えるはず!





………… なんですが どこが変わったのでしょう?


JavaScriptを打っても もともとの補完機能ままです
今のコード書いてる位置に応じた変数や関数が表示されてるわけでなく ファイル内に自分が書いた変数名が全部出てます

これ Tern の機能つかえてないよね?
Light Table は UI的にボタンとかでそうにないですし どうすればいいんでしょう
全くと言っていいほど使い方情報がないです

githubでも installation なんてなくていきなり 設定方法で nodejs に変更したいときのことを書いてるくらいです
Light Table は上級者向けということなのか

ブラウザモードならインストールだけでOKとはかいてるんですけどねー
とりあえず コマンドで 「Tern」と打ってみると リセットだけコマンドがありました
それを実行してみましたけど Disconnected というメッセージは出てきますが Connected というメッセージが出てきません


動いてなさそうということはわかりました


とりあえず再起動

………効果ナシ


とりあえず再インストール

………… なんか「依存関係がおかしい」 ぽいエラーメッセージが削除に出てきました
気にせず削除して再インストールすると エラーが出ていました

Invalid behaviors file: C:\path\to\LightTableWin\LightTable. Behaviors must be either a vector or a map.


ググってみると既知のバグみたいで 一応解決済みなようでした
https://github.com/LightTable/LightTable/issues/1727


このエラーは他のプラグインでも起きてるみたいです

私も他のプラグインをインストールしてみましたが全部エラーでした
プラグインが全く使えない状態をどうしてstableとして出したの……

公式ページはこんなに本格的な感じになってるのにバグありバージョンしか落とせないなんて!
一応まだ 1.0 になってないからこんなものなのかな

過去バージョンは落とせないし 今年の春頃からバージョンは 0.7.2 で今も変わってません
アップデートは全然頻繁じゃないです
このバグが修正されたバージョンは 0.8.0 になるようですが リリースされるまでプラグインは使えそうにないです


オープンソースなので今の最新版でビルドすればいいんでしょうけどさすがにそこまでしたくはないです
Clojure なので方法もよくわからないですし


とりあえず Light Table での Tern はしばらくお預けみたいです
Brackets でも久々に使ってみようかなー