feat: clean up mason config
This commit is contained in:
parent
a7d4162f2a
commit
475361c480
2 changed files with 9 additions and 16 deletions
|
@ -1,9 +1,9 @@
|
|||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
local M = {}
|
||||
local augroup_name = 'CosmicNvimLspFormat'
|
||||
local user_config = require('cosmic.core.user')
|
||||
local u = require('cosmic.utils')
|
||||
local lsp_utils = require('cosmic.utils.lsp')
|
||||
local lsp_mappings = require('cosmic.lsp.mappings')
|
||||
|
||||
M.augroup = vim.api.nvim_create_augroup(augroup_name, { clear = true })
|
||||
|
||||
|
@ -42,7 +42,7 @@ function M.on_attach(client, bufnr)
|
|||
end
|
||||
|
||||
-- set up default mappings
|
||||
require('cosmic.lsp.mappings').init(client, bufnr)
|
||||
lsp_mappings.init(client, bufnr)
|
||||
|
||||
-- set up any additional mappings/overrides from user config
|
||||
for _, callback in pairs(user_config.lsp.on_attach_mappings) do
|
||||
|
@ -50,7 +50,7 @@ function M.on_attach(client, bufnr)
|
|||
end
|
||||
end
|
||||
|
||||
M.capabilities = u.merge(capabilities, {
|
||||
M.capabilities = u.merge(require('cmp_nvim_lsp').default_capabilities(), {
|
||||
-- See: https://github.com/neovim/neovim/issues/23291
|
||||
workspace = {
|
||||
didChangeWatchedFiles = {
|
||||
|
|
|
@ -17,29 +17,22 @@ return {
|
|||
local lspconfig = require('lspconfig')
|
||||
|
||||
local start_server = function(server)
|
||||
local opts = default_config
|
||||
local server_config = default_config
|
||||
|
||||
-- set up default cosmic options
|
||||
if server == 'tsserver' then
|
||||
opts = u.merge(opts, require('cosmic.lsp.providers.tsserver'))
|
||||
elseif server == 'jsonls' then
|
||||
opts = u.merge(opts, require('cosmic.lsp.providers.jsonls'))
|
||||
elseif server == 'pyright' then
|
||||
opts = u.merge(opts, require('cosmic.lsp.providers.pyright'))
|
||||
elseif server == 'eslint' then
|
||||
opts = u.merge(opts, require('cosmic.lsp.providers.eslint'))
|
||||
elseif server == 'lua_ls' then
|
||||
opts = u.merge(opts, require('cosmic.lsp.providers.lua_ls'))
|
||||
local ok, cosmic_server_config = pcall('cosmic.lsp.providers.' .. server)
|
||||
if ok then
|
||||
server_config = u.merge(server_config, cosmic_server_config)
|
||||
end
|
||||
|
||||
-- override options if user defines them
|
||||
if type(user_config.lsp.servers[server]) == 'table' then
|
||||
if user_config.lsp.servers[server].opts ~= nil then
|
||||
opts = u.merge(opts, user_config.lsp.servers[server].opts)
|
||||
server_config = u.merge(server_config, user_config.lsp.servers[server].opts)
|
||||
end
|
||||
end
|
||||
|
||||
lspconfig[server].setup(opts)
|
||||
lspconfig[server].setup(server_config)
|
||||
end
|
||||
|
||||
for config_server, config_opt in pairs(user_config.lsp.servers) do
|
||||
|
|
Loading…
Add table
Reference in a new issue