local cmp = require'cmp' local avante = require("avante") cmp.setup({ mapping = { [''] = cmp.mapping.complete(), -- trigger manually [''] = cmp.mapping.confirm({ select = true }), -- confirm with Enter [''] = cmp.mapping.select_next_item(), [''] = cmp.mapping.select_prev_item(), }, sources = { { name = 'nvim_lsp' }, { name = 'buffer' }, { name = 'path' }, }, vim.api.nvim_create_autocmd("LspAttach", { callback = function(args) local buf = args.buf local opts = { buffer = buf } vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts) vim.keymap.set("n", "gr", vim.lsp.buf.references, opts) vim.keymap.set("n", "K", vim.lsp.buf.hover, opts) vim.keymap.set("n", "rn", vim.lsp.buf.rename, opts) vim.keymap.set("n", "ca", vim.lsp.buf.code_action, opts) vim.keymap.set("n", "f", function() vim.lsp.buf.format({ async = true }) end, opts) vim.keymap.set("n", "", ":m .+1==") vim.keymap.set("n", "", ":m .-2==") end }) }) avante.setup({ provider = "ollama", providers = { ollama = { endpoint = "http://127.0.0.1:11434", model = "gpt-oss:20b", extra_request_body = { temperature = 0, num_ctx = 8192, }, }, }, })