Skip to content

v1.0.5

Compare
Choose a tag to compare
@fatih fatih released this 26 May 10:08
· 3847 commits to master since this release

Changes:

  • Commands: Improve :GoFmt (gofmt and goimports) speed. Now it's 2x faster than the previous implementation.
  • Commands: A new :GoOracleScope is added to change the oracle scope on-the-fly. It accepts import paths as arguments. If no arguments are passed it prints the current custom oracle scope. :GoOracleScope also supports completion of import paths, so it's very fast and handy to use. :GoOracleScope "" clears the current custom scope.
  • Commands: A new :GoPath command that displays the current GOPATH. A path can be passed to change the GOPATH (i.e :GoPath ~/foo/src). :GoPath "" clears and resets the GOPATH to the initial value.
  • Commands: A new "autodetect GOPATH" feature is added. This automatically detects if the project is using godep or is under a src root directory which is not in GOPATH and changes/modifies the GOPATH so all commands work based on this GOPATH. What this means is, commands such as :GoDef, :GoBuild, etc.. will include the Godeps folder. For example any go-to-definition via :GoDef will jump to the source code inside Godeps. This is enabled by default, but can disabled with let g:go_autodetect_gopath = 0. This new feature is also the foundation for other tools such as gb or wgo.
  • Commands: add Dispatch support for :GoBuild and :GoRun. For more info about dispatch see https://github.com/tpope/vim-dispatch . By default it's disabled, to enable it add let g:go_dispatch_enabled = 1 to your vimrc.
  • Commands: Add support for the bang ! attribute for all go tool commands. What this does it, if :GoBuild is called it will jump to the error. But :GoBuild! will not jump to any error. This has the same behavior as the internal :make command in vim. We had this feature already for :GoBuild and :GoRun. But not for :GoInstall, :GoTest, etc.. Now all commands are unified.
  • Commands: Add autojump to error for :GoInstall.
  • Commands: Add autowrite feature for :GoInstall, :GoTestXXX functions and :GoVet
  • Commands: Fix clearing the status bar when :GoErrCheck is called
  • Commands: Fix godocNotFound to not match 'os' pkg contents. This improves the command :GoDoc
  • Commands: fix parsing and jumping to error locations when used Vim from a different directory than the current buffer's directory
  • Commands: support git url..insteadOf and custom import paths of binaries. This improves the commands :GoInstallBinaries and :GoUpdateBinaries.
  • Docs: improvements and fixes
  • Completion: Fix completion showing duplicates paths for completion results, such as github.com/fatih/color and github.com/fatih/color/.
  • Syntax: Add support for highlighting go templates with *.tmpl extensions. Based on the work from @cespare from https://github.com/cespare/vim-go-templates

Thanks for all contributors working on Vim-go.