Emacs の go-mode 設定

最近わりと Go 書くようになってきたので Emacs の Go 環境を作ってみました。

company を使っているのでコード補完は company-go、godoc の表示は go-eldoc にしてみました。

~/.emacs.d/init.el の設定。タブ幅は2にしてます。保存時に gofmt かけています。

;; go-mode                                                                   
(use-package go-mode)
(add-hook 'go-mode-hook
          '(lambda ()
             (setq tab-width 2)))
(add-hook 'go-mode-hook 'go-eldoc-setup)
(add-hook 'before-save-hook 'gofmt-before-save)
(add-to-list 'company-backends 'company-go)

補完効いてミニバッファに API のシグネチャが表示されます。

f:id:kondoumh:20191128233400p:plain

goimports 使えばフォーマットついでに未使用の import 消してくれますが、自動保存にしているため追加直後に消されることになるので gofmt にしてます。