local lsp = require('lsp-zero').preset({}) lsp.on_attach(function(_, bufnr) lsp.default_keymaps({buffer = bufnr}) end) -- (Optional) Configure lua language server for neovim require('lspconfig').lua_ls.setup(lsp.nvim_lua_ls()) lsp.setup() local cmp = require('cmp') local cmp_action = require('lsp-zero').cmp_action() require('luasnip.loaders.from_vscode').lazy_load() cmp.setup({ sources = { {name = 'path'}, {name = 'nvim_lsp'}, {name = 'buffer', keyword_length = 3}, {name = 'luasnip', keyword_length = 2}, }, mapping = { -- `Enter` key to confirm completion [''] = cmp.mapping.confirm({select = false}), [''] = cmp_action.luasnip_supertab(), [''] = cmp_action.luasnip_shift_supertab(), } })