Replace lsp-mode with eglot
Some checks failed
/ Test config on 20 (push) Failing after 49s

This commit is contained in:
Maciej 2025-09-18 15:06:30 +03:00
parent f03cae68b3
commit 2ef1340e6c
Signed by: maciej
GPG key ID: 28243AF437E32F99
28 changed files with 140 additions and 220 deletions

View file

@ -57,19 +57,17 @@
#'cape-file
#'cape-keyword)))
(defun icejam-set-no-lsp-capfs ()
(defun icejam-set-no-eglot-capfs ()
"Set `completion-at-point-function` to non-LSP list."
(setq-local completion-at-point-functions
(list (cape-capf-super #'cape-dabbrev #'yasnippet-capf)
#'cape-file
#'cape-keyword)))
(defun icejam-set-lsp-capfs ()
(defun icejam-set-eglot-capfs ()
"Set `completion-at-point-function` to list where LSP is supported."
(declare-function lsp-completion-at-point 'lsp-mode)
(setq-local completion-at-point-functions
(list (cape-capf-super #'lsp-completion-at-point
#'yasnippet-capf)
(list (cape-capf-super #'yasnippet-capf #'eglot-completion-at-point)
#'cape-dabbrev
#'cape-file)))

View file

@ -104,7 +104,7 @@
(use-package icejam-flycheck :ensure nil)
(use-package icejam-ispell :ensure nil)
(use-package icejam-deft :ensure nil)
(use-package icejam-lsp :ensure nil)
(use-package icejam-eglot :ensure nil)
(use-package icejam-dashboard :ensure nil)
(use-package icejam-magit :ensure nil)
(use-package icejam-vundo :ensure nil)

13
lisp/icejam-eglot.el Normal file
View file

@ -0,0 +1,13 @@
;;; icejam-eglot -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Global Language Server Protocol Config
;;; Code:
(use-package eldoc-box :ensure t
:hook ((emacs-lisp-mode . eldoc-box-hover-at-point-mode)
(eglot--managed-mode . eldoc-box-hover-at-point-mode))
:custom-face
(eldoc-box-markdown-separator ((t (:inherit (fringe))))))
(provide 'icejam-eglot)
;;; icejam-eglot.el ends here

View file

@ -1,76 +0,0 @@
;;; icejam-lsp -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Global Language Server Protocol Config
;;; Code:
;; 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))
(setq-default lsp-file-watch-threshold 10000
lsp-restart 'auto-restart
lsp-prefer-capf t
lsp-completion-provider :capf
lsp-server-trace nil
lsp-lens-enable nil
lsp-diagnostics-provider :flymake
lsp-lens-mode nil
read-process-output-max (* 1024 1024 4)
lsp-log-io nil
;; Do not use Vue language server for everything .JS/TS/TSX
lsp-volar-take-over-mode nil
lsp-enable-file-watchers nil)
(unbind-key "s-l =" lsp-mode-map)
(unbind-key "s-l G" lsp-mode-map)
(unbind-key "s-l T" lsp-mode-map)
(unbind-key "s-l a" lsp-mode-map)
(unbind-key "s-l g" lsp-mode-map)
(unbind-key "s-l r" lsp-mode-map)
(unbind-key "C-S-SPC" lsp-mode-map)
(unbind-key "s-l G g" lsp-mode-map)
(unbind-key "s-l G r" lsp-mode-map)
(unbind-key "s-l G s" lsp-mode-map)
(unbind-key "s-l h g" lsp-mode-map)
(unbind-key "s-l h h" lsp-mode-map)
(unbind-key "s-l h s" lsp-mode-map)
(unbind-key "s-l g a" lsp-mode-map)
(unbind-key "s-l g e" lsp-mode-map)
(unbind-key "s-l g g" lsp-mode-map)
(unbind-key "s-l g h" lsp-mode-map)
(unbind-key "s-l g r" lsp-mode-map)
(unbind-key "s-l T D" lsp-mode-map)
(unbind-key "s-l T L" lsp-mode-map)
(unbind-key "s-l T S" lsp-mode-map)
(unbind-key "s-l T T" lsp-mode-map)
(unbind-key "s-l T b" lsp-mode-map)
(unbind-key "s-l T d" lsp-mode-map)
(unbind-key "s-l T f" lsp-mode-map)
(unbind-key "s-l T l" lsp-mode-map)
(unbind-key "s-l T s" lsp-mode-map)
(unbind-key "s-l F a" lsp-mode-map)
(unbind-key "s-l F b" lsp-mode-map)
(unbind-key "s-l F r" lsp-mode-map)
(unbind-key "s-l = =" lsp-mode-map)
(unbind-key "s-l s D" lsp-mode-map)
(unbind-key "s-l s d" lsp-mode-map)
(unbind-key "s-l s q" lsp-mode-map)
(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) :defer t
:config
(setopt lsp-ui-doc-enable t
lsp-ui-doc-delay 0.5 ;; Wait half a second to display documentation
lsp-ui-doc-position 'at-point
lsp-ui-doc-include-signature t))
;; Lsp debugger mode
(use-package dap-mode :ensure t :after (lsp-mode) :defer t)
(provide 'icejam-lsp)
;;; icejam-lsp.el ends here

View file

@ -108,9 +108,7 @@
;; This only appears for emacs-lisp-mode
("d" "Explain thing at point" helpful-at-point :if-mode emacs-lisp-mode)
;; These only appear for LSP mode
("m" "LSP iMenu" lsp-ui-imenu
:if (lambda () (bound-and-true-p lsp-mode)))
("m" "iMenu" consult-imenu)
;; Finally, quit.
("q" "Quit" keyboard-quit)]])

View file

@ -1,14 +1,12 @@
;;; dart -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(declare-function lsp 'lsp-mode)
(use-package dart-mode :ensure t :defer t)
(use-package lsp-dart :defer t :ensure t :requires (dart-mode lsp))
(defun icejam-lang-activate-dart-mode ()
"Reconfigure dart mode for your own purposes."
(lsp))
(eglot-ensure))
(add-hook 'dart-mode-hook 'icejam-lang-activate-dart-mode)

View file

@ -1,13 +1,13 @@
;;; dhall -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(declare-function lsp 'lsp-mode)
(use-package dhall-mode :ensure t :defer t :requires (lsp))
(use-package dhall-mode :ensure t :defer t)
(defun icejam-lang-activate-dhall-mode ()
"Reconfigure dhall mode for your own purposes."
(lsp))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'dhall-mode-hook 'icejam-lang-activate-dhall-mode)
(add-hook 'dhall-mode-hook 'display-line-numbers-mode)

View file

@ -3,14 +3,15 @@
;;; Code:
(eval-when-compile
(declare-function transient-define-prefix 'transient)
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function -> 'dash)
(declare-function lsp 'lsp-mode)
(declare-function yas--table-get-create 'yasnippet)
(declare-function yas--remove-template-by-uuid 'yasnippet)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(defvar icejam-language-transient-alist)
(defvar icejam-elixir-lang-menu)
(defvar apheleia-mode-alist))
(use-package elixir-ts-mode :ensure t :defer t :after (apheleia)
@ -23,7 +24,7 @@
(concat (propertize "Code actions for " 'face 'transient-heading)
(propertize (format "%s" major-mode) 'face 'transient-key)
(propertize ":\n" 'face 'transient-heading)))
("m" "LSP iMenu" lsp-ui-imenu)
("m" "iMenu" consult-imenu)
("r" "Reload buffer" icejam-revert-buffer-no-confirm)
("e" "Show errors" flymake-show-buffer-diagnostics)
("f" "Format buffer with Elixir formatter" apheleia-format-buffer)
@ -43,14 +44,11 @@
"All things Elixir."
(icejam-set-indent 2)
(column-enforce-n 98)
(lsp)
(eglot-ensure)
;; If needed, switch the one below to false to disable documentation pop-ups
;; (setq-local lsp-ui-doc-enable t)
(setq-local lsp-eldoc-enable-hover nil
lsp-completion-enable-additional-text-edit nil)
(icejam-set-lsp-capfs)
(icejam-set-eglot-capfs)
(icejam-delete-elixir-snippets))
(add-hook 'heex-ts-mode-hook 'icejam-activate-elixir-ts-mode)

View file

@ -2,15 +2,11 @@
;;; Commentary:
;;; Code:
(declare-function lsp 'lsp-mode)
(declare-function column-enforce-n 'column-enforce-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package erlang
:defer t
:ensure (:depth 1)
:after (lsp lsp-ui))
(use-package erlang :defer t :ensure (:depth 1))
(defun icejam-activate-erlang-mode ()
"Start Erlang related editing process."
@ -18,10 +14,10 @@
(column-enforce-n 80)
;; Start LSP
(lsp)
(eglot-ensure)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'erlang-mode-hook 'icejam-activate-erlang-mode)

View file

@ -9,25 +9,20 @@
;; Fsharp configuration
;;; Code:
(declare-function lsp-deferred 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function column-enforce-n 'column-enforce-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package fsharp-mode
:requires (lsp-mode lsp-ui)
:ensure t
:defer t)
(use-package fsharp-mode :ensure t :defer t)
(defun icejam-activate-fsharp-mode ()
"Activate F# goodies."
(icejam-set-indent 4)
(column-enforce-n 100)
(lsp-deferred)
(eglot-ensure)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'fsharp-mode-hook 'icejam-activate-fsharp-mode)

View file

@ -10,26 +10,22 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package gleam-ts-mode :defer t :after (lsp)
:ensure (:type git
:host github
:repo "gleam-lang/gleam-mode"
:files ("gleam-ts-mode.el")))
(use-package gleam-ts-mode :defer t :ensure t
:mode (rx ".gleam" eos))
(add-to-list 'auto-mode-alist '("\\.gleam\\'" . gleam-ts-mode))
;; (add-to-list 'auto-mode-alist '("\\.gleam\\'" . gleam-ts-mode))
(defun icejam-lang-activate-gleam-mode ()
"All things Gleam."
(icejam-set-indent 2)
(column-enforce-n 100)
(lsp)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'gleam-mode-hook 'icejam-lang-activate-gleam-mode)
(add-hook 'gleam-ts-mode-hook 'icejam-lang-activate-gleam-mode)
(provide 'icejam-lang-gleam)
;;; icejam-lang-gleam.el ends here

View file

@ -10,21 +10,17 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package go-mode
:requires (lsp-mode lsp-ui)
:defer t
:ensure t)
(use-package go-mode :defer t :ensure t)
(defun icejam-activate-golang-mode ()
"Activate my own Golang mode settings."
(icejam-set-indent 8)
(column-enforce-n 100)
(lsp)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'go-mode-hook #'icejam-activate-golang-mode)

View file

@ -11,27 +11,19 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp-deferred 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package haskell-mode
:ensure t
:defer t)
(use-package lsp-haskell
:ensure t
:defer t
:after (lsp-mode lsp-ui haskell-mode))
(use-package haskell-mode :ensure t :defer t)
(defun icejam-activate-haskell-mode ()
"Run this in `haskell-mode'."
(icejam-set-indent 2)
(column-enforce-n 80)
(lsp-deferred)
(eglot-ensure)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'haskell-mode-hook 'icejam-activate-haskell-mode)

View file

@ -3,12 +3,10 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp-deferred 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package js2-mode :ensure t :defer t
:after (web-mode lsp-mode lsp-ui))
(use-package js2-mode :ensure t :defer t :after(web-mode))
(use-package typescript-ts-mode :ensure nil :defer t)
@ -18,7 +16,7 @@
(defun icejam-activate-typescript-ts-mode ()
"Typescript mode overrides."
(icejam-set-indent 2)
(lsp-deferred)
(eglot-ensure)
(column-enforce-n 100))
(add-hook 'typescript-ts-mode-hook 'icejam-activate-typescript-ts-mode)
@ -36,19 +34,17 @@
(icejam-set-indent 2)
(when (not (string-match-p ".json" (buffer-file-name)))
(lsp-deferred))
(eglot-ensure))
(column-enforce-n 80)
(setq-local js2-basic-offset 2)
(setq-local js2-strict-missing-semi-warning nil)
(setq-local lsp-eldoc-enable-hover nil)
(setq js2-mode-show-parse-errors nil)
(setq js2-mode-show-strict-warnings nil)
(setq-local lsp-eldoc-enable-hover nil)
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'js2-mode-hook 'icejam-activate-js2-mode)

View file

@ -10,14 +10,10 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package kotlin-ts-mode
:ensure t
:after (lsp-mode lsp-ui)
:defer t)
(use-package kotlin-ts-mode :ensure t :defer t)
(add-to-list 'auto-mode-alist '("\\.kt\\'" . kotlin-ts-mode))
(add-to-list 'auto-mode-alist '("\\.kts\\'" . kotlin-ts-mode))
@ -28,8 +24,8 @@
"All things Kotlin."
(icejam-set-indent 2)
(column-enforce-n 100)
(lsp)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'kotlin-ts-mode-hook 'icejam-activate-kotlin-mode)

View file

@ -1,9 +1,7 @@
;;; lean -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(declare-function lsp-deferred 'lsp-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package lean4-mode
:ensure (lean4-mode
@ -11,7 +9,6 @@
:host github
:repo "leanprover/lean4-mode"
:files ("*.el" "data"))
:requires (lsp)
:defer t)
(defun icejam-activate-lean-mode ()
@ -19,10 +16,10 @@
(interactive)
;; Run LSP
(lsp-deferred)
(eglot-ensure)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'lean4-mode-hook #'icejam-activate-lean-mode)

View file

@ -1,4 +1,4 @@
;;; icejam-lang-lua.el --- summary
;;; icejam-lang-lua.el --- summary -*- lexical-binding: t; -*-
;; Author: Maciej Szlosarczyk
;; Maintainer: Maciej Szlosarczyk
@ -11,19 +11,18 @@
;;; Code:
(eval-when-compile
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(defvar icejam-language-transient-alist))
(use-package lua-mode :ensure t :defer t :after (lsp-mode))
(use-package lua-mode :ensure t :defer t)
(defun icejam-activate-lua-mode ()
"All things related to Lua."
(icejam-set-indent 4)
(column-enforce-n 100)
(lsp)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'lua-mode-hook 'icejam-activate-lua-mode)

View file

@ -6,7 +6,7 @@
(declare-function elpaca-installed-p "elpaca")
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-no-lsp-capfs 'icejam-prog-mode)
(declare-function icejam-set-no-eglot-capfs 'icejam-prog-mode)
(declare-function rxt--re-builder-switch-pcre-mode "pcre2el"))
;; Markdown is a dependency of LSP mode. By wrapping it in unless we silence

View file

@ -1,11 +1,8 @@
;;; ocaml -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(declare-function lsp "lsp-mode" nil)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(eval-when-compile (defvar icejam-language-transient-alist))
(use-package merlin :defer t :ensure t)
@ -50,8 +47,8 @@
(icejam-set-indent 2)
(opam-switch-mode t)
(icejam-load-ocaml-site-packages)
(lsp)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'tuareg-mode-hook 'icejam-activate-tuareg-mode)

View file

@ -27,13 +27,12 @@
:mode ("\\.graphqls\\'" . graphql-mode))
;; Yaml
(declare-function lsp "lsp-mode" nil)
(use-package yaml-mode :ensure t :defer t :requires (lsp))
(use-package yaml-mode :ensure t :defer t)
(with-eval-after-load 'yaml-mode
(defun icejam-lang-activate-yaml-mode ()
"Activate yaml-mode."
(lsp))
(eglot-ensure))
(add-hook 'yaml-mode-hook 'icejam-lang-activate-yaml-mode))
;; Other text files

View file

@ -11,20 +11,19 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(eval-when-compile (defvar icejam-language-transient-alist))
(use-package php-mode :ensure t :defer t
:requires (lsp-mode lsp-ui))
(use-package php-mode :ensure t :defer t)
(transient-define-prefix icejam-lang-php-context-menu ()
"PHP Buffer Commands."
[""
["LSP"
("m" "iMenu" lsp-ui-imenu)]
("m" "iMenu" consult-imenu)]
["Buffer"
("r" "Reload" icejam-revert-buffer-no-confirm)
("f" "Format" lsp-format-buffer)
("f" "Format" eglot-format-buffer)
("i" "Indent" icejam-mark-and-indent-whole-buffer)
("e" "Show Errors" flymake-show-buffer-diagnostics)]]
[""
@ -39,7 +38,7 @@
(keymap-set php-mode-map "C-c l" #'icejam-lang-php-context-menu)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'php-mode-hook 'icejam-lang-activate-php-mode)

View file

@ -12,10 +12,9 @@
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package purescript-mode :ensure t :defer t
:after (lsp-mode lsp-ui))
(use-package purescript-mode :ensure t :defer t)
(declare-function purescript-indentation-mode "purescript-mode")
@ -28,7 +27,7 @@
(purescript-indentation-mode t)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'purescript-mode-hook 'icejam-activate-purescript-mode)

View file

@ -1,8 +1,7 @@
;;; python -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(declare-function column-enforce-n "column-enforce-mode" (number))
(declare-function transient-define-prefix 'transient)
@ -14,10 +13,10 @@
"Python Buffer Commands."
[""
["LSP"
("m" "iMenu" lsp-ui-imenu)]
("m" "iMenu" consult-imenu)]
["Buffer"
("r" "Reload" icejam-revert-buffer-no-confirm)
("f" "Format" lsp-format-buffer)
("f" "Format" eglot-format-buffer)
("i" "Indent" icejam-mark-and-indent-whole-buffer)
("e" "Show Errors" flymake-show-buffer-diagnostics)]]
[""
@ -29,11 +28,11 @@
(defun icejam-lang-activate-python-mode ()
"Activate python mode."
(lsp)
(eglot-ensure)
(column-enforce-n 99)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'python-mode-hook 'icejam-lang-activate-python-mode)

View file

@ -2,9 +2,8 @@
;;; Commentary:
;;; Code:
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(eval-when-compile (defvar icejam-language-transient-alist))
(use-package rspec-mode :ensure t :defer t :commands (rspec-install-snippets))
@ -24,10 +23,10 @@
(setq ruby-insert-encoding-magic-comment nil)
;; Start LSP
(lsp)
(eglot-ensure)
;; Capf override
(icejam-set-lsp-capfs))
(icejam-set-eglot-capfs))
(add-hook 'ruby-ts-mode-hook 'rspec-mode)
(add-hook 'ruby-ts-mode-hook 'ruby-end-mode)

View file

@ -3,9 +3,8 @@
;;; Code:
(eval-when-compile
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp-deferred 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point))
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point))
(use-package rust-mode
:ensure t
@ -30,8 +29,8 @@
(column-enforce-n 99)
;; Run LSP
(lsp-deferred)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'rust-mode-hook 'icejam-activate-rust-mode)
(add-hook 'rust-mode-hook 'flycheck-rust-setup)

