41 lines
1.0 KiB
EmacsLisp
41 lines
1.0 KiB
EmacsLisp
;;;; Markdown
|
|
(use-package markdown-mode)
|
|
|
|
;;;; Odin
|
|
(use-package odin-mode
|
|
:vc (:url "https://github.com/mattt-b/odin-mode"
|
|
:rev :newest)
|
|
:mode "\\.odin\\'"
|
|
:hook (odin-mode . eglot-ensure))
|
|
|
|
(use-package eglot
|
|
:ensure nil
|
|
:config
|
|
(setq eglot-autoshutdown t)
|
|
(add-to-list 'eglot-ignored-server-capabilities :signatureHelpProvider)
|
|
|
|
;; Explicit OLS configuration.
|
|
(add-to-list
|
|
'eglot-server-programs
|
|
'(odin-mode
|
|
. ("/home/jason/.local/bin/ols"
|
|
:initializationOptions
|
|
(:odin_command "/home/jason/.odin/odin"
|
|
:enable_document_symbols t
|
|
:enable_format t
|
|
:collections
|
|
[(:name "core"
|
|
:path "/home/jason/.odin/core")
|
|
(:name "vendor"
|
|
:path "/home/jason/.odin/vendor")])))))
|
|
|
|
;; OLS built-in definitions.
|
|
(setenv "OLS_BUILTIN_FOLDER" "/home/jason/ThirdParty/ols/builtin")
|
|
|
|
;; Vim-style code navigation.
|
|
(evil-define-key '(normal motion) 'global
|
|
"gd" #'xref-find-definitions
|
|
"gD" #'xref-find-references
|
|
"K" #'eldoc
|
|
(kbd "C-t") #'xref-go-back)
|