diff --git a/symlinks/bin/lspinstall b/symlinks/bin/lspinstall index a6575c6..0cb2d72 100755 --- a/symlinks/bin/lspinstall +++ b/symlinks/bin/lspinstall @@ -34,4 +34,20 @@ case $SERVER in mkdir -p $HOME/lsp/dotnet/omnisharp tar -xf /tmp/omnisharp.tar.gz -C $HOME/lsp/dotnet/omnisharp ;; + hls) + if [ -z "$VERSION" ]; then + VERSION="1.4.0" + fi + case $UNAME in + Linux) + FILE_NAME="haskell-language-server-Linux-${VERSION}.tar.gz" + ;; + Darwin) + FILE_NAME="haskell-language-server-macOS-${VERSION}.tar.gz" + ;; + esac + wget -O - https://github.com/haskell/haskell-language-server/releases/download/$VERSION/$FILE_NAME > /tmp/hls.tar.gz + mkdir -p $HOME/lsp/haskell/hls + tar -xf /tmp/hls.tar.gz -C $HOME/lsp/haskell/hls + ;; esac diff --git a/symlinks/config/nvim/lua/lsp/servers.lua b/symlinks/config/nvim/lua/lsp/servers.lua index 1d54fa1..40ac75e 100644 --- a/symlinks/config/nvim/lua/lsp/servers.lua +++ b/symlinks/config/nvim/lua/lsp/servers.lua @@ -42,6 +42,14 @@ lspconfig.omnisharp.setup { capabilities = capabilities } +-- Haskell LS +local hls_bin = vim.fn.glob('$HOME') .. "/lsp/haskell/hls/haskell-language-server-wrapper" +lspconfig.hls.setup { + cmd = { hls_bin, "--lsp" }; + on_attach = common_config.on_attach; + capabilities = capabilities +} + -- Leminx (XML Language server) lspconfig.lemminx.setup { cmd = { "lemminx" };