Ⅰ. 插件描述
Go development plugin for VimⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'fatih/vim-go-sparks-fly'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'fatih/vim-go-sparks-fly'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'fatih/vim-go-sparks-fly'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/fatih/vim-go
Ⅳ. 文档说明
<p align="center">
</p>
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 test with:GoTestFunc
). - Quickly execute your current file(s) with
:GoRun
. - Improved syntax highlighting and folding.
- Debug programs with integrated
delve
support with:GoDebugStart
. - Completion support via
gopls
. gofmt
orgoimports
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
. - Precise type-safe renaming of identifiers with
:GoRename
. - See which code is covered by tests with
:GoCoverage
. - Add or remove tags on struct fields with
:GoAddTags
and:GoRemoveTags
. - Call
golangci-lint
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
. - ... and many more! Please see doc/vim-go.txt for more
information.
Install
vim-go requires at least Vim 8.0.1453 or Neovim 0.3.1.
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:
git clone https://github.com/fatih/vim-go.git ~/.vim/pack/plugins/start/vim-go
git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go
Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
Plugin '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 willgo 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'shelp tags
manually (e.g. :helptags ALL
).
We also have an official vim-go tutorial.
FAQ and troubleshooting
The FAQ and troubleshooting tips are in the documentation and can be quickly
accessed using :help go-troubleshooting
. If you believe you've found a bug or
shortcoming in vim-go that is neither addressed by help nor in [existing
issues](https://github.com/fatih/vim-go/issues), please open an issue with
clear reproduction steps. :GoReportGitHubIssue
can be used pre-populate a lot
of the information needed when creating a new issue.
Contributing
All PRs are welcome. If you are planning to contribute a large patch or to
integrate a new tool, please create an issue first to get any upfront questions
or design decisions out of the way first.
You can run the tests locally by running make
. It will lint the VimL for you,
lint the documentation, and run the tests against the minimum required version
of Vim, other versions of Vim that may be critical to support, and Neovim.
License
The BSD 3-Clause License - see LICENSE
for more details