aboutsummaryrefslogtreecommitdiffstats
path: root/lua/config/copilot.lua
diff options
context:
space:
mode:
authorElvis Claros Castro <elvis@claros.ar>2026-04-23 23:15:45 -0300
committerElvis Claros Castro <elvis@claros.ar>2026-04-23 23:15:45 -0300
commit2895ac732dce0eece5ab2586f5d4d76ee0fab710 (patch)
tree16735209162d1b3e3118de8cea23e8541d087ba9 /lua/config/copilot.lua
parent7a32abb7c07c320cdeae19897d9daaea48acb1bb (diff)
downloadnvim-conf-2895ac732dce0eece5ab2586f5d4d76ee0fab710.tar.gz
nvim-conf-2895ac732dce0eece5ab2586f5d4d76ee0fab710.zip
feat(neovim): integrar CodeCompanion/MCPHub, añadir autocompletado AI y actualizar plugins
- Añadir integración completa de CodeCompanion (mcphub, adaptadores, UI, herramientas, historial, paleta de acciones) - Configuración de build/portado de `mcphub` y opciones de tiempo de ejecución - Configurar adaptadores, herramientas por defecto y múltiples adaptadores para `chat`/`inline`/`cmd` - Añadir autocomandos de CodeCompanion para mostrar/ocultar el spinner - Añadir keymaps relacionados con CodeCompanion - Añadir proveedor de autocompletado AI `minuet-ai` y cambiar la fuente de completado por defecto a `minuet` - Eliminar el archivo de configuración antiguo de Copilot y varios archivos de configuración de plugins obsoletos (`lua/config/copilot.lua`, `lua/plugins/foatterm.lua`, `lua/plugins/img-clip.lua`, `lua/plugins/markdown-preview.lua`, `lua/plugins/markview.lua`) - Actualizar muchos pines de plugins en `lazy-lock.json` (bump/reemplazo de commits) - Comentar los `autocmd` de trim de espacios en blanco y `clang-format` (deshabilita comportamiento de autoformateo/auto-guardar) - Establecer opciones globales: - desactivar el autoformateo global de LazyVim: `vim.g.autoformat = false` - evitar que `:w` agregue automáticamente un salto de línea final: `opt.fixeol = false` - Ajustes de UI: - agregar resaltados `FloatBorder`/`FloatTitle` y hacer `PmenuSel` en negrita - Añadir keymap específico para Rust: sobrescribir `K` para invocar las acciones de hover de `rustaceanvim` - Actualizar/limpiar muchas configuraciones de plugins: - reescritura amplia de `lua/plugins/codecompanion.lua` - añadir/modificar opciones de `lua/plugins/image.lua` (`image.nvim`) - ajustar UI, pickers y keymaps de `lua/plugins/snacks.lua` - actualizar versión de `rustaceanvim` y desactivar `format_on_save` en `navigator` - varias correcciones de formato y consistencia en archivos de plugins - Actualizar `lua/config/keymaps.lua` para incluir bindings de CodeCompanion Notas: - Estos cambios modifican el comportamiento de formateo/autoformateo (autoformateo desactivado y algunos `autocmd` `BufWritePre` comentados). Revisa si quieres reactivar el formateo automático al guardar.
Diffstat (limited to 'lua/config/copilot.lua')
-rw-r--r--lua/config/copilot.lua92
1 files changed, 0 insertions, 92 deletions
diff --git a/lua/config/copilot.lua b/lua/config/copilot.lua
deleted file mode 100644
index 9b9b6fc..0000000
--- a/lua/config/copilot.lua
+++ /dev/null
@@ -1,92 +0,0 @@
-local utils = require('config.utils')
-local icons = require('config.icons')
-utils.desc('<leader>a', 'AI')
-
--- Copilot autosuggestions
-vim.g.copilot_no_tab_map = true
-vim.g.copilot_hide_during_completion = 0
-vim.g.copilot_proxy_strict_ssl = 0
-vim.keymap.set('i', '<S-Tab>', 'copilot#Accept("\\<S-Tab>")', { expr = true, replace_keycodes = false })
-
--- Copilot chat
-local chat = require('CopilotChat')
-local actions = require('CopilotChat.actions')
-local select = require('CopilotChat.select')
-local integration = require('CopilotChat.integrations.fzflua')
-
-chat.setup({
- model = 'claude-3.5-sonnet',
- question_header = ' ' .. icons.ui.User .. ' ',
- answer_header = ' ' .. icons.ui.Bot .. ' ',
- error_header = '> ' .. icons.diagnostics.Warn .. ' ',
- selection = select.visual,
- mappings = {
- reset = {
- normal = '',
- insert = '',
- },
- },
- prompts = {
- Yarrr = {
- system_prompt = 'You are fascinated by pirates, so please respond in pirate speak.',
- },
- Explain = {
- mapping = '<leader>ae',
- description = 'AI Explain',
- },
- Review = {
- mapping = '<leader>ar',
- description = 'AI Review',
- },
- Tests = {
- mapping = '<leader>at',
- description = 'AI Tests',
- },
- Fix = {
- mapping = '<leader>af',
- description = 'AI Fix',
- },
- Optimize = {
- mapping = '<leader>ao',
- description = 'AI Optimize',
- },
- Docs = {
- mapping = '<leader>ad',
- description = 'AI Documentation',
- },
- Commit = {
- mapping = '<leader>ac',
- description = 'AI Generate Commit',
- },
- },
-})
-
-utils.au('BufEnter', {
- pattern = 'copilot-*',
- callback = function()
- vim.opt_local.relativenumber = false
- vim.opt_local.number = false
- end,
-})
-
-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', 'v' }, '<leader>ap', function()
- integration.pick(actions.prompt_actions(), {
- fzf_tmux_opts = {
- ['-d'] = '45%',
- },
- })
-end, { desc = 'AI Prompts' })
-vim.keymap.set({ 'n', 'v' }, '<leader>aq', function()
- vim.ui.input({
- prompt = 'AI Question> ',
- }, function(input)
- if input and input ~= '' then
- chat.ask(input)
- end
- end)
-end, { desc = 'AI Question' })