summaryrefslogtreecommitdiff
path: root/ale_linters/go/staticcheck.vim
diff options
context:
space:
mode:
Diffstat (limited to 'ale_linters/go/staticcheck.vim')
-rw-r--r--ale_linters/go/staticcheck.vim12
1 files changed, 4 insertions, 8 deletions
diff --git a/ale_linters/go/staticcheck.vim b/ale_linters/go/staticcheck.vim
index ed40c6c2..84e70d58 100644
--- a/ale_linters/go/staticcheck.vim
+++ b/ale_linters/go/staticcheck.vim
@@ -5,28 +5,24 @@ call ale#Set('go_staticcheck_options', '')
call ale#Set('go_staticcheck_lint_package', 0)
function! ale_linters#go#staticcheck#GetCommand(buffer) abort
- let l:filename = expand('#' . a:buffer . ':t')
let l:options = ale#Var(a:buffer, 'go_staticcheck_options')
let l:lint_package = ale#Var(a:buffer, 'go_staticcheck_lint_package')
let l:env = ale#go#EnvString(a:buffer)
- " BufferCdString is used so that we can be sure the paths output from
- " staticcheck can be calculated to absolute paths in the Handler
if l:lint_package
- return ale#path#BufferCdString(a:buffer)
- \ . l:env . 'staticcheck'
+ return l:env . 'staticcheck'
\ . (!empty(l:options) ? ' ' . l:options : '') . ' .'
endif
- return ale#path#BufferCdString(a:buffer)
- \ . l:env . 'staticcheck'
+ return l:env . 'staticcheck'
\ . (!empty(l:options) ? ' ' . l:options : '')
- \ . ' ' . ale#Escape(l:filename)
+ \ . ' %s:t'
endfunction
call ale#linter#Define('go', {
\ 'name': 'staticcheck',
\ 'executable': 'staticcheck',
+\ 'cwd': '%s:h',
\ 'command': function('ale_linters#go#staticcheck#GetCommand'),
\ 'callback': 'ale#handlers#go#Handler',
\ 'output_stream': 'both',