View file

@ -1,10 +1,7 @@
;;; web -- summary -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(declare-function lsp 'lsp-mode)
(use-package web-mode :after (lsp flycheck) :ensure t :defer t)
(use-package web-mode :ensure t :defer t)
;; Eex Web mode
(add-to-list 'auto-mode-alist '("\\.eex\\'" . web-mode))
@ -31,7 +28,7 @@
(setq-local lsp-eldoc-enable-hover nil)
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
(when (string-match-p ".vue" (buffer-file-name))
(lsp)))
(eglot-ensure)))
(add-hook 'web-mode-hook 'icejam-activate-web-mode)

View file

@ -10,11 +10,10 @@
;;; Code:
(declare-function column-enforce-n 'column-enforce-mode (number))
(declare-function lsp 'lsp-mode)
(declare-function icejam-set-indent 'icejam-prog-mode)
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
(declare-function icejam-set-eglot-capfs 'icejam-complete-at-point)
(use-package zig-mode :ensure t :defer t :requires (lsp))
(use-package zig-mode :ensure t :defer t)
(defun icejam-activate-zig-mode ()
"Goodies for editing zig files."
@ -24,8 +23,8 @@
;; Set indentation to 4 chars
(icejam-set-indent 4)
(lsp)
(icejam-set-lsp-capfs))
(eglot-ensure)
(icejam-set-eglot-capfs))
(add-hook 'zig-mode-hook 'icejam-activate-zig-mode)

View file

@ -0,0 +1,41 @@
;;; base16-modus-operandi-tinded.el --- summary
;;; Commentary:
;; Author: Maciej Szlosarczyk
;; Maintainer: Maciej Szlosarczyk
;; Version: 0.1-snapshot
;;; Code:
(use-package icejam-themes :ensure nil)
(defvar base16-modus-operandi-tinted-colors
'(:base00 "#fbf7f0"
:base01 "#efe9dd"
:base02 "#c9b9b0"
:base03 "#595959"
:base04 "#595959"
:base05 "#000000"
:base06 "#193668"
:base07 "#193668"
:base08 "#a60000"
:base09 "#006300"
:base0A "#006300"
:base0B "#0031a9"
:base0C "#721045"
:base0D "#00598b"
:base0E "#731c52"
:base0F "#80601f")
"All colors for Base16 Modus Operandi are defined here.")
;; Define the theme
(deftheme base16-modus-operandi-tinted)
;; Add all the faces to the theme
(declare-function base16-theme-define 'base16-theme)
(base16-theme-define 'base16-modus-operandi-tinted base16-modus-operandi-tinted-colors)
;; Mark the theme as provided
(provide-theme 'base16-modus-operandi-tinted)
(provide 'icejam-base16-modus-operandi-tinted)
;;; icejam-base16-modus-operandi-tinted.el ends here