mirror of
https://github.com/LazyVim/LazyVim.git
synced 2026-07-25 14:01:06 +00:00
feat(ai): add codecompanion.nvim as alternative to copilotchat.nvim
This commit is contained in:
parent
3dbace941e
commit
554a304e51
1 changed files with 47 additions and 0 deletions
47
lua/lazyvim/plugins/extras/coding/codecompanion.lua
Normal file
47
lua/lazyvim/plugins/extras/coding/codecompanion.lua
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
return {
|
||||
{
|
||||
"olimorris/codecompanion.nvim",
|
||||
cmd = { "CodeCompanion", "CodeCompanionActions", "CodeCompanionToggle", "CodeCompanionAdd", "CodeCompanionChat" },
|
||||
|
||||
opts = function()
|
||||
local options = require("codecompanion.config")
|
||||
local user = vim.env.USER or "User"
|
||||
|
||||
options.strategies.chat.roles = {
|
||||
llm = " CodeCompanion",
|
||||
user = " " .. user:sub(1, 1):upper() .. user:sub(2),
|
||||
}
|
||||
|
||||
options.strategies.chat.keymaps.close.modes = {
|
||||
n = "q",
|
||||
i = "<C-c>",
|
||||
}
|
||||
options.strategies.chat.keymaps.stop.modes.n = "<C-c>"
|
||||
options.strategies.chat.keymaps.send.modes.n = "gS"
|
||||
|
||||
return options
|
||||
end,
|
||||
|
||||
keys = {
|
||||
{ "<leader>a", "", desc = "+ai", mode = { "n", "v" } },
|
||||
{ "<leader>aA", "<cmd>CodeCompanionActions<cr>", mode = { "n", "v" }, desc = "Prompt Actions (CodeCompanion)" },
|
||||
{ "<leader>aa", "<cmd>CodeCompanionToggle<cr>", mode = { "n", "v" }, desc = "Toggle (CodeCompanion)" },
|
||||
{ "<leader>ac", "<cmd>CodeCompanionAdd<cr>", mode = "v", desc = "Add code to CodeCompanion" },
|
||||
{ "<leader>ap", "<cmd>CodeCompanion<cr>", mode = "n", desc = "Inline prompt (CodeCompanion)" },
|
||||
},
|
||||
},
|
||||
|
||||
-- Edgy integration
|
||||
{
|
||||
"folke/edgy.nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
opts.right = opts.right or {}
|
||||
table.insert(opts.right, {
|
||||
ft = "codecompanion",
|
||||
title = "CodeCompanion Chat",
|
||||
size = { width = 50 },
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue