return { -- copilot { "zbirenbaum/copilot.lua", verylazy = true, cmd = "Copilot", build = ":Copilot auth", opts = { suggestion = { enabled = false }, panel = { enabled = false }, filetypes = { markdown = true, help = true, lua = true, bash = true, }, }, }, -- copilot cmp source { "nvim-cmp", dependencies = { { "zbirenbaum/copilot-cmp", verylazy = true, dependencies = "copilot.lua", opts = {}, config = function(_, opts) local copilot_cmp = require("copilot_cmp") copilot_cmp.setup(opts) require("utils.functions").on_attach(function(client) if client.name == "copilot" then copilot_cmp._on_insert_enter({}) end end) end, }, }, ---@param opts cmp.ConfigSchema opts = function(_, opts) local cmp = require("cmp") table.insert(opts, { sources = { name = "copilot", group_index = 2 } }) opts.sorting = { priority_weight = 2, comparators = { require("copilot_cmp.comparators").prioritize, cmp.config.compare.offset, cmp.config.compare.exact, cmp.config.compare.score, cmp.config.compare.kind, cmp.config.compare.sort_text, cmp.config.compare.length, cmp.config.compare.order, }, } end, }, }