From: Alexis Laferrière Date: Tue, 29 May 2012 18:05:47 +0000 (-0400) Subject: misc: correctly handles warnings in syntastic Nit syntax checker X-Git-Tag: v0.6~352^2~6 X-Git-Url: http://nitlanguage.org misc: correctly handles warnings in syntastic Nit syntax checker Signed-off-by: Alexis Laferrière --- diff --git a/misc/syntastic/nit.vim b/misc/syntastic/nit.vim index 5ac60da..b213b1a 100644 --- a/misc/syntastic/nit.vim +++ b/misc/syntastic/nit.vim @@ -20,9 +20,17 @@ endif function! SyntaxCheckers_nit_GetLocList() let makeprg = "nitc --no-color --only-metamodel 2>&1 " . shellescape(expand("%")) - let errorformat = - \'%f:%l\,%c--%*[0-9]: %m, - \%f:%l\,%c--%*[0-9]\,0: %m, - \%f:%l\,%c: %m' + " possible combinations of error messages + let ef_start = [ '%f:%l\,%c--%*[0-9]:', '%f:%l\,%c--%*[0-9]\,%*[0-9]:', '%f:%l\,%c:' ] + let ef_type = [ ' %tarning: ', ' %trror: ', ' Syntax %trror: ' ] + + " generate errorformat from combinations + let errorformat = "" + for s in ef_start + for t in ef_type + let errorformat .= s . t . '%m,' + endfor + endfor + return SyntasticMake({ 'makeprg': makeprg, 'errorformat':errorformat }) endfunction