gotlin/cmd/gotlin-lsp
2026-08-27 18:05:28 +02:00
..
main.go Use dot notation for enum variants 2026-08-27 18:05:28 +02:00
main_test.go Add structured coroutines and explicit error handling 2026-08-27 16:26:40 +02:00
README.md init 2026-03-05 14:55:09 +01:00

gotlin-lsp

Minimal stdio language server for .gt files.

Current support:

  • initialize
  • shutdown
  • exit
  • textDocument/didOpen
  • textDocument/didChange
  • textDocument/didClose
  • publish diagnostics from the existing Gotlin parser/code generator
  • textDocument/hover for packages, imports, and top-level functions
  • textDocument/definition for imported namespaces and top-level functions
  • simple semantic diagnostics for duplicate imports/functions and undefined names
  • optional fallback to gopls for hover/definition on Go-imported symbols

Build:

go build -o ./bin/gotlin-lsp ./cmd/gotlin-lsp

Use your editor's custom LSP configuration to launch:

./bin/gotlin-lsp

gopls bridge

If gopls is installed, gotlin-lsp will try to use it as a fallback for hover and definition on Go-imported symbols.

You can set an explicit path with:

GOTLIN_GOPLS_PATH=/absolute/path/to/gopls ./bin/gotlin-lsp