lang/go: add go-guru + refactor config

This commit is contained in:
Henrik Lissner 2017-03-19 22:49:00 -04:00
parent 3e63d2d23b
commit 3d30844070
2 changed files with 38 additions and 13 deletions

View file

@ -12,30 +12,53 @@
(add-hook! go-mode (add-hook 'before-save-hook 'gofmt-before-save))
:config
(set! :build 'go-build 'go-mode '+go/build)
(set! :repl 'go-mode 'gorepl-run)
(map! :map go-mode-map
:n "gd" 'godef-jump
:n "gd" 'go-guru-definition
:n "gD" 'go-guru-referrers
(:localleader
:n "fh" 'godef-describe
(:prefix "r"
:n "i" 'go-remove-unused-imports
:nv "f" 'gofmt)
(:prefix "t"
:n "r" '+go/test-run-all
:n "a" '+go/test-run-all
:n "s" '+go/test-run-package))))
:n "gr" 'go-play-buffer
:v "gr" 'go-play-region
(:prefix "f"
:n "i" 'go-goto-imports
:n "h" 'godoc-at-point
:n "d" 'go-guru-describe
:n "v" 'go-guru-freevars
:n "I" 'go-guru-implements
:n "p" 'go-guru-peers
:n "r" 'go-guru-referrers
:n "t" 'go-guru-pointsto
:n "s" 'go-guru-callstack
:n "e" 'go-guru-whicherrs
:n "c" 'go-guru-callers
:n "C" 'go-guru-callees)
(:prefix "r"
:n "a" 'go-import-add
:n "i" 'go-remove-unused-imports
:nv "f" 'gofmt)
(:prefix "t"
:n "r" '+go/test-rerun
:n "a" '+go/test-all
:n "s" '+go/test-single
:n "n" '+go/test-nested))))
(def-package! go-guru
:commands (go-guru-describe go-guru-freevars go-guru-implements go-guru-peers
go-guru-referrers go-guru-definition go-guru-pointsto
go-guru-callstack go-guru-whicherrs go-guru-callers go-guru-callees
go-guru-expand-region))
(def-package! company-go
:when (featurep! :completion company)
:after go-mode
:config (set! :company-backend 'go-mode '(company-go company-yasnippet)))
:config (set! :company-backend 'go-mode '(company-go)))
(def-package! go-eldoc
:after go-mode
:commands go-eldoc-setup
:init (add-hook 'go-mode-hook 'go-eldoc-setup))

View file

@ -1,8 +1,10 @@
;; -*- no-byte-compile: t; -*-
;;; lang/go/packages.el
(package! go-eldoc)
(package! go-mode)
(package! go-eldoc)
(package! go-guru)
(package! gorepl-mode)
(when (featurep! :completion company)
(package! company-go))