Skip to content

Commit

Permalink
feat: server revamp (#31)
Browse files Browse the repository at this point in the history
update servers to work with new lspconfig loading pattern

- cssls
- denols
- graphql
- html
- json
- relay
- taplo
- vimls
- yamlls
  • Loading branch information
snelling-a authored May 5, 2023
2 parents 6ff1039 + c2382cd commit 6725d1e
Show file tree
Hide file tree
Showing 9 changed files with 114 additions and 0 deletions.
15 changes: 15 additions & 0 deletions lua/config/lsp/server/cssls.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
local util = require("config.util")

local M = {}

function M.setup(opts)
--Enable (broadcasting) snippet capability for completion
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true

opts.capabilities = util.tbl_extend_force(opts.capabilities or {}, capabilities)

require("lspconfig").cssls.setup(opts)
end

return M
13 changes: 13 additions & 0 deletions lua/config/lsp/server/denols.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
local util = require("config.lsp.util")

local M = {}

local config_files = { "deno.json", "deno.jsonc" }

function M.setup(opts)
opts.root_dir = util.get_root_pattern(config_files)

require("lspconfig").denols.setup(opts)
end

return M
11 changes: 11 additions & 0 deletions lua/config/lsp/server/graphql.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
local util = require("config.lsp.util")

local M = {}

function M.setup(opts)
opts.root_dir = util.get_graphql_root_pattern()

require("lspconfig").graphql.setup(opts)
end

return M
10 changes: 10 additions & 0 deletions lua/config/lsp/server/html.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
local util = require("config.lsp.util")
local M = {}

function M.setup(opts)
opts.root_dir = util.get_root_pattern({ "*.html" })

require("lspconfig").html.setup(opts)
end

return M
14 changes: 14 additions & 0 deletions lua/config/lsp/server/jsonls.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
local M = {}

local settings = { json = { schemas = require("schemastore").json.schemas(), validate = { enable = true } } }
local util = require("config.lsp.util")

function M.setup(opts)
opts = util.enable_broadcasting(opts)

opts.settings = settings

require("lspconfig").jsonls.setup(opts)
end

return M
11 changes: 11 additions & 0 deletions lua/config/lsp/server/relay_lsp.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
local util = require("config.lsp.util")

local M = {}

function M.setup(opts)
opts.root_dir = util.get_graphql_root_pattern()

require("lspconfig").relay_lsp.setup(opts)
end

return M
15 changes: 15 additions & 0 deletions lua/config/lsp/server/taplo.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
local lspconfig = require("lspconfig")

local settings = { evenBetterToml = { schema = { repositoryEnabled = true } } }

local M = {}

function M.setup(opts)
opts.root_dir = lspconfig.util.root_pattern("*.toml")

opts.settings = settings

lspconfig.taplo.setup(opts)
end

return M
10 changes: 10 additions & 0 deletions lua/config/lsp/server/vimls.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
local util = require("config.lsp.util")
local M = {}

function M.setup(opts)
opts.init_options = { isNeovim = util.get_root_pattern({ "init.vim", "init.lua" }) }

require("lspconfig").vimls.setup(opts)
end

return M
15 changes: 15 additions & 0 deletions lua/config/lsp/server/yamlls.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
local settings = {
yaml = {
schemas = require("schemastore").yaml.schemas(),
},
}

local M = {}

function M.setup(opts)
opts.settings = settings

require("lspconfig").yamlls.setup(opts)
end

return M

0 comments on commit 6725d1e

Please sign in to comment.