EmacsにternをインストールしてjQueryを補完する

Posted by Tatsuyano on Thu, Aug 6, 2015
In
Tags emacs, js

EmacsでjQueryの補完をするには、Ternというツールを使うことで実現できる。


Ternのインストール

まずはTern本体をインストール。このTernとEmacs(tern-mode)が裏で通信しながら補完を行う。 Rubyでいうところのrobeと同じ形。

npm install -g tern


tern、tern-auto-completeのインストール

自分はCaskで管理しているので、Caskファイルに追加し、インストール。 tern-auto-complateは「auto-complate」を使ってpopupで補完候補を表示する。

Cask

(depends-on "tern")
(depends-on "tern-auto-complete")

「js2-mode」が起動したらtern-modetern-auto-complateも起動するよう設定する。

init_loader/03_javascript.el

(autoload 'js2-mode "js2-mode" nil t)
(add-to-list 'auto-mode-alist '("\.js$" . js2-mode))
(add-hook 'js2-mode-hook
          (lambda ()
            (tern-mode t)))
 
(eval-after-load 'tern
   '(progn
      (require 'tern-auto-complete)
      (tern-ac-setup)))


tern-configの設定

ホーム直下に.tern-configというJsonファイルを設定する。ここで補完するライブラリなどを指定できる。

{
  "libs": [
    "browser",
    "jquery"
  ],
  "plugins": {
     "node": {}
  }
}


tern-modeの実行

正常にインストールが完了すると、以下のようにポップアップで補完が出るようになる。


参考サイト