summaryrefslogtreecommitdiff
path: root/ale_linters/go
diff options
context:
space:
mode:
Diffstat (limited to 'ale_linters/go')
-rw-r--r--ale_linters/go/gobuild.vim17
-rw-r--r--ale_linters/go/govet.vim21
2 files changed, 13 insertions, 25 deletions
diff --git a/ale_linters/go/gobuild.vim b/ale_linters/go/gobuild.vim
index 5210c5a8..0342a230 100644
--- a/ale_linters/go/gobuild.vim
+++ b/ale_linters/go/gobuild.vim
@@ -6,16 +6,6 @@
call ale#Set('go_go_executable', 'go')
call ale#Set('go_gobuild_options', '')
-function! ale_linters#go#gobuild#GetCommand(buffer) abort
- let l:options = ale#Var(a:buffer, 'go_gobuild_options')
-
- " Run go test in local directory with relative path
- return ale#go#EnvString(a:buffer)
- \ . ale#Var(a:buffer, 'go_go_executable') . ' test'
- \ . (!empty(l:options) ? ' ' . l:options : '')
- \ . ' -c -o /dev/null ./'
-endfunction
-
function! ale_linters#go#gobuild#GetMatches(lines) abort
" Matches patterns like the following:
"
@@ -50,7 +40,12 @@ call ale#linter#Define('go', {
\ 'aliases': ['go build'],
\ 'executable': {b -> ale#Var(b, 'go_go_executable')},
\ 'cwd': '%s:h',
-\ 'command': function('ale_linters#go#gobuild#GetCommand'),
+\ 'command': {b ->
+\ ale#go#EnvString(b)
+\ . ale#Escape(ale#Var(b, 'go_go_executable')) . ' test'
+\ . ale#Pad(ale#Var(b, 'go_gobuild_options'))
+\ . ' -c -o /dev/null ./'
+\ },
\ 'output_stream': 'stderr',
\ 'callback': 'ale_linters#go#gobuild#Handler',
\ 'lint_file': 1,
diff --git a/ale_linters/go/govet.vim b/ale_linters/go/govet.vim
index 5da8261c..414c8b11 100644
--- a/ale_linters/go/govet.vim
+++ b/ale_linters/go/govet.vim
@@ -1,28 +1,21 @@
-" Author: neersighted <bjorn@neersighted.com>
+" Author: neersighted <bjorn@neersighted.com>, John Eikenberry <jae@zhar.net>
" Description: go vet for Go files
-"
-" Author: John Eikenberry <jae@zhar.net>
-" Description: updated to work with go1.10
call ale#Set('go_go_executable', 'go')
call ale#Set('go_govet_options', '')
-function! ale_linters#go#govet#GetCommand(buffer) abort
- let l:options = ale#Var(a:buffer, 'go_govet_options')
-
- return ale#go#EnvString(a:buffer)
- \ . ale#Var(a:buffer, 'go_go_executable') . ' vet '
- \ . (!empty(l:options) ? ' ' . l:options : '')
- \ . ' .'
-endfunction
-
call ale#linter#Define('go', {
\ 'name': 'govet',
\ 'aliases': ['go vet'],
\ 'output_stream': 'stderr',
\ 'executable': {b -> ale#Var(b, 'go_go_executable')},
\ 'cwd': '%s:h',
-\ 'command': function('ale_linters#go#govet#GetCommand'),
+\ 'command': {b ->
+\ ale#go#EnvString(b)
+\ . '%e vet'
+\ . ale#Pad(ale#Var(b, 'go_govet_options'))
+\ . ' .'
+\ },
\ 'callback': 'ale#handlers#go#Handler',
\ 'lint_file': 1,
\})