doomemacs/modules/lang/go/config.el

38 lines
922 B
EmacsLisp
Raw Normal View History

2017-02-20 07:57:16 +08:00
;;; lang/go/config.el
2015-06-15 15:06:10 +08:00
(def-package! go-mode
2015-06-15 15:06:10 +08:00
:mode "\\.go$"
:interpreter "go"
:init
2016-05-13 12:28:44 +08:00
(add-hook 'go-mode-hook 'flycheck-mode)
(add-hook! go-mode (add-hook 'before-save-hook 'gofmt-before-save))
2016-04-19 14:10:43 +08:00
:config
(set! :build 'go-build 'go-mode '+go/build)
(set! :company-backend 'go-mode '(company-go company-yasnippet))
(set! :repl 'go-mode 'gorepl-run)
2017-02-20 07:57:16 +08:00
(map! :map go-mode-map
:n "gd" 'godef-jump
(:localleader
:n "fh" 'godef-describe
(:prefix "r"
2017-03-17 05:25:57 +08:00
: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))))
2017-02-20 07:57:16 +08:00
(def-package! company-go :after go-mode)
2017-02-20 07:57:16 +08:00
(def-package! go-eldoc
2017-02-20 07:57:16 +08:00
:after go-mode
2016-05-13 12:28:44 +08:00
:init (add-hook 'go-mode-hook 'go-eldoc-setup))
(def-package! gorepl-mode
2017-02-20 07:57:16 +08:00
:commands (gorepl-run gorepl-run-load-current-file))