diff options
author | w0rp <w0rp@users.noreply.github.com> | 2016-10-30 09:24:39 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-30 09:24:39 +0000 |
commit | 629e6a367500e372a5c60ff384859430ea08e386 (patch) | |
tree | c6d51c2ef248d5a82b8c1af8976d29ddcd847119 | |
parent | c4ab4855b798a45e36518bde0e132e10313084b2 (diff) | |
parent | 5fc2f8f6c0d5dd76f3583968f3901b884792b615 (diff) | |
download | ale-629e6a367500e372a5c60ff384859430ea08e386.zip |
Merge pull request #153 from keith/ks/shellcheck
Choose shell dialect based on vim syntax
-rw-r--r-- | ale_linters/sh/shellcheck.vim | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/ale_linters/sh/shellcheck.vim b/ale_linters/sh/shellcheck.vim index 3fdad5f2..d0fe8b11 100644 --- a/ale_linters/sh/shellcheck.vim +++ b/ale_linters/sh/shellcheck.vim @@ -16,9 +16,25 @@ else let s:exclude_option = '' endif +function! s:GetDialectArgument() + if exists('b:is_bash') && b:is_bash + return '-s bash' + elseif exists('b:is_sh') && b:is_sh + return '-s sh' + elseif exists('b:is_kornshell') && b:is_kornshell + return '-s ksh' + endif + + return '' +endfunction + +function! ale_linters#sh#shellcheck#GetCommand(buffer) + return 'shellcheck ' . s:exclude_option . ' ' . s:GetDialectArgument() . ' -f gcc -' +endfunction + call ale#linter#Define('sh', { \ 'name': 'shellcheck', \ 'executable': 'shellcheck', -\ 'command': 'shellcheck ' . s:exclude_option . ' -f gcc -', +\ 'command_callback': 'ale_linters#sh#shellcheck#GetCommand', \ 'callback': 'ale#handlers#HandleGCCFormat', \}) |