Skip to content
Kun Devanny edited this page Oct 26, 2021 · 30 revisions

Installing server

Pick any one of the following servers.

go install golang.org/x/tools/gopls@latest
go get -u github.com/sourcegraph/go-langserver

Registering in .vimrc

gopls

if executable('gopls')
    au User lsp_setup call lsp#register_server({
        \ 'name': 'gopls',
        \ 'cmd': {server_info->['gopls']},
        \ 'whitelist': ['go'],
        \ })
    autocmd BufWritePre *.go LspDocumentFormatSync
endif

Alternatively if you are a Plug user you may also register the gopls lsp using:

Plug 'prabirshrestha/vim-lsp'
...
Plug 'piec/vim-lsp-gopls'

go-langserver

if executable('go-langserver')
    au User lsp_setup call lsp#register_server({
        \ 'name': 'go-langserver',
        \ 'cmd': {server_info->['go-langserver', '-gocodecompletion']},
        \ 'whitelist': ['go'],
        \ })
    autocmd BufWritePre *.go LspDocumentFormatSync
endif

Clone this wiki locally