-- LSP configuration local lspconfig = require('lspconfig') lspconfig.clangd.setup{filetypes = { "c", "cpp", "objc", "objcpp", "ch" }} lspconfig.gopls.setup{} lspconfig.pylsp.setup{} lspconfig.rls.setup{} lspconfig.quick_lint_js.setup{} require('lspfuzzy').setup{} local lsp_icons = { Class = " ", Color = " ", Constant = " ", Constructor = " ", Enum = " ", EnumMember = " ", Field = "󰄶 ", File = " ", Folder = " ", Function = "ƒ ", Interface = "󰜰", Keyword = "󰌆 ", Method = "∫ ", Module = "󰏗 ", Property = " ", Snippet = "󰘍 ", Struct = " ", Text = " ", Unit = " ", Value = "󰎠 ", Variable = " ", } function lsp_icons_setup() local kinds = vim.lsp.protocol.CompletionItemKind for i, kind in ipairs(kinds) do kinds[i] = lsp_icons[kind] or kind end end lsp_icons_setup() vim.fn.sign_define('DiagnosticSignError', { text = '', texthl = 'DiagnosticSignError' }) vim.fn.sign_define('DiagnosticSignWarn', { text = '', texthl = 'DiagnosticSignWarn' }) vim.fn.sign_define('DiagnosticSignInfo', { text = '', texthl = 'DiagnosticSignInfo' }) vim.fn.sign_define('DiagnosticSignHint', { text = '', texthl = 'DiagnosticSignHint' })