Before: Save g:ale_warn_about_trailing_whitespace After: Restore Execute(The shellcheck handler should handle basic errors or warnings <0.7.0): AssertEqual \ [ \ { \ 'lnum': 2, \ 'col': 1, \ 'type': 'W', \ 'text': 'In POSIX sh, ''let'' is not supported.', \ 'code': 'SC2039', \ 'detail': 'In POSIX sh, ''let'' is not supported.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC2039', \ }, \ { \ 'lnum': 2, \ 'col': 3, \ 'type': 'E', \ 'text': 'Don''t put spaces around the = in assignments.', \ 'code': 'SC1068', \ 'detail': 'Don''t put spaces around the = in assignments.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC1068', \ }, \ ], \ ale#handlers#shellcheck#Handle(bufnr(''), [0, 6, 0], [ \ '-:2:1: warning: In POSIX sh, ''let'' is not supported. [SC2039]', \ '-:2:3: error: Don''t put spaces around the = in assignments. [SC1068]', \ ]) Execute(The shellcheck handler should handle notes <0.7.0): AssertEqual \ [ \ { \ 'lnum': 3, \ 'col': 3, \ 'type': 'I', \ 'text': 'Double quote to prevent globbing and word splitting.', \ 'code': 'SC2086', \ 'detail': 'Double quote to prevent globbing and word splitting.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC2086', \ }, \ ], \ ale#handlers#shellcheck#Handle(bufnr(''), [0, 6, 0], [ \ '-:3:3: note: Double quote to prevent globbing and word splitting. [SC2086]', \ ]) Execute(The shellcheck handler should handle basic errors or warnings >=0.7.0): AssertEqual \ [ \ { \ 'lnum': 2, \ 'end_lnum': 3, \ 'col': 1, \ 'end_col': 1, \ 'type': 'W', \ 'text': 'In POSIX sh, ''let'' is not supported.', \ 'code': 'SC2039', \ 'detail': 'In POSIX sh, ''let'' is not supported.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC2039', \ }, \ { \ 'lnum': 2, \ 'end_lnum': 3, \ 'col': 3, \ 'end_col': 3, \ 'type': 'E', \ 'text': 'Don''t put spaces around the = in assignments.', \ 'code': 'SC1068', \ 'detail': 'Don''t put spaces around the = in assignments.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC1068', \ }, \ ], \ ale#handlers#shellcheck#Handle(bufnr(''), [0, 7, 0], [ \ '{ \ "comments": [ \ { \ "file":"-", \ "line":2, \ "endLine":3, \ "column":1, \ "endColumn":2, \ "level":"warning", \ "code":2039, \ "message":"In POSIX sh, ''let'' is not supported.", \ "fix": null \ }, \ { \ "file":"-", \ "line":2, \ "endLine":3, \ "column":3, \ "endColumn":4, \ "level":"error", \ "code":1068, \ "message":"Don''t put spaces around the = in assignments.", \ "fix": null \ } \ ] \ }' \ ]) Execute(The shellcheck handler should handle info and style >=0.7.0): AssertEqual \ [ \ { \ 'lnum': 3, \ 'end_lnum': 5, \ 'col': 3, \ 'end_col': 4, \ 'type': 'I', \ 'text': 'Double quote to prevent globbing and word splitting.', \ 'code': 'SC2086', \ 'detail': 'Double quote to prevent globbing and word splitting.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC2086', \ }, \ { \ 'lnum': 13, \ 'end_lnum': 13, \ 'col': 17, \ 'end_col': 27, \ 'type': 'I', \ 'text': '$/${} is unnecessary on arithmetic variables.', \ 'code': 'SC2004', \ 'detail': '$/${} is unnecessary on arithmetic variables.' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC2004', \ } \ ], \ ale#handlers#shellcheck#Handle(bufnr(''), [0, 7, 0], [ \ '{ \ "comments": [ \ { \ "file": "-", \ "line": 3, \ "endLine": 5, \ "column": 3, \ "endColumn": 5, \ "level": "info", \ "code": 2086, \ "message": "Double quote to prevent globbing and word splitting.", \ "fix": null \ }, \ { \ "file": "-", \ "line": 13, \ "endLine": 13, \ "column": 17, \ "endColumn": 28, \ "level": "style", \ "code": 2004, \ "message": "$/${} is unnecessary on arithmetic variables.", \ "fix": null \ } \ ] \ }' \ ]) Execute(shellcheck errors for trailing whitespace should show by default): AssertEqual \ [ \ { \ 'lnum': 8, \ 'col': 12, \ 'code': 'SC1101', \ 'end_lnum': 8, \ 'type': 'E', \ 'end_col': 11, \ 'text': 'Delete trailing spaces after \ to break line (or use quotes for literal space).', \ 'detail': 'Delete trailing spaces after \ to break line (or use quotes for literal space).' . "\n\nFor more information:\n https://www.shellcheck.net/wiki/" . 'SC1101', \ }, \ ], \ ale#handlers#shellcheck#Handle(bufnr(''), [0, 7, 0], [ \ '{ \ "comments": [ \ { \ "file": "-", \ "line": 8, \ "endLine": 8, \ "column": 12, \ "endColumn": 12, \ "level": "error", \ "code":1101, \ "message":"Delete trailing spaces after \\ to break line (or use quotes for literal space).", \ "fix":null \ } \ ] \ }', \ ]) Execute(shellcheck errors for trailing whitepsace should be able to be silenced by ale_warn_about_trailing_whitespace): let g:ale_warn_about_trailing_whitespace = 0 AssertEqual \ [], \ ale#handlers#shellcheck#Handle(bufnr(''), [0, 7, 0], [ \ '{ \ "comments": [ \ { \ "file": "-", \ "line": 8, \ "endLine": 8, \ "column": 12, \ "endColumn": 12, \ "level": "error", \ "code":1101, \ "message":"Delete trailing spaces after \\ to break line (or use quotes for literal space).", \ "fix":null \ } \ ] \ }', \ ])