Files
vim-ale/vim-go
AJ ONeal 0861ebc8b8 ref(releases.conf): collapse source/owner/repo into single keys
Source type is now inferred from the primary key:
  github_repo = owner/repo   (was source=github + owner + repo)
  git_url = https://...      (was source=gittag + url)
  gitea_repo = owner/repo    (was source=gitea + owner + repo)
  hashicorp_product = name   (was source=hashicorp + product)

One-off dist sources (nodedist, zigdist, etc.) keep the explicit
source= key since they're already one-liners.

Parser still accepts the old format via the default fallback branch.
2026-03-11 01:05:08 -06:00
..
2020-10-05 22:08:00 +00:00
2023-10-18 02:10:55 -06:00

title, homepage, tagline
title homepage tagline
vim-go https://github.com/fatih/vim-go vim-go adds Go language support for Vim.

To update (replacing the current version) run webi vim-go.

Cheat Sheet

vim-go provides integration with various official and 3rd party go tooling for linting, vetting, etc.

You'll also need to install ALE (part of vim-essentials) or syntastic first.

Files

These are the files / directories that are created and/or modified with this install:

~/.config/envman/PATH.env
~/.vim/pack/plugins/start/vim-go/
~/.vim/plugins/go.vim

note: this will also install the go modules that vim-go depends on

How to install by hand

git clone --depth=1 https://github.com/fatih/vim-go.git ~/.vim/pack/plugins/start/vim-go

How to configure your .vimrc

" don't check syntax immediately on open or on quit
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

" we also want to get rid of accidental trailing whitespace on save
autocmd BufWritePre * :%s/\s\+$//e
"""""""""""""""""""""""""""
" Golang-specific options "
"""""""""""""""""""""""""""

" tell syntastic that go, golint, and errcheck are installed
let g:syntastic_go_checkers = ['go', 'golint', 'errcheck']

" tell vim-go that goimports is installed
let g:go_fmt_command = "goimports"

" tell vim-go to highlight
let g:go_highlight_functions = 1
let g:go_highlight_methods = 1
let g:go_highlight_structs = 1
let g:go_highlight_operators = 1
let g:go_highlight_build_constraints = 1

How to install go language tools

via vim with :GoInstallBinaries:

printf ':GoInstallBinaries\n:q\n' | vim -e

via sh:

# gopls
go install golang.org/x/tools/gopls

# golint
go install golang.org/x/lint/golint

# errcheck
go install github.com/kisielk/errcheck

# gotags
go install github.com/jstemmer/gotags

# goimports
go install golang.org/x/tools/cmd/goimports

# gorename
go install golang.org/x/tools/cmd/gorename

# goreturns
go install github.com/sqs/goreturns

# gotype
go install golang.org/x/tools/cmd/gotype