Skip to content

Commit f534313

Browse files
committed
Enable gopls by default with GOPATH detection
1 parent 3f386ae commit f534313

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+183
-116
lines changed

ale_linters/css/stylelint.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ endfunction
1111

1212
call ale#linter#Define('css', {
1313
\ 'name': 'stylelint',
14-
\ 'executable': {b -> ale#node#FindExecutable(b, 'css_stylelint', [
14+
\ 'executable': {b -> ale#path#FindExecutable(b, 'css_stylelint', [
1515
\ 'node_modules/.bin/stylelint',
1616
\ ])},
1717
\ 'command': function('ale_linters#css#stylelint#GetCommand'),

ale_linters/elm/elm_ls.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ endfunction
2828
call ale#linter#Define('elm', {
2929
\ 'name': 'elm_ls',
3030
\ 'lsp': 'stdio',
31-
\ 'executable': {b -> ale#node#FindExecutable(b, 'elm_ls', [
31+
\ 'executable': {b -> ale#path#FindExecutable(b, 'elm_ls', [
3232
\ 'node_modules/.bin/elm-language-server',
3333
\ 'node_modules/.bin/elm-lsp',
3434
\ 'elm-lsp'

ale_linters/elm/make.vim

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ function! ale_linters#elm#make#GetCommand(buffer) abort
202202
" elm-test needs to know the path of elm-make if elm isn't installed globally.
203203
" https://github.com/rtfeldman/node-test-runner/blob/57728f10668f2d2ab3179e7e3208bcfa9a1f19aa/README.md#--compiler
204204
if l:is_v19 && l:is_using_elm_test
205-
let l:elm_make_executable = ale#node#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
205+
let l:elm_make_executable = ale#path#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
206206
let l:elm_test_compiler_flag = ' --compiler ' . l:elm_make_executable . ' '
207207
else
208208
let l:elm_test_compiler_flag = ' '
@@ -222,13 +222,13 @@ function! ale_linters#elm#make#GetExecutable(buffer) abort
222222
let l:is_v19 = ale_linters#elm#make#IsVersionGte19(a:buffer)
223223

224224
if l:is_test && l:is_v19
225-
return ale#node#FindExecutable(
225+
return ale#path#FindExecutable(
226226
\ a:buffer,
227227
\ 'elm_make',
228228
\ ['node_modules/.bin/elm-test', 'node_modules/.bin/elm']
229229
\)
230230
else
231-
return ale#node#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
231+
return ale#path#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
232232
endif
233233
endfunction
234234

ale_linters/go/gopls.vim

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,21 @@
55
call ale#Set('go_gopls_executable', 'gopls')
66
call ale#Set('go_gopls_options', '--mode stdio')
77
call ale#Set('go_gopls_init_options', {})
8+
call ale#Set('go_gopls_use_global', get(g:, 'ale_use_global_executables', 0))
9+
10+
function! s:GetGoPathExecutable(suffix) abort
11+
let l:prefix = $GOPATH
12+
13+
if !empty($GOPATH)
14+
let l:prefix = $GOPATH
15+
elseif has('win32')
16+
let l:prefix = $USERPROFILE . '/go'
17+
else
18+
let l:prefix = $HOME . '/go'
19+
endif
20+
21+
return ale#path#Simplify(l:prefix . '/' . a:suffix)
22+
endfunction
823

924
function! ale_linters#go#gopls#GetCommand(buffer) abort
1025
return ale#go#EnvString(a:buffer)
@@ -29,7 +44,9 @@ endfunction
2944
call ale#linter#Define('go', {
3045
\ 'name': 'gopls',
3146
\ 'lsp': 'stdio',
32-
\ 'executable': {b -> ale#Var(b, 'go_gopls_executable')},
47+
\ 'executable': {b -> ale#path#FindExecutable(b, 'go_gopls', [
48+
\ s:GetGoPathExecutable('bin/gopls'),
49+
\ ])},
3350
\ 'command': function('ale_linters#go#gopls#GetCommand'),
3451
\ 'project_root': function('ale_linters#go#gopls#FindProjectRoot'),
3552
\ 'initialization_options': {b -> ale#Var(b, 'go_gopls_init_options')},

ale_linters/handlebars/embertemplatelint.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ call ale#Set('handlebars_embertemplatelint_executable', 'ember-template-lint')
55
call ale#Set('handlebars_embertemplatelint_use_global', get(g:, 'ale_use_global_executables', 0))
66

77
function! ale_linters#handlebars#embertemplatelint#GetExecutable(buffer) abort
8-
return ale#node#FindExecutable(a:buffer, 'handlebars_embertemplatelint', [
8+
return ale#path#FindExecutable(a:buffer, 'handlebars_embertemplatelint', [
99
\ 'node_modules/.bin/ember-template-lint',
1010
\])
1111
endfunction

ale_linters/html/angular.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ function! ale_linters#html#angular#GetProjectRoot(buffer) abort
1111
endfunction
1212

1313
function! ale_linters#html#angular#GetExecutable(buffer) abort
14-
return ale#node#FindExecutable(a:buffer, 'html_angular', [
14+
return ale#path#FindExecutable(a:buffer, 'html_angular', [
1515
\ 'node_modules/@angular/language-server/bin/ngserver',
1616
\ 'node_modules/@angular/language-server/index.js',
1717
\])

ale_linters/html/htmlhint.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ endfunction
2424

2525
call ale#linter#Define('html', {
2626
\ 'name': 'htmlhint',
27-
\ 'executable': {b -> ale#node#FindExecutable(b, 'html_htmlhint', [
27+
\ 'executable': {b -> ale#path#FindExecutable(b, 'html_htmlhint', [
2828
\ 'node_modules/.bin/htmlhint',
2929
\ ])},
3030
\ 'command': function('ale_linters#html#htmlhint#GetCommand'),

ale_linters/html/stylelint.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ call ale#Set('html_stylelint_options', '')
55
call ale#Set('html_stylelint_use_global', 0)
66

77
function! ale_linters#html#stylelint#GetExecutable(buffer) abort
8-
return ale#node#FindExecutable(a:buffer, 'html_stylelint', [
8+
return ale#path#FindExecutable(a:buffer, 'html_stylelint', [
99
\ 'node_modules/.bin/stylelint',
1010
\])
1111
endfunction

ale_linters/ink/ls.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ call ale#Set('ink_ls_use_global', get(g:, 'ale_use_global_executables', 0))
66
call ale#Set('ink_ls_initialization_options', {})
77

88
function! ale_linters#ink#ls#GetExecutable(buffer) abort
9-
return ale#node#FindExecutable(a:buffer, 'ink_ls', [
9+
return ale#path#FindExecutable(a:buffer, 'ink_ls', [
1010
\ 'ink-language-server',
1111
\ 'node_modules/.bin/ink-language-server',
1212
\])

ale_linters/javascript/flow.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ function! ale_linters#javascript#flow#GetExecutable(buffer) abort
2222
return ''
2323
endif
2424

25-
return ale#node#FindExecutable(a:buffer, 'javascript_flow', [
25+
return ale#path#FindExecutable(a:buffer, 'javascript_flow', [
2626
\ 'node_modules/.bin/flow',
2727
\])
2828
endfunction

0 commit comments

Comments
 (0)