syntasticとjshint(とnode.js + npm)でJavaScriptの構文チェック環境(?)を整えたよ
Vim上で各種言語の構文チェックを行ってくれるsyntasticプラグインと、JavaScriptの構文チェックを行ってくれるjshintのnode.js版をインストールして、VimでJavaScriptの構文チェックをする環境を整えてみたのですよ。
環境:MacOS 10.7.3 / nodebrew 0.5.0 / node.js 0.6.17 / npm 1.1.21
syntasticプラグインのインストール
NeoBundleを使っているので、NeoBundleにインストールしてもらうよう.vimrcに記述しました。
都合により常にhttpsでダウンロードしてくるように書いてますが、普通ならもっと短く書けるかと。
NeoBundle 'https://github.com/scrooloose/syntastic.git'
ついでに設定も書いてしまいます。
" syntastic {{{ let g:syntastic_mode_map = { \ 'mode': 'active', \ 'active_filetypes': ['ruby', 'javascript'], \ 'passive_filetypes': [] \ } " }}}
この設定だとRubyとJavaScriptが対象に……なるのかな?
jshintのインストール
npmでjshintをインストールします。
jslintでも動作するようですし、他のものも一部動作するようなことが書いてあったような気がするので、お好みのものを入れると良いのではないでしょうか。
$ npm install -g jshint
ついでに~/.jshintrcを作成します。
node-jshint/.jshintrc at master · jshint/node-jshint · GitHubに改変を加えたものを作成しました。
http://www.jshint.com/options/を見ながら書くと良いです。よく意味が分からないものはfalseにしました。
試してみる
試しにjQuery(ver.1.7.2 development)を読み込ませてみました。
ファイルを開いたら":SyntasticCheck"を実行すると……
赤い波線が!":Errors"でエラー一覧(下のやつ)が開かれます。
" ,scで構文チェック nnoremap ,sc :<C-u>SyntasticCheck<CR>
なんて書いておくと",sc"でチェックできるので良いかもしれません。