Further housekeeping, bring the initial load down to under 1500 ms
Some checks failed
/ Test config on 20 (push) Failing after 53s

Make the editor load faster by deferring as much as possible until
later use. For example, LSP load is now deferred until first use and
no longer blocking.

Use only elixir-format from elixir-mode, for similar speed
reasons. The rest of the package has been taken over by the treesitter
version of the mode.
This commit is contained in:
Maciej 2025-01-05 08:04:24 +02:00
parent 3ffb484fd8
commit b0361861b4
Signed by: maciej
GPG key ID: 41D62D42D3B0D765
13 changed files with 297 additions and 328 deletions

View file

@ -4,8 +4,11 @@
;;; Code:
(require 'icejam-blocking)
;; (use-package lsp-mode :ensure (:depth 5) :requires (company))
(with-eval-after-load 'lsp-mode
;; https://emacs-lsp.github.io/lsp-mode/page/performance/#use-plists-for-deserialization
;; This supposedly makes it faster.
(setenv "LSP_USE_PLISTS" "true")
(use-package lsp-mode :ensure t :defer t
:config
(add-to-list 'lsp-disabled-clients '(typescript-ts-mode . vue-semantic-server))
(add-to-list 'lsp-disabled-clients '(js-mode . vue-semantic-server))
(add-to-list 'lsp-disabled-clients '(css-mode . vue-semantic-server))
@ -60,8 +63,8 @@
(unbind-key "s-l s r" lsp-mode-map)
(unbind-key "s-l s s" lsp-mode-map))
(use-package lsp-ui :ensure t :after (lsp-mode))
(with-eval-after-load 'lsp-ui
(use-package lsp-ui :ensure t :after (lsp-mode) :defer t
:config
(setopt lsp-ui-doc-enable t
lsp-ui-header t
lsp-ui-delay 0.5 ;; Wait half a second to display documentation
@ -69,7 +72,7 @@
lsp-ui-doc-include-signature t))
;; Lsp debugger mode
(use-package dap-mode :ensure t :after (lsp-mode lsp-ui))
(use-package dap-mode :ensure t :after (lsp-mode lsp-ui) :defer t)
(provide 'icejam-lsp)
;;; icejam-lsp.el ends here