From c7d23ff90f960ff87f4605514b3a9ebd1e4c6da9 Mon Sep 17 00:00:00 2001 From: Tobias Ostner Date: Sat, 24 Aug 2024 11:18:06 +0200 Subject: [PATCH] Install lsp-mode instead of eglot --- nix/config/emacs/early-init.el | 3 +++ nix/config/emacs/init.el | 34 +++++++++++++++++----------------- nix/module/home-manager.nix | 1 + 3 files changed, 21 insertions(+), 17 deletions(-) diff --git a/nix/config/emacs/early-init.el b/nix/config/emacs/early-init.el index 2a53910..d41a4ed 100644 --- a/nix/config/emacs/early-init.el +++ b/nix/config/emacs/early-init.el @@ -1,5 +1,8 @@ ;; early-init.el --- -*- no-byte-compile: t -*- +(setq gc-cons-threshold 100000000) +(setq read-process-output-max (* 1024 1024)) + (setq byte-compile-warnings '(not obsolete)) (setq warning-suppress-log-types '((comp) (bytecomp))) (setq native-comp-async-report-warnings-errors 'silent) diff --git a/nix/config/emacs/init.el b/nix/config/emacs/init.el index 3b5833f..21178e5 100644 --- a/nix/config/emacs/init.el +++ b/nix/config/emacs/init.el @@ -139,22 +139,6 @@ ediff-split-window-function 'split-window-horizontally ediff-window-setup-function 'ediff-setup-windows-plain)) -(use-package eglot - :hook - (swift-mode . eglot-ensure) - (swift-ts-mode . eglot-ensure) - (nix-mode . eglot-ensure) - (python-mode . eglot-ensure) - (python-ts-mode . eglot-ensure) - :config - (setq eglot-autoshutdown t - eglot-send-idle-time 0.1) - (add-to-list 'eglot-server-programs '(swift-mode . ("xcrun" "sourcekit-lsp"))) - (add-to-list 'eglot-server-programs '(swift-ts-mode . ("xcrun" "sourcekit-lsp"))) - (add-to-list 'eglot-server-programs '(nix-mode . ("nixd"))) - (add-to-list 'eglot-server-programs '(python-mode . ("pylsp"))) - (add-to-list 'eglot-server-programs '(python-ts-mode . ("pylsp")))) - (use-package emacs :ensure nil :demand t @@ -357,12 +341,28 @@ (to/set-ligatures-for-font (face-attribute 'default :family)) (global-ligature-mode t)) +(use-package lsp-mode + :hook + ((python-mode python-ts-mode) . lsp) + (nix-mode . lsp) + ((swift-mode swift-ts-mode) .lsp) + :commands lsp + :config + (add-to-list 'lsp-language-id-configuration '(swift-ts-mode . "swift")) + (let ((lsp-sourcekit-executable (string-trim + (shell-command-to-string "xcrun --find sourckit-lsp")))) + (lsp-register-client + (make-lsp-client :new-connection (lsp-stdio-connection + (lambda () lsp-sourcekit-executable)) + :major-modes '(swift-mode swift-ts-mode) + :server-id 'sourcekit-ls)))) + (use-package magit :defer t) (use-package magit-todos :after magit - :configp + :config (magit-todos-mode 1)) (use-package marginalia diff --git a/nix/module/home-manager.nix b/nix/module/home-manager.nix index e146a97..a58f29d 100644 --- a/nix/module/home-manager.nix +++ b/nix/module/home-manager.nix @@ -89,6 +89,7 @@ js2-mode json-mode ligature + lsp-mode minions multiple-cursors nerd-icons