From f05400fb0b29517729aaac1eca35de9f3ffe3240 Mon Sep 17 00:00:00 2001 From: Alexander Bantyev Date: Mon, 1 Mar 2021 13:04:17 +0300 Subject: [PATCH] Set up lsp+direnv everywhere --- modules/applications/emacs/default.nix | 1 + modules/applications/emacs/init.el | 17 +++++++++-------- modules/workspace/git.nix | 1 + 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/modules/applications/emacs/default.nix b/modules/applications/emacs/default.nix index 693a7ad..af5914b 100644 --- a/modules/applications/emacs/default.nix +++ b/modules/applications/emacs/default.nix @@ -57,6 +57,7 @@ lsp-mode org-caldav envrc + lsp-haskell ]; }; diff --git a/modules/applications/emacs/init.el b/modules/applications/emacs/init.el index deaa28e..39fe039 100755 --- a/modules/applications/emacs/init.el +++ b/modules/applications/emacs/init.el @@ -220,14 +220,14 @@ If point was already at that position, move point to beginning of line." (use-package lsp-mode :config - (add-to-list 'lsp-language-id-configuration '(nix-mode . "nix")) - (lsp-register-client - (make-lsp-client :new-connection (lsp-stdio-connection '("rnix-lsp")) - :major-modes '(nix-mode) - :server-id 'nix)) + (add-hook 'rust-mode-hook 'lsp) ) - +(use-package lsp-haskell + :config + (add-hook 'haskell-mode-hook 'lsp) + (add-hook 'haskell-literate-mode-hook 'lsp) + ) (use-package org-caldav :config (setq org-caldav-url "https://nextcloud.balsoft.ru/remote.php/dav/calendars/balsoft") @@ -235,8 +235,9 @@ If point was already at that position, move point to beginning of line." (setq org-caldav-inbox "/home/balsoft/Documents/Work/calendar.org") (setq org-icalendar-timezone "Europe/Moscow") ) -;;; init.el ends here (use-package envrc :config - (envrc-global-mode)) + (envrc-global-mode) + (advice-add 'lsp :before (lambda (&optional n) (envrc--update)))) +;;; init.el ends here diff --git a/modules/workspace/git.nix b/modules/workspace/git.nix index 97fb4b3..19d45f8 100644 --- a/modules/workspace/git.nix +++ b/modules/workspace/git.nix @@ -4,6 +4,7 @@ userEmail = "balsoft@balsoft.ru"; userName = "Alexander Bantyev"; extraConfig.pull.rebase = true; + ignores = [ ".envrc" ".direnv" ".#*" ]; signing = { signByDefault = true; key = "687558B21E04FE92B255BED0E081FF12ADCB4AD5";