diff options
| author | Grégoire Duchêne <gduchene@awhk.org> | 2022-09-17 12:24:29 +0100 |
|---|---|---|
| committer | Grégoire Duchêne <gduchene@awhk.org> | 2022-09-17 12:24:29 +0100 |
| commit | b05b52881207b134c6ab08710ae55ac421faea9b (patch) | |
| tree | 8b1ac5783f0523f5ef8b68a6a69ab38e72f50c36 /emacs | |
| parent | fa7c95b200c3778a9e94afb77ed67c526dd13f3a (diff) | |
emacs: Use Eglot with Go
Diffstat (limited to 'emacs')
| -rw-r--r-- | emacs/functions.el | 4 | ||||
| -rw-r--r-- | emacs/init.el | 7 | ||||
| -rw-r--r-- | emacs/package-list.el | 1 |
3 files changed, 10 insertions, 2 deletions
diff --git a/emacs/functions.el b/emacs/functions.el index 11db1ee..d23e412 100644 --- a/emacs/functions.el +++ b/emacs/functions.el @@ -90,6 +90,10 @@ enabled." (float-time (time-subtract after-init-time before-init-time)) gcs-done)) +(defun my/eglot-organize-imports () + "Interactively call ‘eglot-code-action-organize-imports’." + (call-interactively #'eglot-code-action-organize-imports)) + (defmacro my/with-add-hook (hook &rest body) (declare (indent 1) (debug t)) `(add-hook ,hook #'(lambda () ,@body))) diff --git a/emacs/init.el b/emacs/init.el index 9c5f5c7..741c6f8 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -145,8 +145,11 @@ (my/with-add-hook 'go-mode-hook (setq tab-width 2) - (add-hook 'before-save-hook #'gofmt-before-save nil :local) - (flycheck-mode)) + + (when (executable-find "gopls") + (eglot-ensure) + (add-hook 'before-save-hook #'my/eglot-organize-imports nil :local) + (add-hook 'before-save-hook #'eglot-format-buffer nil :local))) ;; Flycheck diff --git a/emacs/package-list.el b/emacs/package-list.el index f7df4ba..6b049e2 100644 --- a/emacs/package-list.el +++ b/emacs/package-list.el @@ -3,6 +3,7 @@ counsel diminish dockerfile-mode + eglot flycheck go-mode google-c-style |
