LSP — Language Server Protocol
El LSP enriquece el índice PIL con información de los Language Servers del proyecto, elevando la confianza del grafo de ~0.85 a ~0.97.
Qué aporta el LSP:
- Símbolos que el parser de ixtli podría perder (decoradores complejos, macros, generics)
- Corrección del
kindde símbolos (class vs function vs method) - Líneas de definición más precisas
- Usos reales de un símbolo (vía
textDocument/references) enixtli index callers <symbol>— en vez de solo "qué archivo importa a quién", te dice exactamente qué línea llama a esa función. Sin LSP habilitado,callerssigue funcionando pero solo a nivel de archivo (grafo de imports).
Ver servidores disponibles
ixtli lsp status
Habilitar el enriquecimiento LSP
ixtli lsp enable
ixtli lsp enable python
ixtli lsp enable typescript
A partir de ahora, ixtli index update enriquecerá el PIL con LSP automáticamente.
Deshabilitar
ixtli lsp disable
Instalar un servidor LSP
ixtli no instala servidores LSP por ti, pero te dice cómo hacerlo:
ixtli lsp install python
Servidores LSP soportados
| Lenguaje | Servidor (prioridad) | Instalación |
|---|---|---|
| Python | pyright | npm install -g pyright |
| Python | pylsp | pip install python-lsp-server |
| Python | ruff-lsp | pip install ruff-lsp |
| TypeScript/JS | typescript-language-server | npm install -g typescript-language-server typescript |
| Go | gopls | go install golang.org/x/tools/gopls@latest |
| Rust | rust-analyzer | rustup component add rust-analyzer |
| Ruby | solargraph | gem install solargraph |
| Java/Kotlin | jdtls | brew install jdtls |
| PHP | intelephense | npm install -g intelephense |
| C# | omnisharp | dotnet tool install -g csharp-ls |
| Swift | sourcekit-lsp | Incluido con Xcode |