feat(plugins): add Copilot and CopilotChat configurations

This commit introduces configurations for GitHub Copilot and Copilot Chat plugins in the Neovim setup. It includes the setup of keybindings for toggling Copilot and various chat functionalities, enhancing the development experience through AI-assisted programming features.
pull/1638/head
OdysseusOperator 4 months ago
parent 3e168bd0d8
commit 9b7605db11

@ -144,4 +144,41 @@ return {
vim.cmd.colorscheme 'gruvbox-material'
end,
},
{
'github/copilot.vim',
config = function()
vim.cmd [[Copilot disable]]
-- Keybinding to toggle Copilot
vim.keymap.set('n', '<leader>cp', function()
vim.cmd [[Copilot toggle]]
end, { noremap = true, silent = true, desc = 'Toggle Copilot' })
end,
},
{
'CopilotC-Nvim/CopilotChat.nvim',
dependencies = {
{ 'github/copilot.vim' }, -- or zbirenbaum/copilot.lua
{ 'nvim-lua/plenary.nvim', branch = 'master' }, -- for curl, log and async functions
},
build = 'make tiktoken', -- Only on MacOS or Linux
opts = {
-- See Configuration section for options
},
config = function()
local chat = require 'CopilotChat'
chat.setup()
vim.keymap.set({ 'n' }, '<leader>aa', chat.toggle, { desc = 'AI Toggle' })
vim.keymap.set({ 'v' }, '<leader>aa', chat.open, { desc = 'AI Open' })
vim.keymap.set({ 'n' }, '<leader>ax', chat.reset, { desc = 'AI Reset' })
vim.keymap.set({ 'n' }, '<leader>as', chat.stop, { desc = 'AI Stop' })
vim.keymap.set({ 'n' }, '<leader>am', chat.select_model, { desc = 'AI Model' })
vim.keymap.set('n', '<leader>ar', ':CopilotChatFix<CR>', { desc = 'AI Fix' })
vim.keymap.set('n', '<leader>at', ':CopilotChatTests<CR>', { desc = 'AI Tests' })
vim.keymap.set('n', '<leader>ad', ':CopilotChatDocs<CR>', { desc = 'AI Docs' })
vim.keymap.set('n', '<leader>ar', ':CopilotChatReview<CR>', { desc = 'AI Review' })
end,
-- See Commands section for default commands if you want to lazy load on them
},
} -- end of return

Loading…
Cancel
Save