参考サイト様
環境
- Ubuntu12.04LTS
- python 2.7.3
下準備
以下のパッケージをインストールする$ sudo apt-get install build-essential $ sudo apt-get install python-dev
JavaScript Lintのインストール
$ svn co https://javascriptlint.svn.sourceforge.net/svnroot/javascriptlint javascriptlintいろいろ落としてきます。 最新を使いたいので、trunkを使います。
$ cd javascriptlint/trunkでは、ビルドしてインストールしていきます。
$ python setup.py build $ sudo python setup.py install ... changing mode of /usr/local/bin/jsl to 775 ../usr/local/bin/jslが本体みたいですね。
動作確認
tests にテスト用ファイルがあるので、試してみます。$ jsl jsl tests/errors/syntax_error.jsちなみに、こんなコードでした。
function syntax_error() { &; /*warning:syntax_error*/ }実行結果
JavaScript Lint Developed by Matthias Miller (http://www.JavaScriptLint.com) /home/typosterr/javascriptlint/trunk/tests/errors/syntax_error.js /home/typosterr/javascriptlint/trunk/tests/errors/syntax_error.js(2): warning: s yntax_error 0 error(s), 1 warnings(s)うまくいったみたいです。 ここで、jslのヘルプを見てみましょう。
$ jsl -h Usage: jsl [options] [files] Options: -h, --help show this help message and exit --conf=CONF set the conf file --profile turn on hotshot profiling --recurse recursively search directories on the command line --enable-wildcards resolve wildcards in the command line --dump dump this script --unittest run the python unittests --quiet minimal output --verbose verbose output --nologo suppress version information --nofilelisting suppress file names --nosummary suppress lint summary --help:conf display the default configuration fileなので、さくっと見たいときは
$ jsl --nologo --nosummary --nofilelisting tests/errors/syntax_error.js /home/typosterr/javascriptlint/trunk/tests/errors/syntax_error.js(2): warning: syntax_errorこんな感じになります。
vimの設定
vimで開いているファイルのチェックを可能に。~/.vim/compiler/jsl.vim に記述。
if exists("current_compiler") finish endif let current_compiler = "jsl" if exists(":CompilerSet") != 2 command -nargs=* CompilerSet setlocal~/.vim/after/ftplugin/jsl.vim に以下を記述。endif let s:cpo_save = &cpo set cpo-=C CompilerSet makeprg=jsl\ --nologo\ --nofilelisting\ --nosummary\ % CompilerSet errorformat=%f(%l):\ %m let &cpo = s:cpo_save unlet s:cpo_save
compiler jsl if !exists('b:undo_ftplugin') let b:undo_ftplugin = '' endif let b:undo_ftplugin .= ' \ | setlocal makeprg< \ | setlocal errorformat< \'.vimrcに以下を記述
" JavaScript Lint if !exist('b:current_compiler') compiler jsl endif autocmd QuickFixCmdPost make copenこれで、準備が整いました。
サンプルとして以下のようなファイルを作って、実行したいと思います。
[1, 2, 3, 4, 5].forEach(function (n) { console.log(n * n) })これをSample.jsとかにしてvimで開きます。
其の状態で:makeを打つと
quickfixウィンドウを消すときは:ccloseと打ちます。
とりあえず、できたみたいだけど設定ファイルがわけがわからないよ。
追記
Google Closure Linter gjslintgoogleさんのGoogle JavaScript Style Guideにあわせたものもあるみたいです。
最後までお読みいただきありがとうございました。
0 件のコメント:
コメントを投稿