0bc9dd45c9
The same shortcut was chosen as that in the c/c++ package. |
||
---|---|---|
.. | ||
extensions/go-rename | ||
img | ||
config.el | ||
extensions.el | ||
packages.el | ||
README.md |
go contribution layer for Spacemacs
Table of Contents
Description
This layer adds extensive support for go.
Features:
- gofmt on file save
- Auto-completion using go-autocomplete
- Source analysis using go-oracle
Install
Pre-requisites
You will need gocode:
go get -u github.com/nsf/gocode
Make sure that gocode
executable is in your PATH.
Layer
To use this contribution add it to your ~/.spacemacs
(setq-default dotspacemacs-configuration-layers '(go))
Working with Go
Go commands (start with m
):
Key Binding | Description
---------------------------|------------------------------------------------------------ SPC m d p | godoc at point SPC m i g | goto imports SPC m i a | add import SPC m i r | remove unused import SPC m p b | go-play buffer SPC m p r | go-play region SPC m p d | download go-play snippet SPC m t p | run "go test" for the current package SPC m g a | jump to matching test file or back from test to code file SPC m g g | go jump to definition
Go Oracle
Key Binding | Description
---------------------------|------------------------------------------------------------ SPC m o o | go-oracle set analysis scope SPC m o < | go-oracle show possible callers SPC m o > | go-oracle show call targets SPC m o c | go-oracle show channel sends/receives SPC m o d | go-oracle show definition SPC m o f | go-oracle show free variables SPC m o g | go-oracle show callgraph SPC m o i | go-oracle show implements relation SPC m o p | go-oracle show what the select expression points to SPC m o r | go-oracle show all references to object SPC m o s | go-oracle show callstack SPC m o t | go-oracle describe selected syntax, kind, type and methods