return { "neovim/nvim-lspconfig", event = { "BufReadPre", "BufNewFile" }, dependencies = { "folke/neodev.nvim", }, opts = { servers = { gopls = {}, lua_ls = { settings = { Lua = { workspace = { checkThirdParty = false, }, }, }, }, --cssls = {}, --html = {}, --jsonls = {}, --tsserver = {}, --svelte = {}, }, }, config = function(_, opts) require("neodev").setup() -- Servers local servers = opts.servers for server, server_opts in pairs(servers) do require("lspconfig")[server].setup(server_opts) end -- Icons local icons = { Error = " ", Warn = " ", Hint = " ", Info = " ", } for name, icon in pairs(icons) do name = "DiagnosticSign" .. name vim.fn.sign_define(name, { text = icon, texthl = name, numhl = "" }) end end, }