return { { -- lsp的config "neovim/nvim-lspconfig", dependencies = { "folke/neodev.nvim", "hrsh7th/cmp-nvim-lsp", }, config = function() require 'neodev'.setup {} local servers = { lua_ls = require('lsp.lua'), clangd = require('lsp.c'), bashls = require('lsp.bash'), basedpyright = require('lsp.basedpyright'), yamlls = require('lsp.yaml'), gopls = require('lsp.go'), jsonls = require('lsp.json'), } local capabilities = require('cmp_nvim_lsp').default_capabilities() for server, config in pairs(servers) do config.capabilities = capabilities vim.lsp.config(server, config) vim.lsp.enable(server) end G.map({ { 'n', '', 'lua vim.lsp.buf.rename()' }, { 'n', 'gd', 'lua vim.lsp.buf.definition()' }, { 'n', 'gh', 'lua vim.lsp.buf.hover()' }, { 'n', 'gD', 'lua vim.lsp.buf.declaration()' }, { 'n', 'gi', 'lua vim.lsp.buf.implementation()' }, { 'n', 'gr', 'lua vim.lsp.buf.references()' }, { 'n', '', 'lua vim.lsp.buf.format()' }, }) end }, }