docs/cn/layers/lang/go.md
该模块为 SpaceVim 提供了 Golang 开发支持,包括代码补全,格式化,语法检查等特性。同时提供诸多语言专属快捷键。
可通过在配置文件内加入如下配置来启用该模块:
[[layers]]
name = "lang#go"
默认情况下,tagbar 这一插件无法显示 go 语法树,需要安装一个依赖 gotags:
go get -u github.com/jstemmer/gotags
enabled_linters: 设置 Golang 语言的语法检查的工具列表,默认模式值是['golint']。
可用的值包括:go, gometalinter
go_file_head: 设置默认的 Golang 源文件头模板。
[[layers]]
name = "lang#go"
go_file_head = [
'#!/usr/bin/python3',
'# -*- coding : utf-8 -*-'
''
]
go_interpreter: 设置 Golang 的可执行文件路径。
[[layers]]
name = 'lang#go'
go_interpreter = '~/download/bin/go'
format_on_save: 设置是否启用 Golang 源文件保存时的语法检查,默认该选项已禁用。
[[layers]]
name = 'lang#go'
format_on_save = true
语言专属快捷键:
| 快捷键 | 功能描述 |
|---|---|
SPC l a | go alternate |
SPC l b | go build |
SPC l c | go coverage |
SPC l d | go doc |
SPC l D | go doc vertical |
SPC l e | go rename |
SPC l g | go definition |
SPC l G | go generate |
SPC l h | go info |
SPC l i | go implements |
SPC l I | implement stubs |
SPC l k | add tags |
SPC l K | remove tags |
SPC l l | list declarations in file |
SPC l m | format improts |
SPC l M | add import |
SPC l r | go run |
SPC l s | fill struct |
SPC l t | go test |
SPC l v | freevars |
SPC l x | go referrers |
代码格式化:
默认的代码格式化快捷键是 SPC b f,该快捷键由 format 模块定义,同时也可以通过 g = 来对齐整个文档。
为了使得 format 模块支持 Go 文件,需要确认有可执行命令 go-fmt 或者 goimports,
通常 go-fmt 命令为 Go 自带的程序,请确认 Go 开发环境是否配置正确。