lang/go: use gofmt for partials

goimports (if available) doesn't play well with partial code
reformatting.
This commit is contained in:
Henrik Lissner 2018-09-08 23:47:44 -04:00
parent a963bcfe2c
commit bc092acaee
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -12,11 +12,13 @@
:references #'go-guru-referrers
:documentation #'godoc-at-point)
(set-formatter! 'go-mode #'gofmt)
(when-let* ((goimports (executable-find "goimports")))
(setq gofmt-command goimports))
(when (featurep! :feature syntax-checker)
(setq gofmt-show-errors nil)) ; Leave it to flycheck
;; Redefines default formatter to *not* use goimports if reformatting a
;; region; as it doesn't play well with partial code.
(set-formatter! 'gofmt
'(("%s" (if (or (use-region-p)
(not (executable-find "goimports")))
"gofmt"
"goimports"))))
(add-hook 'go-mode-hook #'go-eldoc-setup)