add lsp-mode (go only for now)

This commit is contained in:
2023-04-24 18:59:47 +02:00
parent e1d7503858
commit d5ca899137
4 changed files with 40 additions and 1 deletions

1
.gitignore vendored
View File

@@ -18,3 +18,4 @@ daemon.pid
tramp tramp
eln-cache eln-cache
bookmarks bookmarks
.lsp-session-v1

View File

@@ -10,4 +10,20 @@
;; (setq indent-tabs-mode 1) ;; (setq indent-tabs-mode 1)
:init :init
(add-hook 'before-save-hook 'gofmt-before-save)) ;; disabled, I'm now trying lsp-mode, see below:
;; (add-hook 'before-save-hook 'gofmt-before-save)
;; :hook (go-mode lsp-deferred)
(when (fboundp 'lsp-deferred)
(defun lsp-go-install-save-hooks ()
(add-hook 'before-save-hook #'lsp-format-buffer t t)
(add-hook 'before-save-hook #'lsp-organize-imports t t))
(add-hook 'go-mode-hook #'lsp-deferred)
(add-hook 'go-mode-hook #'lsp-go-install-save-hooks)
(add-hook 'go-mode-hook #'ivy-mode)
;; overwrite dump-jump settions here
(bind-key* (kbd "C-c j") #'lsp-find-definition)
(bind-key* (kbd "C-c b") #'xref-pop-marker-stack)
))

21
conf-lisp/lsp.el Normal file
View File

@@ -0,0 +1,21 @@
;; LSP mode
(use-package lsp-mode
:config
(lsp-register-custom-settings
'(("gopls.completeUnimported" t t)
("gopls.staticcheck" t t)))
;; disable infantile nonsense
(setq lsp-headerline-breadcrumb-enable nil)
(setq lsp-modeline-code-actions-enable nil)
:init
;; I'm not using any of th lsp commands, but better define a prefix
;; than being unable to reach it
(setq lsp-keymap-prefix "C-c C-l")
:commands lsp)
;; I use ivy
(use-package lsp-ivy
:commands lsp-ivy-global-workspace-symbol)

1
init/14-lsp.el Symbolic link
View File

@@ -0,0 +1 @@
../conf-lisp/lsp.el