Spacemacs: golang LSPを導入
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)
...
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)
...
Author And Source
この問題について(Spacemacs: golang LSPを導入), 我々は、より多くの情報をここで見つけました https://qiita.com/kentakozuka/items/3d02b0b5e98b48cd030f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .