Skip to content
Pierre Carru edited this page Oct 8, 2020 · 30 revisions

Installing server

Pick any one of the following servers.

go get -u golang.org/x/tools/gopls
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