diff --git a/nvim/.config/nvim/after/ftplugin/gleam.lua b/nvim/.config/nvim/after/ftplugin/gleam.lua new file mode 100644 index 0000000..f48fc6b --- /dev/null +++ b/nvim/.config/nvim/after/ftplugin/gleam.lua @@ -0,0 +1,4 @@ +local lsp_utils = require('lsp-utils') +local gleam_config = lsp_utils.gleam_config() + +vim.lsp.start(gleam_config) diff --git a/nvim/.config/nvim/lua/lsp-utils.lua b/nvim/.config/nvim/lua/lsp-utils.lua index 2d9067a..1681f07 100644 --- a/nvim/.config/nvim/lua/lsp-utils.lua +++ b/nvim/.config/nvim/lua/lsp-utils.lua @@ -177,6 +177,19 @@ function M.elixir_config() } end +function M.gleam_config() + local root_files = { 'gleam.toml' } + local root_directory = get_root_directory(root_files) + + return { + name = "gleam", + cmd = { 'gleam', 'lsp' }, + capabilities = default_capabilities, + root_dir = root_directory, + filetypes = { 'gleam' }, + } +end + function M.gopls_config() local root_files = { 'go.mod', 'go.work', '.git' } local root_directory = get_root_directory(root_files)