diff --git a/ale_linters/php/phpcs.vim b/ale_linters/php/phpcs.vim index ddaf171..399fbd2 100644 --- a/ale_linters/php/phpcs.vim +++ b/ale_linters/php/phpcs.vim @@ -29,11 +29,12 @@ function! ale_linters#php#phpcs#Handle(buffer, lines) abort " Matches against lines like the following: " " /path/to/some-filename.php:18:3: error - Line indented incorrectly; expected 4 spaces, found 2 (Generic.WhiteSpace.ScopeIndent.IncorrectExact) - let l:pattern = '^.*:\(\d\+\):\(\d\+\): \(.\+\) - \(.\+\) \(\(.\+\)\)$' + let l:pattern = '^.*:\(\d\+\):\(\d\+\): \(.\+\) - \(.\+\) (\(.\+\))$' let l:output = [] for l:match in ale#util#GetMatches(a:lines, l:pattern) - let l:text = l:match[4] + let l:code = l:match[5] + let l:text = l:match[4] . ' (' . l:code . ')' let l:type = l:match[3] call add(l:output, { diff --git a/test/test_phpcs_include_code.vader b/test/test_phpcs_include_code.vader new file mode 100644 index 0000000..1cff191 --- /dev/null +++ b/test/test_phpcs_include_code.vader @@ -0,0 +1,7 @@ +Execute(errors should include code): + AssertEqual + \ [{'lnum': 18, 'col': 3, 'type': 'E', 'text': 'Line indented incorrectly; expected 4 spaces, found 2 (Generic.WhiteSpace.ScopeIndent.IncorrectExact)'}], + \ ale_linters#php#phpcs#Handle(bufnr(''), [ + \ '/path/to/some-filename.php:18:3: error - Line indented incorrectly; expected 4 spaces, found 2 (Generic.WhiteSpace.ScopeIndent.IncorrectExact)', + \ ]) +