Spacemacs: golang LSPを導入
Table of Contents
tldr
Spacemacs(Emacs)でgolangのLSP実装である goplsを使ってみた。
(今のところ)邪魔になる処理を無効にすれば、使える 👍
gopls のインストール
go get -u golang.org/x/tools/cmd/gopls
設定
dotspacemacs/layers
(defun dotspacemacs/layers ()
...
     (go :variables
         godoc-at-point-function 'godoc-gogetdoc
         ;; go-use-gometalinter t
         go-use-golangci-lint t
         ;; go-backend 'go-mode
         go-backend 'lsp
...
dotspacemacs/user-config
(defun dotspacemacs/user-config ()
 ...
  ;; lsp
  (setq company-lsp-cache-candidates t)
  (setq company-lsp-async t)
  (setq lsp-ui-doc-enable nil)
  (setq lsp-ui-doc-include-signature nil)
  ;; lsp-ui-sideline
  (setq lsp-ui-sideline-enable nil)
  ;; lsp-ui-flycheck
  (setq lsp-ui-flycheck-enable t)
  ;; lsp-ui-imenu
  (setq lsp-ui-imenu-enable t)
  ;; lsp-ui-peek
  (setq lsp-ui-peek-enable t)
...