Skip to content

Repository files navigation

godot-scene-lsp

LSP mínimo y sin dependencias para Godot/GDScript, enfocado en trabajar con escenas, nodos y recursos sin abrir Godot.

Funciones

  • initialize / stdio JSON-RPC
  • sync de documentos abiertos
  • autocompletado de escenas .tscn del proyecto
  • autocompletado de rutas de nodos parseadas desde escenas: Player/Sprite, UI/Menu/Button, etc.
  • autocompletado de recursos res://...: scripts, escenas, texturas, audio y cualquier archivo del proyecto
  • completions: todas las clases documentadas en Godot latest, keywords, callbacks, símbolos del proyecto
  • document symbols: class_name, func, var, const, signal
  • definition/references por símbolo en .gd
  • hover básico
  • diagnostics simples: paréntesis desbalanceados y preload/load("res://...") faltantes

La idea central: que el editor pueda sugerir escenas, nodos, tipos Godot y recursos mientras escribes .gd o .tscn, evitando abrir Godot solo para buscar paths.

Uso

chmod +x godot_lsp.py
./godot_lsp.py --stdio

Instalar

make install
# instala ~/.local/bin/godot-scene-lsp

Neovim ejemplo

vim.lsp.start({
  name = 'godot-scene-lsp',
  cmd = { 'godot-scene-lsp', '--stdio' },
  root_dir = vim.fs.root(0, { 'project.godot', '.git' }),
})

API de Godot

El archivo godot_api.json se generó desde:

https://docs.godotengine.org/en/latest/classes/

Actualizarlo:

make update-api

Nota: latest puede incluir cosas aún no disponibles en la versión estable instalada.

Release local

make export
# genera dist/godot-scene-lsp-0.1.0.tar.gz

Tests

make check
make smoke

Skipped: semántica completa de GDScript; añadir cuando el soporte de escenas/nodos/recursos ya esté conectado al editor.

About

Scene-aware LSP for Godot/GDScript with .tscn node paths and res:// completions

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages