Merge pull request #3571 from rfwatson/gopls-add-init-options
gopls: add go_gopls_init_options
This commit is contained in:
commit
f9f2ad2765
3 changed files with 26 additions and 0 deletions
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
call ale#Set('go_gopls_executable', 'gopls')
|
call ale#Set('go_gopls_executable', 'gopls')
|
||||||
call ale#Set('go_gopls_options', '--mode stdio')
|
call ale#Set('go_gopls_options', '--mode stdio')
|
||||||
|
call ale#Set('go_gopls_init_options', {})
|
||||||
|
|
||||||
function! ale_linters#go#gopls#GetCommand(buffer) abort
|
function! ale_linters#go#gopls#GetCommand(buffer) abort
|
||||||
return ale#go#EnvString(a:buffer)
|
return ale#go#EnvString(a:buffer)
|
||||||
|
@ -31,4 +32,5 @@ call ale#linter#Define('go', {
|
||||||
\ 'executable': {b -> ale#Var(b, 'go_gopls_executable')},
|
\ 'executable': {b -> ale#Var(b, 'go_gopls_executable')},
|
||||||
\ 'command': function('ale_linters#go#gopls#GetCommand'),
|
\ 'command': function('ale_linters#go#gopls#GetCommand'),
|
||||||
\ 'project_root': function('ale_linters#go#gopls#FindProjectRoot'),
|
\ 'project_root': function('ale_linters#go#gopls#FindProjectRoot'),
|
||||||
|
\ 'initialization_options': {b -> ale#Var(b, 'go_gopls_init_options')},
|
||||||
\})
|
\})
|
||||||
|
|
|
@ -207,6 +207,27 @@ g:ale_go_gopls_options *g:ale_go_gopls_options*
|
||||||
Type: |String|
|
Type: |String|
|
||||||
Default: `''`
|
Default: `''`
|
||||||
|
|
||||||
|
Command-line options passed to the gopls executable. See `gopls -h`.
|
||||||
|
|
||||||
|
|
||||||
|
g:ale_go_gopls_init_options *g:ale_go_gopls_init_options*
|
||||||
|
*b:ale_go_gopls_init_options*
|
||||||
|
Type: |Dictionary|
|
||||||
|
Default: `{}`
|
||||||
|
|
||||||
|
LSP initialization options passed to gopls. This can be used to configure
|
||||||
|
the behaviour of gopls.
|
||||||
|
|
||||||
|
Example: >
|
||||||
|
let g:ale_go_gopls_init_options = {'ui.diagnostic.analyses': {
|
||||||
|
\ 'composites': v:false,
|
||||||
|
\ 'unusedparams': v:true,
|
||||||
|
\ 'unusedresult': v:true,
|
||||||
|
\ }}
|
||||||
|
<
|
||||||
|
|
||||||
|
For a full list of supported analyzers, see:
|
||||||
|
https://github.com/golang/tools/blob/master/gopls/doc/analyzers.md
|
||||||
|
|
||||||
===============================================================================
|
===============================================================================
|
||||||
govet *ale-go-govet*
|
govet *ale-go-govet*
|
||||||
|
|
|
@ -36,6 +36,9 @@ Execute(should set gopls options):
|
||||||
AssertLinter 'gopls',
|
AssertLinter 'gopls',
|
||||||
\ ale#Escape('gopls') . ' --mode stdio --trace'
|
\ ale#Escape('gopls') . ' --mode stdio --trace'
|
||||||
|
|
||||||
|
let b:ale_go_gopls_init_options = {'ui.diagnostic.analyses': {'composites': v:false}}
|
||||||
|
AssertLSPOptions {'ui.diagnostic.analyses': {'composites': v:false}}
|
||||||
|
|
||||||
Execute(should support go environment variables):
|
Execute(should support go environment variables):
|
||||||
let b:ale_go_go111module = 'off'
|
let b:ale_go_go111module = 'off'
|
||||||
|
|
||||||
|
|
Reference in a new issue