Fix #625 Ignore Perl errors from other files

This commit is contained in:
w0rp 2017-06-06 20:37:04 +01:00
parent 7db805b0cd
commit eeea72e167
2 changed files with 34 additions and 5 deletions

View file

@ -20,17 +20,21 @@ endfunction
function! ale_linters#perl#perl#Handle(buffer, lines) abort
let l:pattern = '\(.\+\) at \(.\+\) line \(\d\+\)'
let l:output = []
let l:basename = expand('#' . a:buffer . ':t')
for l:match in ale#util#GetMatches(a:lines, l:pattern)
let l:line = l:match[3]
let l:text = l:match[1]
let l:type = 'E'
call add(l:output, {
\ 'lnum': l:line,
\ 'text': l:text,
\ 'type': l:type,
\})
if l:match[2][-len(l:basename):] ==# l:basename
\&& l:text !=# 'BEGIN failed--compilation aborted'
call add(l:output, {
\ 'lnum': l:line,
\ 'text': l:text,
\ 'type': l:type,
\})
endif
endfor
return l:output