89 lines
2.0 KiB
Lua
89 lines
2.0 KiB
Lua
return {
|
|
"yetone/avante.nvim",
|
|
event = "VeryLazy",
|
|
version = false,
|
|
opts = {
|
|
provider = "copilot", -- work is paying for this so it's free for me
|
|
providers = {
|
|
copilot = {
|
|
model = "claude-sonnet-4",
|
|
},
|
|
},
|
|
file_selector = {
|
|
provider = "snacks", -- Avoid native provider issues
|
|
provider_opts = {},
|
|
},
|
|
},
|
|
keys = {
|
|
{
|
|
"<leader>aA",
|
|
function()
|
|
require("avante.api").ask()
|
|
end,
|
|
desc = "avante: ask",
|
|
mode = { "n", "v" },
|
|
},
|
|
{
|
|
"<leader>ar",
|
|
function()
|
|
require("avante.api").refresh()
|
|
end,
|
|
desc = "avante: refresh",
|
|
},
|
|
{
|
|
"<leader>ae",
|
|
function()
|
|
require("avante.api").edit()
|
|
end,
|
|
desc = "avante: edit",
|
|
mode = "v",
|
|
},
|
|
},
|
|
build = "make",
|
|
dependencies = {
|
|
"nvim-treesitter/nvim-treesitter",
|
|
"stevearc/dressing.nvim",
|
|
"nvim-lua/plenary.nvim",
|
|
"MunifTanjim/nui.nvim",
|
|
--- The below dependencies are optional,
|
|
"nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
|
|
"zbirenbaum/copilot.lua", -- for providers='copilot'
|
|
{
|
|
-- support for image pasting
|
|
"HakonHarnes/img-clip.nvim",
|
|
event = "VeryLazy",
|
|
opts = {
|
|
-- recommended settings
|
|
default = {
|
|
embed_image_as_base64 = false,
|
|
prompt_for_file_name = false,
|
|
drag_and_drop = {
|
|
insert_mode = true,
|
|
},
|
|
-- required for Windows users
|
|
use_absolute_path = true,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"MeanderingProgrammer/render-markdown.nvim",
|
|
optional = true,
|
|
ft = function(_, ft)
|
|
vim.list_extend(ft, { "Avante" })
|
|
end,
|
|
opts = function(_, opts)
|
|
opts.file_types = vim.list_extend(opts.file_types or {}, { "Avante" })
|
|
end,
|
|
},
|
|
{
|
|
"folke/which-key.nvim",
|
|
optional = true,
|
|
opts = {
|
|
spec = {
|
|
{ "<leader>a", group = "ai" },
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|