dotfiles/nvim/lua/lsp.lua

50 lines
883 B
Lua
Raw Normal View History

2022-09-27 00:15:16 +00:00
require('fidget').setup({})
require('lsp_signature').setup()
2022-08-30 14:14:07 +00:00
require('mason').setup()
require('mason-lspconfig').setup({
automatic_installation = true,
})
-- Format on save
vim.api.nvim_create_autocmd(
'BufWritePre',
{
pattern = { '<buffer>' },
2022-10-15 02:01:45 +00:00
callback = function()
vim.lsp.buf.format({})
end,
2022-08-30 14:14:07 +00:00
}
)
2022-09-27 00:15:16 +00:00
-- Language Servers
2022-10-15 15:00:12 +00:00
local capabilities = require('cmp_nvim_lsp').default_capabilities()
2022-09-27 00:15:16 +00:00
capabilities.textDocument.completion.completionItem.snippetSupport = true
2022-08-30 14:14:07 +00:00
2022-10-20 01:39:07 +00:00
local language_servers = {
'gopls',
'pyright',
'rust_analyzer',
'elixirls',
'html',
'cssls',
'tsserver',
'emmet_ls',
'sumneko_lua',
}
2022-09-27 00:15:16 +00:00
local settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
2022-08-30 14:14:07 +00:00
}
}
2022-09-27 00:15:16 +00:00
}
for _, server in ipairs(language_servers) do
require('lspconfig')[server].setup({
capabilities = capabilities,
settings = settings,
})
end