VimでJavaScript書くとき、jslint.vim使ってたんだけど、あまりに縛りがキツいのでjshintにしようかと。jshintのVimプラグインだとjshint.vimというのがあるみたいなんだけど、自動でチェックはしてくれなさそう。で、いろいろと探してたら汎用シンタックスチェックのSyntasticというやつを見つけた。
とりあえずインストール。NeoBundle使ってるので
NeoBundle "scrooloose/syntastic"
を足して、
:source $MYVIMRC
:NeoBundleInstall
jshintも入れておきましょ。
$ npm install -g jshint
んで、JavaScriptを書く。たとえばこんな。
(function() {
"use strict";
for (key in options)
console.log(options[key]);
})();
書いたそばから警告出してくれる。
すべてのエラーを見たい場合は
:SyntasticCheck
:Errors
と打つ。
では先程のコードはどう書けばよかったのか?
(function(global) {
"use strict";
var console = global.console,
options = global.options;
var key;
for (key in options) {
if (options.hasOwnProperty(key)) {
console.log(options[key]);
}
}
})(window);
こんな感じらしい。