Before: runtime ale_linters/javascript/jscs.vim After: call ale#linter#Reset() Execute(jscs should parse lines correctly): AssertEqual \ [ \ { \ 'lnum': 1, \ 'col': 7, \ 'text': 'disallowVar: Variable declarations should use `let` or `const` not `var`', \ }, \ { \ 'lnum': 3, \ 'col': 21, \ 'text': 'disallowTrailingWhitespace: Illegal trailing whitespace', \ }, \ { \ 'lnum': 5, \ 'col': 9, \ 'text': 'disallowUnusedVariables: Variable `hello` is not used', \ }, \ ], \ ale_linters#javascript#jscs#Handle(347, [ \ 'foobar.js: line 1, col 7, disallowVar: Variable declarations should use `let` or `const` not `var`', \ 'foobar.js: line 3, col 21, disallowTrailingWhitespace: Illegal trailing whitespace', \ 'foobar.js: line 5, col 9, disallowUnusedVariables: Variable `hello` is not used', \ ])