doomemacs/modules/lang/go
Henrik Lissner 76cacb5bfe
💥 Rename def-package! -> use-package!
Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.

Also changes def-package-hook! -> use-package-hook!

The old macros are now marked obsolete and will be removed when straight
integration is merged.
2019-07-23 12:50:45 +02:00
..
autoload.el Normalize :leader/:localleader keybinds 2018-12-23 23:54:27 -05:00
config.el 💥 Rename def-package! -> use-package! 2019-07-23 12:50:45 +02:00
doctor.el Add :tools lsp checks for +lsp flag 2019-04-24 18:16:05 -04:00
packages.el Refactor lang/go 2017-05-26 20:22:45 +02:00
README.org Move emacs-snippets -> doom-snippets 2019-07-14 17:05:48 +02:00

lang/go

Description

This module adds Go support.

  • Code completion (gocode)
  • Documentation lookup (godoc)
  • Eldoc support (go-eldoc)
  • REPL (gore)
  • Syntax-checking (flycheck)
  • Auto-formatting on save (gofmt)
  • Code navigation & refactoring (go-guru)
  • File templates
  • Snippets

Module Flags

This module provides no flags.

Prerequisites

Go

To get started with Go, you need the go tool:

MacOS

brew install go

Arch Linux

sudo pacman -S go

Dependencies

This module requires a valid GOPATH, and the following Go packages:

  • gocode (for code completion & eldoc support)
  • godoc (for documentation lookup)
  • gorename (for extra refactoring commands)
  • gore (for the REPL)
  • guru (for code navigation & refactoring commands)
  • goimports (optional: for auto-formatting code on save & fixing imports)
export GOPATH=~/work/go

go get -u github.com/motemen/gore/cmd/gore
go get -u github.com/mdempsky/gocode
go get -u golang.org/x/tools/cmd/godoc
go get -u golang.org/x/tools/cmd/goimports
go get -u golang.org/x/tools/cmd/gorename
go get -u golang.org/x/tools/cmd/guru

TODO Features

TODO Configuration

TODO Troubleshooting