mirror of
https://github.com/neovim/nvim-lspconfig.git
synced 2025-12-24 23:11:00 +01:00
32 lines
811 B
Lua
32 lines
811 B
Lua
---@brief
|
|
---
|
|
--- https://github.com/haskell/haskell-language-server
|
|
---
|
|
--- Haskell Language Server
|
|
---
|
|
--- If you are using HLS 1.9.0.0, enable the language server to launch on Cabal files as well:
|
|
---
|
|
--- ```lua
|
|
--- vim.lsp.config('hls', {
|
|
--- filetypes = { 'haskell', 'lhaskell', 'cabal' },
|
|
--- })
|
|
--- ```
|
|
|
|
local util = require 'lspconfig.util'
|
|
|
|
---@type vim.lsp.Config
|
|
return {
|
|
cmd = { 'haskell-language-server-wrapper', '--lsp' },
|
|
filetypes = { 'haskell', 'lhaskell' },
|
|
root_dir = function(bufnr, on_dir)
|
|
local fname = vim.api.nvim_buf_get_name(bufnr)
|
|
on_dir(util.root_pattern('hie.yaml', 'stack.yaml', 'cabal.project', '*.cabal', 'package.yaml')(fname))
|
|
end,
|
|
settings = {
|
|
haskell = {
|
|
formattingProvider = 'ormolu',
|
|
cabalFormattingProvider = 'cabal-fmt',
|
|
},
|
|
},
|
|
}
|