Files
nvim/lua/config/plugins/lsp.lua
T
2023-02-12 21:23:20 -05:00

79 lines
1.9 KiB
Lua

local config = function()
local settings = require 'config.lsp-settings'
local on_attach = settings.on_attach
local capabilities = settings.capabilities
require 'lspconfig'.lua_ls.setup {
on_attach = on_attach,
capabilities = capabilities,
settings = {
Lua = {
diagnostics = {
globals = { 'vim' },
},
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
checkThirdParty = false
},
telemetry = {
enable = false,
},
},
},
}
require 'rust-tools'.setup {
server = {
on_attach = on_attach,
capabilities = capabilities,
}
}
vim.g.markdown_fenced_languages = {
"ts=typescript"
}
require 'lspconfig'.denols.setup {
on_attach = on_attach,
capabilities = capabilities,
}
require 'lspconfig'.clangd.setup {
on_attach = on_attach,
capabilities = capabilities,
}
require 'lspconfig'.asm_lsp.setup {
on_attach = on_attach,
capabilities = capabilities,
}
require 'lspconfig'.pylsp.setup {
on_attach = on_attach,
capabilities = capabilities,
}
require'lspconfig'.kotlin_language_server.setup {
on_attach = on_attach,
capabilities = capabilities
}
end
return function(use)
use {
'neovim/nvim-lspconfig',
config = config
}
use {
'simrat39/rust-tools.nvim',
requires = {
'nvim-lua/plenary.nvim',
'mfussenegger/nvim-dap',
}
}
use {
'windwp/nvim-autopairs',
config = function() require 'nvim-autopairs'.setup {} end
}
use {
'scalameta/nvim-metals',
requires = { "nvim-lua/plenary.nvim" }
}
use 'mfussenegger/nvim-jdtls'
end