104 lines
2.4 KiB
Lua
104 lines
2.4 KiB
Lua
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
|
local lspconfig = require("lspconfig")
|
|
|
|
vim.api.nvim_create_augroup('FileTypeConfigs', { clear = true })
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'python',
|
|
callback = function()
|
|
require('dap-python').setup()
|
|
lspconfig.pyright.setup({ capabilities = capabilities })
|
|
require("conform").setup({
|
|
python = {"black"},
|
|
})
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'go',
|
|
callback = function()
|
|
require('dap-python').setup()
|
|
|
|
lspconfig.gopls.setup({ capabilities = capabilities })
|
|
|
|
require("conform").setup({
|
|
go = {"gofmt"},
|
|
})
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'rust',
|
|
callback = function()
|
|
require('dap-python').setup()
|
|
|
|
lspconfig.rust_analyzer.setup({
|
|
capabilities = capabilities,
|
|
settings = {
|
|
["rust-analyzer"] = {
|
|
checkOnSave = {
|
|
command = "clippy",
|
|
},
|
|
},
|
|
},
|
|
})
|
|
|
|
require("conform").setup({
|
|
rust = {"rustfmt"},
|
|
})
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'markdown',
|
|
callback = function()
|
|
lspconfig.marksman.setup({ capabilities = capabilities })
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'dockerfile',
|
|
callback = function()
|
|
lspconfig.dockerls.setup({ capabilities = capabilities })
|
|
lspconfig.docker_compose_language_service.setup({ capabilities = capabilities })
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'cs',
|
|
callback = function()
|
|
lspconfig.omnisharp.setup({ capabilities = capabilities })
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'yaml',
|
|
callback = function()
|
|
lspconfig.yamlls.setup({ capabilities = capabilities })
|
|
lspconfig.docker_compose_language_service.setup({ capabilities = capabilities })
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = {'c', 'cpp', 'objc', 'objcpp'},
|
|
callback = function()
|
|
lspconfig.clangd.setup({ capabilities = capabilities })
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = 'FileTypeConfigs',
|
|
pattern = 'sql',
|
|
callback = function()
|
|
lspconfig.sqls.setup({ capabilities = capabilities })
|
|
end,
|
|
})
|