From d5276eed2cc89c7c36019c00919f770d65824a5f Mon Sep 17 00:00:00 2001 From: Zahary Karadjov Date: Thu, 15 Dec 2011 15:16:46 +0200 Subject: [PATCH] syntax checking for included files --- compiler/nimrod.vim | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/compiler/nimrod.vim b/compiler/nimrod.vim index de3b49f..d37c919 100644 --- a/compiler/nimrod.vim +++ b/compiler/nimrod.vim @@ -20,7 +20,22 @@ CompilerSet errorformat= " Syntastic syntax checking function! SyntaxCheckers_nimrod_GetLocList() - let makeprg = 'nimrod check %' + let save_cur = getpos('.') + call cursor(0, 0, 0) + + let PATTERN = "\\v^\\#\\s*included from \\zs.*\\ze" + let l = search(PATTERN, "n") + + if l != 0 + let f = matchstr(getline(l), PATTERN) + let l:to_check = expand('%:h') . "/" . f + else + let l:to_check = expand("%") + endif + + call setpos('.', save_cur) + + let makeprg = 'nimrod check ' . l:to_check let errorformat = &errorformat return SyntasticMake({ 'makeprg': makeprg, 'errorformat': errorformat })