Skip to content
govim is a Go development plugin for Vim8, written in Go
Branch: master
Clone or download
milesbxf cmd/govim: fix test failures when -govimLog is set (#310)
Fixes #309, caused by overriding td.Log, blatting the output of errLog. This
caused tests that used errlogmatch to fail, as there was no output to match
on 🙂
Latest commit 6307542 Jun 15, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github cmd/govim: tidy up logging of logfile locations, install notifications ( Jun 13, 2019
_scripts govim: use v:longversion in Vim for more precise version number (#305) Jun 14, 2019
autoload/govim cmd/govim: switch to using config functions (#265) Jun 3, 2019
cmd/govim cmd/govim: fix test failures when -govimLog is set (#310) Jun 15, 2019
ftplugin cmd/govim: minor fixes (#299) Jun 13, 2019
internal govim,cmd/govim: various bits (#167) Apr 23, 2019
plugin cmd/govim: tidy up logging of logfile locations, install notifications ( Jun 13, 2019
testdata testdriver: make errlogmatch more useful; drop errlogwait (#272) Jun 4, 2019
testdriver testdriver: improve errlogmatch (#278) Jun 5, 2019
testsetup govim: use v:longversion in Vim for more precise version number (#305) Jun 14, 2019
.gitattributes github: mark cmd/govim/internal as generated to supprress GitHub diffs ( May 3, 2019
.gitignore general: remove demos (#225) May 9, 2019
.travis.yml govim: use v:longversion in Vim for more precise version number (#305) Jun 14, 2019
LICENSE LICENSE: add (#14) Mar 18, 2019
PLUGIN_AUTHORS.md README: improve readme and sign-posting (#79) Apr 5, 2019
README.md deps: x/tools/gopls v0.1.0 x/tools v0.0.0-20190612231717-10539ce30318 ( Jun 13, 2019
channel_cmds.go cmd/govim: switch to using config functions (#265) Jun 3, 2019
command.go govim,cmd/govim: various bits (#167) Apr 23, 2019
const.go govim,cmd/govim: various bits (#167) Apr 23, 2019
event.go README: improve readme and sign-posting (#79) Apr 5, 2019
event_queue.go cmd/govim: switch to using config functions (#265) Jun 3, 2019
gen_stringers_stringer.go scripts: tidy and fully add Neovim image and flavor (#249) May 26, 2019
go.mod deps: x/tools/gopls v0.1.0 x/tools v0.0.0-20190612231717-10539ce30318 ( Jun 13, 2019
go.sum deps: x/tools/gopls v0.1.0 x/tools v0.0.0-20190612231717-10539ce30318 ( Jun 13, 2019
govim.go govim: use v:longversion in Vim for more precise version number (#305) Jun 14, 2019
govim_test.go cmd/govim: fix test failures when -govimLog is set (#310) Jun 15, 2019
tools.go deps: x/tools/gopls v0.1.0 x/tools v0.0.0-20190612231717-10539ce30318 ( Jun 13, 2019
version_test.go cmd/govim: minor fixes (#299) Jun 13, 2019
viewport.go govim: remove viewport subscription code (#260) May 30, 2019

README.md

govim - Go development plugin for Vim8

Command github.com/myitcv/govim/cmd/govim (referred to simply as govim) is a Go development plugin for Vim8, much like vim-go. But unlike vim-go, govim is written in Go, not VimScript. It has features like code completion, format-on-save, hover details and go-to definition, all of which are driven by gopls, the Language Server Protocol (LSP) server for Go. See the wiki for more details. Installation instructions below.

Package github.com/myitcv/govim provides an API for plugin developers to interface with Vim8 in Go. More details here.

govim requires at least go1.12 and Vim v8.1.1158 (gvim is also supported). Neovim is not (currently) supported. More details in the FAQ.

Install govim via:

  • Vim 8 packages
    • git clone https://github.com/myitcv/govim.git ~/.vim/pack/plugins/start/govim
  • Pathogen
    • git clone https://github.com/myitcv/govim.git ~/.vim/bundle/govim
  • vim-plug
    • Plug 'myitcv/govim'
  • Vundle
    • Plugin 'myitcv/govim'

You might need some .vimrc settings to get all features working: see the minimal .vimrc for an commented explanation of the required settings. For more details on .vimrc/.gvimrc settings as well as some tips and tricks, see here.

What can govim do?

See govim plugin API which also has links to some demo screencasts.

FAQ

Top of your list of questions is likely "Why have you created govim? What is/was wrong with vim-go?" For answers this and more see FAQ.

Contributing

Contributions are very much welcome in the form of:

  • feedback
  • issues
  • PRs

See govim tests for details on how the modules in this repository are tested.

You can’t perform that action at this time.