diff --git a/syntax_checkers/puppet/puppetlint.vim b/syntax_checkers/puppet/puppetlint.vim index eb0f552d..c65e601b 100644 --- a/syntax_checkers/puppet/puppetlint.vim +++ b/syntax_checkers/puppet/puppetlint.vim @@ -15,9 +15,9 @@ if exists("g:loaded_syntastic_puppet_puppetlint_checker") endif let g:loaded_syntastic_puppet_puppetlint_checker=1 -if exists("g:systastic_puppet_lint_arguments") - let g:systastic_puppet_puppetlint_args = g:systastic_puppet_lint_arguments - call syntastic#util#deprecationWarn("variable g:systastic_puppet_lint_arguments is deprecated, please use g:systastic_puppet_puppetlint_args instead") +if exists("g:syntastic_puppet_lint_arguments") + let g:syntastic_puppet_puppetlint_args = g:syntastic_puppet_lint_arguments + call syntastic#util#deprecationWarn("variable g:syntastic_puppet_lint_arguments is deprecated, please use g:syntastic_puppet_puppetlint_args instead") endif function! SyntaxCheckers_puppet_puppetlint_IsAvailable() diff --git a/syntax_checkers/rst/rst2pseudoxml.vim b/syntax_checkers/rst/rst2pseudoxml.vim index dcdcf062..454b4d85 100644 --- a/syntax_checkers/rst/rst2pseudoxml.vim +++ b/syntax_checkers/rst/rst2pseudoxml.vim @@ -31,15 +31,26 @@ function! SyntaxCheckers_rst_rst2pseudoxml_GetLocList() \ 'subchecker': 'rst2pseudoxml' }) let errorformat = - \ '%f:%l:\ (%tNFO/1)\ %m,'. - \ '%f:%l:\ (%tARNING/2)\ %m,'. - \ '%f:%l:\ (%tRROR/3)\ %m,'. - \ '%f:%l:\ (%tEVERE/4)\ %m,'. + \ '%f:%l: (%tNFO/1) %m,'. + \ '%f:%l: (%tARNING/2) %m,'. + \ '%f:%l: (%tRROR/3) %m,'. + \ '%f:%l: (%tEVERE/4) %m,'. \ '%-G%.%#' - return SyntasticMake({ + let loclist = SyntasticMake({ \ 'makeprg': makeprg, \ 'errorformat': errorformat }) + + for n in range(len(loclist)) + if loclist[n]['type'] ==? 'S' + let loclist[n]['type'] = 'E' + elseif loclist[n]['type'] ==? 'I' + let loclist[n]['type'] = 'W' + let loclist[n]['subtype'] = 'Style' + endif + endfor + + return loclist endfunction function s:exe() diff --git a/syntax_checkers/scala/fsc.vim b/syntax_checkers/scala/fsc.vim new file mode 100644 index 00000000..02834aa5 --- /dev/null +++ b/syntax_checkers/scala/fsc.vim @@ -0,0 +1,44 @@ +"============================================================================ +"File: fsc.vim +"Description: Syntax checking plugin for syntastic.vim +"Maintainer: Gregor Uhlenheuer +"License: This program is free software. It comes without any warranty, +" to the extent permitted by applicable law. You can redistribute +" it and/or modify it under the terms of the Do What The Fuck You +" Want To Public License, Version 2, as published by Sam Hocevar. +" See http://sam.zoy.org/wtfpl/COPYING for more details. +" +"============================================================================ + +if exists('g:loaded_syntastic_scala_fsc_checker') + finish +endif +let g:loaded_syntastic_scala_fsc_checker = 1 + +function! SyntaxCheckers_scala_fsc_IsAvailable() + return executable('fsc') +endfunction + +if !exists('g:syntastic_scala_options') + let g:syntastic_scala_options = '' +endif + +function! SyntaxCheckers_scala_fsc_GetLocList() + " fsc has some serious problems with the + " working directory changing after being started + " that's why we better pass an absolute path + let file = syntastic#util#shexpand('%:p') + + let args = '-Ystop-after:parser ' . g:syntastic_scala_options + let makeprg = 'fsc ' . args . ' ' . file + + let errorformat = '%f\:%l: %trror: %m' + + return SyntasticMake({ + \ 'makeprg': makeprg, + \ 'errorformat': errorformat }) +endfunction + +call g:SyntasticRegistry.CreateAndRegisterChecker({ + \ 'filetype': 'scala', + \ 'name': 'fsc'})