Merge pull request #458 from Szero/master
Added shellcheck executable and options variable
This commit is contained in:
commit
8b890caa31
@ -10,6 +10,16 @@ if !exists('g:ale_linters_sh_shellcheck_exclusions')
|
|||||||
let g:ale_linters_sh_shellcheck_exclusions = ''
|
let g:ale_linters_sh_shellcheck_exclusions = ''
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
let g:ale_sh_shellcheck_executable =
|
||||||
|
\ get(g:, 'ale_sh_shellcheck_executable', 'shellcheck')
|
||||||
|
|
||||||
|
let g:ale_sh_shellcheck_options =
|
||||||
|
\ get(g:, 'ale_sh_shellcheck_options', '')
|
||||||
|
|
||||||
|
function! ale_linters#sh#shellcheck#GetExecutable(buffer) abort
|
||||||
|
return g:ale_sh_shellcheck_executable
|
||||||
|
endfunction
|
||||||
|
|
||||||
if g:ale_linters_sh_shellcheck_exclusions !=# ''
|
if g:ale_linters_sh_shellcheck_exclusions !=# ''
|
||||||
let s:exclude_option = '-e ' . g:ale_linters_sh_shellcheck_exclusions
|
let s:exclude_option = '-e ' . g:ale_linters_sh_shellcheck_exclusions
|
||||||
else
|
else
|
||||||
@ -29,12 +39,14 @@ function! s:GetDialectArgument() abort
|
|||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale_linters#sh#shellcheck#GetCommand(buffer) abort
|
function! ale_linters#sh#shellcheck#GetCommand(buffer) abort
|
||||||
return 'shellcheck ' . s:exclude_option . ' ' . s:GetDialectArgument() . ' -f gcc -'
|
return ale_linters#sh#shellcheck#GetExecutable(a:buffer)
|
||||||
|
\ . ' ' . g:ale_sh_shellcheck_options
|
||||||
|
\ . ' ' . s:exclude_option . ' ' . s:GetDialectArgument() . ' -f gcc -'
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
call ale#linter#Define('sh', {
|
call ale#linter#Define('sh', {
|
||||||
\ 'name': 'shellcheck',
|
\ 'name': 'shellcheck',
|
||||||
\ 'executable': 'shellcheck',
|
\ 'executable_callback': 'ale_linters#sh#shellcheck#GetExecutable',
|
||||||
\ 'command_callback': 'ale_linters#sh#shellcheck#GetCommand',
|
\ 'command_callback': 'ale_linters#sh#shellcheck#GetCommand',
|
||||||
\ 'callback': 'ale#handlers#HandleGCCFormat',
|
\ 'callback': 'ale#handlers#HandleGCCFormat',
|
||||||
\})
|
\})
|
||||||
|
@ -19,12 +19,35 @@ g:ale_linters_sh_shell_default_shell *g:ale_linters_sh_shell_default_shell*
|
|||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
shellcheck *ale-sh-shellcheck*
|
shellcheck *ale-sh-shellcheck*
|
||||||
|
|
||||||
|
g:ale_sh_shellcheck_executable *g:ale_sh_shellcheck_executable*
|
||||||
|
|
||||||
|
Type: |String|
|
||||||
|
Default: `'shellcheck'`
|
||||||
|
|
||||||
|
This variable sets executable used for shellcheck.
|
||||||
|
|
||||||
|
|
||||||
|
g:ale_sh_shellcheck_options *g:ale_sh_shellcheck_options*
|
||||||
|
|
||||||
|
Type: |String|
|
||||||
|
Default: `''`
|
||||||
|
|
||||||
|
With this variable we are able to pass extra arguments for shellcheck
|
||||||
|
for shellcheck invocation.
|
||||||
|
|
||||||
|
For example, if we want shellcheck to follow external sources (`see SC1091`)
|
||||||
|
we can set the variable as such:
|
||||||
|
|
||||||
|
let g:ale_sh_shellcheck_options = '-x'
|
||||||
|
|
||||||
|
|
||||||
g:ale_linters_sh_shellcheck_exclusions *g:ale_linters_sh_shellcheck_exclusions*
|
g:ale_linters_sh_shellcheck_exclusions *g:ale_linters_sh_shellcheck_exclusions*
|
||||||
|
|
||||||
Type: |String|
|
Type: |String|
|
||||||
Default: `''`
|
Default: `''`
|
||||||
|
|
||||||
Set this variable to exclude test(s) for shellcheck (-e/--exclude option).
|
Set this variable to exclude test(s) for shellcheck (-e/--exclude option).
|
||||||
|
To exclude more than one option, separate them with commas.
|
||||||
|
|
||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
Loading…
Reference in New Issue
Block a user