return {
	on_setup = function(server)
		server.setup({
			flags = {
				debounce_text_changes = 150,
			},
			on_attach = function(client, bufnr)
				-- 禁用格式化功能,交给专门插件插件处理
				client.server_capabilities.document_formatting = false
				client.server_capabilities.document_range_formatting = false

				vim.api.nvim_create_autocmd("CursorHold", {
					buffer = bufnr,
					callback = function()
						local opts = {
							focusable = false,
							close_events = { "BufLeave", "CursorMoved", "InsertEnter", "FocusLost" },
							border = "rounded",
							source = "always",
							prefix = " ",
							scope = "cursor",
						}
						vim.diagnostic.open_float(nil, opts)
					end,
				})
				-- local function buf_set_keymap(...)
				--   vim.api.nvim_buf_set_keymap(bufnr, ...)
				-- end
				-- local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end
				-- 绑定快捷键
				-- require("keybindings").mapLSP(buf_set_keymap)
			end,
		})
	end,
}