You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
3.0 KiB
VimL
85 lines
3.0 KiB
VimL
" @Author: Tom Link (mailto:micathom AT gmail com?subject=[vim])
|
|
" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
|
" @Revision: 66
|
|
|
|
|
|
if !exists('g:checksyntax#defs#javascript#closure')
|
|
" If non-empty, enable some checks via closure compiler.
|
|
let g:checksyntax#defs#javascript#closure = '' "{{{2
|
|
endif
|
|
|
|
|
|
if !exists('g:checksyntax#defs#javascript#closure_warnings')
|
|
let g:checksyntax#defs#javascript#closure_warnings = ['const', 'constantProperty', 'checkRegExp', 'strictModuleDepCheck', 'visibility'] "{{{2
|
|
endif
|
|
|
|
|
|
if !exists('checksyntax#defs#javascript#pmd_rulesets')
|
|
let checksyntax#defs#javascript#pmd_rulesets = ["basic", "braces", "unnecessary"]
|
|
endif
|
|
|
|
|
|
if !exists('checksyntax#defs#javascript#pmd_args')
|
|
let checksyntax#defs#javascript#pmd_args = '' "{{{2
|
|
endif
|
|
|
|
|
|
call checksyntax#AddChecker('javascript?',
|
|
\ {
|
|
\ 'name': 'jshint',
|
|
\ 'cmd': 'jshint --verbose',
|
|
\ 'efm': '%f: line %l\, col %c\, %m (%t%n)',
|
|
\ },
|
|
\ {
|
|
\ 'name': 'esprima',
|
|
\ 'cmd': 'esvalidate',
|
|
\ 'efm': '%f:%l: %m',
|
|
\ },
|
|
\ {
|
|
\ 'name': 'gjslint',
|
|
\ 'cmd': 'gjslint',
|
|
\ 'ignore_nr': [1, 110],
|
|
\ 'efm': '%P%*[^F]FILE%*[^:]: %f %*[-],Line %l%\, %t:%n: %m,%Q',
|
|
\ },
|
|
\ {
|
|
\ 'name': 'jslint',
|
|
\ 'cmd': 'jslint --terse',
|
|
\ 'efm': '%f:%l:%c: %m',
|
|
\ },
|
|
\ {
|
|
\ 'name': 'jsl',
|
|
\ 'cmd': 'jsl -nofilelisting -nocontext -nosummary -nologo -process',
|
|
\ },
|
|
\ )
|
|
|
|
if !empty(g:checksyntax#defs#javascript#closure)
|
|
if !empty(g:checksyntax#defs#javascript#closure_warnings)
|
|
let s:closure_warnings = ' --jscomp_warning '. join(g:checksyntax#defs#javascript#closure_warnings, ' --jscomp_warning ')
|
|
else
|
|
let s:closure_warnings = ''
|
|
endif
|
|
call checksyntax#AddChecker('javascript?',
|
|
\ {
|
|
\ 'name': 'closure',
|
|
\ 'cmd': g:checksyntax#defs#javascript#closure .' --warning_level VERBOSE '. checksyntax#NullOutput('--js_output_file') . s:closure_warnings,
|
|
\ 'efm': '%A%f:%l: %m,%-Cfound %#: %.%#,%+Crequired %#: %.%#,%-C%.%#,%-Z%p^',
|
|
\ },
|
|
\ )
|
|
unlet s:closure_warnings
|
|
" ,%-C%.%#,%+Z%p^
|
|
endif
|
|
|
|
|
|
if !empty(g:checksyntax#pmd#cmd)
|
|
call checksyntax#AddChecker('javascript?',
|
|
\ {
|
|
\ 'name': 'pmd',
|
|
\ 'type': 'qfl',
|
|
\ 'cmdexpr': "checksyntax#pmd#Cmd('ecmascript', g:checksyntax#defs#javascript#pmd_args, g:checksyntax#defs#javascript#pmd_rulesets)",
|
|
\ 'cmd_args': '',
|
|
\ 'buffers': 'listed',
|
|
\ 'efm': '%f:%l:%m',
|
|
\ })
|
|
endif
|
|
|