Skip to content

dastergon/vim-go

This branch is 2 commits ahead of, 2546 commits behind fatih/vim-go:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fa2fd2e · Mar 2, 2018
Oct 30, 2017
Jan 4, 2018
Feb 4, 2018
Nov 16, 2017
Jan 22, 2018
Jan 15, 2018
Dec 7, 2017
Mar 2, 2018
Dec 9, 2016
Dec 10, 2017
Dec 10, 2017
Dec 14, 2017
Feb 8, 2018
Jun 6, 2017
Nov 25, 2017
Dec 7, 2017
Dec 14, 2017
Nov 4, 2017
Dec 10, 2017
Dec 7, 2017
Nov 16, 2017
Feb 7, 2018
Nov 30, 2017
Feb 17, 2017
Dec 10, 2017
Oct 13, 2017
Sep 8, 2014

Repository files navigation

vim-go Build Status

Vim-go logo

Features

This plugin adds Go language support for Vim, with the following main features:

  • Compile your package with :GoBuild, install it with :GoInstall or test it with :GoTest. Run a single tests with :GoTestFunc).
  • Quickly execute your current file(s) with :GoRun.
  • Improved syntax highlighting and folding.
  • Completion support via gocode.
  • gofmt or goimports on save keeps the cursor position and undo history.
  • Go to symbol/declaration with :GoDef.
  • Look up documentation with :GoDoc or :GoDocBrowser.
  • Easily import packages via :GoImport, remove them via :GoDrop.
  • Automatic GOPATH detection which works with gb and godep. Change or display GOPATH with :GoPath.
  • See which code is covered by tests with :GoCoverage.
  • Add or remove tags on struct fields with :GoAddTags and :GoRemoveTags.
  • Call gometalinter with :GoMetaLinter to invoke all possible linters (golint, vet, errcheck, deadcode, etc.) and put the result in the quickfix or location list.
  • Lint your code with :GoLint, run your code through :GoVet to catch static errors, or make sure errors are checked with :GoErrCheck.
  • Advanced source analysis tools utilizing guru, such as :GoImplements, :GoCallees, and :GoReferrers.
  • Precise type-safe renaming of identifiers with :GoRename.
  • ... and many more! Please see doc/vim-go.txt for more information.

Install

The latest stable release is the recommended version to use. If you choose to use the master branch instead, please do so with caution; it is a development branch.

vim-go follows the standard runtime path structure. Below are some helper lines for popular package managers:

  • Vim 8 packages
    • git clone https://github.com/fatih/vim-go.git ~/.vim/pack/plugins/start/vim-go
  • Pathogen
    • git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go
  • vim-plug
    • Plug 'fatih/vim-go'

You will also need to install all the necessary binaries. vim-go makes it easy to install all of them by providing a command, :GoInstallBinaries, which will go get all the required binaries.

Check out the Install section in the documentation for more detailed instructions (:help go-install).

Usage

The full documentation can be found at doc/vim-go.txt. You can display it from within Vim with :help vim-go.

Depending on your installation method, you may have to generate the plugin's help tags manually (e.g. :helptags ALL).

We also have an official vim-go tutorial.

License

The BSD 3-Clause License - see LICENSE for more details

About

Go development plugin for Vim

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Vim Script 93.8%
  • Shell 3.2%
  • Go 1.6%
  • Python 1.2%
  • Makefile 0.2%