diff options
| author | Elvis Claros Castro <elvis@claros.ar> | 2025-08-30 19:21:25 -0300 |
|---|---|---|
| committer | Elvis Claros Castro <elvis@claros.ar> | 2025-08-30 19:21:25 -0300 |
| commit | ec011dd9c8d4372f4f8566b87981ecc178675adf (patch) | |
| tree | 671b6be58f94528f790f05422bc75a1c3f988172 /lua/pi/lsp/mason.lua | |
| parent | bcb5775dabf2b9144d8a87721d0095d087827f3e (diff) | |
| download | nvim-conf-ec011dd9c8d4372f4f8566b87981ecc178675adf.tar.gz nvim-conf-ec011dd9c8d4372f4f8566b87981ecc178675adf.zip | |
feat(lsp): migración a configuración nativa de LSP en Neovim y mejora de servidores
- Refactoriza la configuración de LSP para usar vim.lsp.start/autocmd nativo, eliminando la dependencia de lspconfig en la mayoría de los servidores.
- Añade funciones auxiliares para detección de directorio raíz y configuración de comandos de servidores.
- Asegura que todos los servidores LSP tengan filetypes y capabilities explícitos para mejor integración.
- Actualiza dependencias de plugins y eventos para soportar el nuevo flujo nativo de LSP.
- Mejora el soporte de inlay hints y agrega un mapeo de teclas para alternar inlay hints.
- Reemplaza el uso de lspconfig.util por vim.fs.find nativo para detección de raíz.
- Marca la integración legacy de mason como obsoleta, favoreciendo la verificación nativa de ejecutables.
- Limpia y estandariza los archivos de configuración de servidores para mayor consistencia.
- Elimina el archivo no utilizado MIGRACION_BLINK.md.
Esta migración permite mejor compatibilidad con Neovim 0.11+, simplifica la gestión de LSP y mejora el rendimiento y la fiabilidad.
Diffstat (limited to 'lua/pi/lsp/mason.lua')
| -rw-r--r-- | lua/pi/lsp/mason.lua | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lua/pi/lsp/mason.lua b/lua/pi/lsp/mason.lua index 91d0c2b..6c959a6 100644 --- a/lua/pi/lsp/mason.lua +++ b/lua/pi/lsp/mason.lua @@ -1,11 +1,21 @@ local mason_lspconfig = require "mason-lspconfig" local servers = require "pi.lsp.servers" -local lspconfig = require "lspconfig" + +-- Note: This file is deprecated in favor of native LSP configuration +-- Keeping for reference/compatibility local mason_servers = {} +-- Since we're using native LSP, we'll check for executables differently +local server_commands = { + lua_ls = "lua-language-server", + gopls = "gopls", + ts_ls = "typescript-language-server", + -- Add other servers as needed +} + for server, _ in pairs(servers) do - local cmd = lspconfig[server].cmd[1] + local cmd = server_commands[server] or server if vim.fn.executable(cmd) == 0 then table.insert(mason_servers, server) end |