id:Layzie これ入れてみたけど、色々な言語に対応していて、便利だった。けど、どんなコマンドが必要なのかがドキュメントに無いので、ちょっと不便。(調べれば良いんだけど
はてなブックマーク - Layzieのブックマーク / 2012年1月9日
仰る通り!
というわけで、.vim/bundle/syntastic/syntax_checkers 以下に書かれているのを grep "makeprg" *.vim を中心に見てみた。
言語 | ファイルタイプ | コマンド |
---|---|---|
AppleScript | applescript | osacompile |
C | c | gcc |
CoffeeScript | coffee | coffee |
C++ | c++ | g++ |
CSS | css | csslint |
Cucumber | cucumber | cucumber |
Cuda | cuda | nvcc*1 |
Docbook | docbk | xmllint |
Erlang | erlang | escript |
eRuby | eruby | sed, ruby |
Fortran | fortran | gfortran |
Gentoo metadata | gentoo_metadata | xmllint |
go-lang | go | 6g |
Haml | haml | haml |
Haskell | haskell | ghc-mod |
Html | html | tidy |
JavaScript | js | gjslint, jslint, jsl, jshint*2 |
JSON | json | jsonlint, jsonval*3 |
Less | less | lessc |
Lua | lua | luac |
MatLab | matlab | mlint |
Perl | perl | perl*4 |
PHP | php | php |
Puppet | puppet | puppet |
Python | python | flake8, pyflakes*5 |
reST | rst | rst2pseudoxml.py*6 |
Ruby | ruby | ruby |
Sass | sass | sass |
Scss | scss | sass |
sh | sh | bash, zsh, sh*7 |
Tcl | tcl | tclsh |
TeX | tex | lacheck |
Vala | vala | valac |
XHTML | xhtml | tidy |
XML | xml | xmllint |
XSLT | xslt | xmllint |
YAML | yaml | js-yaml |
ZPT(Zope Page Template) | zpt | zptlint*8 |
つまり syntastic/syntax_checkers にファイルタイプに対応した Vim Script を書く事でオリジナルのチェックツールも作れるっぽい。
*1:let g:syntastic_nvcc_binary で変更可
*2:let g:syntastic_javascript_checker でいづれかを指定する
*3:let g:syntastic_json_checker でいづれかを指定する
*4:$VIMRUNTIME/tools/efm_perl.pl が必要。MacVim だとデフォルトで入ってた
*5:let g:syntastic_python_checker で指定可
*6:Docutils に入ってるっぽい
*7:シェバングから判定する