2024-07-23 Eglot for Go, Perl and Markdown

Apparently there's a way to have Oddµ and Eglot cooperate in Emacs using Marksman.

Marksman

Note that LSP integration only works in a "project": a VCS repository, or in the case of Marksman, a directory containing an (empty) `.marksman.toml` file. This latter option is important if your notes aren't under version control.

After installing the Marksman binary, use something like the following. This installs Eglot for Go mode, Perl mode and Markdown mode.

;; There is probably a way to put this inside the use-package form but
;; this is how it works for me.
(add-hook 'go-mode-hook 'eglot-ensure)
(add-hook 'perl-mode-hook 'eglot-ensure)
(add-hook 'markdown-mode-hook 'eglot-ensure)
(autoload 'eglot-ensure "eglot" "Start Eglot session for current buffer if there isn’t one.")

(use-package eglot :ensure t
  :config (add-to-list 'eglot-server-programs '(markdown-mode . ("marksman"))))

(setq-default eglot-workspace-configuration
    '((:gopls .
        ((staticcheck . t)
         (matcher . "CaseSensitive")))))

​#Emacs ​#Oddµ ​#Markdown ​#Perl ​#Golang