diff --git a/home-manager-modules/neovim/default.nix b/home-manager-modules/neovim/default.nix index 08e1ba3..fc1daf1 100644 --- a/home-manager-modules/neovim/default.nix +++ b/home-manager-modules/neovim/default.nix @@ -24,6 +24,9 @@ with lib; enable = true; settings = { coc.preferences.formatOnSaveFiletypes = [ "nix" "rust" "sql" "python" ]; + rust-analyzer.enable = true; + rust-analyzer.cargo.allFeatures = true; + rust-analyzer.checkOnSave.allTargets = true; languageserver = { python = { @@ -31,6 +34,11 @@ with lib; filetypes = [ "py" "python" ]; }; + haskell = { + command = "haskell-language-server"; + filetypes = [ "hs" ]; + }; + nix = { command = "rnix-lsp"; filetypes = [ @@ -78,10 +86,11 @@ with lib; semshi coc-prettier coc-pyright + coc-rust-analyzer rust-vim ]; - extraPackages = with pkgs; [ rust-analyzer rnix-lsp pyright ]; + extraPackages = with pkgs; [ rust-analyzer rnix-lsp pyright haskell-language-server ]; extraConfig = '' luafile ${./settings.lua}