Fix #1051 - Support ash and dash for shellcheck and the sh linter

This commit is contained in:
w0rp
2017-10-26 21:17:47 +01:00
parent 3ac92ea529
commit 33c2c20e66
3 changed files with 29 additions and 4 deletions

View File

@@ -23,15 +23,20 @@ function! ale_linters#sh#shellcheck#GetDialectArgument(buffer) abort
let l:shell_type = ale#handlers#sh#GetShellType(a:buffer)
if !empty(l:shell_type)
" Use the dash dialect for /bin/ash, etc.
if l:shell_type is# 'ash'
return 'dash'
endif
return l:shell_type
endif
" If there's no hashbang, try using Vim's buffer variables.
if get(b:, 'is_bash')
if getbufvar(a:buffer, 'is_bash', 0)
return 'bash'
elseif get(b:, 'is_sh')
elseif getbufvar(a:buffer, 'is_sh', 0)
return 'sh'
elseif get(b:, 'is_kornshell')
elseif getbufvar(a:buffer, 'is_kornshell', 0)
return 'ksh'
endif