nvim/lua/custom/plugins/copilot-chat.lua
Jeremie Fraeys 02e26b00b7
Some checks are pending
Check Lua Formatting in MyRepo / Stylua Check (push) Waiting to run
chore(nvim): reinitialize with working config
2026-02-07 21:06:45 -05:00

43 lines
1.9 KiB
Lua

-- Copilot Chat (UI + prompts for Copilot)
return {
'CopilotC-Nvim/CopilotChat.nvim',
cmd = {
'CopilotChat',
'CopilotChatClose',
'CopilotChatExplain',
'CopilotChatReview',
'CopilotChatTests',
'CopilotChatRefactor',
'CopilotChatOptimize',
'CopilotChatDocs',
'CopilotChatToggle',
},
keys = {
{ '<leader>C', '<cmd>CopilotChat<cr>', desc = 'Open CopilotChat' },
{ '<leader>Cq', '<cmd>CopilotChatClose<cr>', desc = 'Close CopilotChat' },
{ '<leader>Ce', '<cmd>CopilotChatExplain<cr>', desc = 'Explain code', mode = { 'n', 'v' } },
{ '<leader>Cr', '<cmd>CopilotChatReview<cr>', desc = 'Review code', mode = { 'n', 'v' } },
{ '<leader>Ct', '<cmd>CopilotChatTests<cr>', desc = 'Generate tests', mode = { 'n', 'v' } },
{ '<leader>Cf', '<cmd>CopilotChatRefactor<cr>', desc = 'Refactor code', mode = { 'n', 'v' } },
{ '<leader>Co', '<cmd>CopilotChatOptimize<cr>', desc = 'Optimize code', mode = { 'n', 'v' } },
{ '<leader>Cd', '<cmd>CopilotChatDocs<cr>', desc = 'Generate docs', mode = { 'n', 'v' } },
{ '<leader>Cp', '<cmd>CopilotChatToggle<cr>', desc = 'Toggle CopilotChat' },
},
build = 'make tiktoken',
opts = {
debug = false,
show_help = true,
prompts = {
Explain = 'Please explain how the following code works.',
Review = 'Please review the following code and provide suggestions for improvement.',
Tests = 'Please explain how the selected code works, then generate unit tests for it.',
Refactor = 'Please refactor the following code to improve its clarity and readability.',
Optimize = 'Please optimize the following code for efficiency and performance.',
Docs = 'Please generate documentation for the following code.',
},
},
dependencies = {
'nvim-lua/plenary.nvim',
'zbirenbaum/copilot.lua', -- make sure copilot is available
},
}