mirror of
https://github.com/NotAShelf/nvf.git
synced 2025-11-09 06:55:30 +00:00
languages/haskell: hls-wrapper -> hls
hls-wrapper is a simple script to start the correct language server based on the currently oppened project. From nvf perspective, this makes it effectively useless. To allow haskell to work on nvf OOTB, we specify cmd with hls (not wrapper). NOTE: this pins the language server to specific GHC version. To circumvent this, users must override (lib.mkForce) vim.lsp.servers.haskell-tools.cmd with their own, or just specify it as [ "haskell-language-server-wrapper" "--lsp" ].
This commit is contained in:
parent
1189e78132
commit
fdba701b46
1 changed files with 14 additions and 4 deletions
|
|
@ -12,16 +12,18 @@
|
|||
inherit (lib.nvim.types) mkGrammarOption;
|
||||
inherit (lib.nvim.dag) entryAfter;
|
||||
inherit (lib.nvim.lua) toLuaObject;
|
||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||
inherit (lib.meta) getExe';
|
||||
inherit (lib.generators) mkLuaInline;
|
||||
inherit (pkgs) haskellPackages;
|
||||
|
||||
cfg = config.vim.languages.haskell;
|
||||
|
||||
defaultServers = ["hls"];
|
||||
defaultServers = ["haskell-tools"];
|
||||
servers = {
|
||||
hls = {
|
||||
cmd = [(getExe' pkgs.haskellPackages.haskell-language-server "haskell-language-server-wrapper") "--lsp"];
|
||||
haskell-tools = {
|
||||
enable = true;
|
||||
cmd = [(getExe' pkgs.haskellPackages.haskell-language-server "haskell-language-server") "--lsp"];
|
||||
on_attach =
|
||||
mkLuaInline
|
||||
/*
|
||||
|
|
@ -79,6 +81,15 @@ in {
|
|||
};
|
||||
})
|
||||
|
||||
(mkIf cfg.lsp.enable {
|
||||
vim.lsp.servers =
|
||||
mapListToAttrs (n: {
|
||||
name = n;
|
||||
value = servers.${n};
|
||||
})
|
||||
cfg.lsp.servers;
|
||||
})
|
||||
|
||||
(mkIf (cfg.dap.enable || cfg.lsp.enable) {
|
||||
vim = {
|
||||
startPlugins = ["haskell-tools-nvim"];
|
||||
|
|
@ -94,7 +105,6 @@ in {
|
|||
enable = true,
|
||||
},
|
||||
},
|
||||
hls = ${toLuaObject servers.hls},
|
||||
''}
|
||||
${optionalString cfg.dap.enable ''
|
||||
dap = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue