diff --git a/config.el b/config.el index 51cc978..cf8fd8a 100644 --- a/config.el +++ b/config.el @@ -226,6 +226,20 @@ (add-hook 'a-janet-mode-hook #'ajrepl-interaction-mode)) + +(use-package! nix-mode + :after lsp-mode + :ensure t + :hook + (nix-mode . lsp-deferred) ;; So that envrc mode will work + :custom + (lsp-disabled-clients '((nix-mode . nix-nil))) ;; Disable nil so that nixd will be used as lsp-server + :config + (setq lsp-nix-nixd-server-path "nixd" + lsp-nix-nixd-formatting-command [ "alejandra"] + lsp-nix-nixd-nixpkgs-expr "import (builtins.getFlake \"/home/emenel/source/nixos-config/\").inputs.nixpkgs { } " + lsp-nix-nixd-nixos-options-expr "(builtins.getFlake \"/home/emenel/source/nixos-config/\").nixosConfigurations.mnd.options")) + (after! lsp-mode (setq lsp-signature-render-documentation nil) @@ -273,9 +287,6 @@ (setq backup-enable-predicate (lambda (name) nil))) -;; (after! gpastel -;; (gpastel-mode)) - ;; override aggressive key shortcuts for alt-l/r (use-package! drag-stuff :defer t @@ -285,6 +296,14 @@ "" #'left-word "" #'right-word)) +(use-package! eglot-booster + :after eglot + :config (eglot-booster-mode)) + +(setq-default eglot-workspace-configuration + '(:nixd + (:formatting (:command ["alejandra"])))) + ;; load additional config files (load! "obsidian-config.el") (load! "mu4e-config.el") diff --git a/packages.el b/packages.el index b8e087f..d773142 100644 --- a/packages.el +++ b/packages.el @@ -106,3 +106,8 @@ :files ("*.el"))) (package! bookmark-in-project) + +(package! eglot-booster + :recipe (:type git + :host github + :repo "jdtsmith/eglot-booster"))