Previously external-ns? only included clojure.* and java.* namespaces,
missing project dependencies like tui.events. This prevented cross-repo
go-to-definition from working.
Changes:
- external-ns? now considers any non-internal namespace as external
- collect-external-symbols creates symbol entries even without runtime docs
- This enables hover and go-to-definition for dependency symbols
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
When a namespace uses :refer to import specific vars (e.g.,
[tui.events :refer [key=]]), clojure-lsp only populates the :to
field on the :refer declaration entry, not on subsequent usages.
This fix:
- Builds a refer-map from entries with :refer true
- Looks up the target namespace for usages missing :to
- Properly links usages like (key= event \q) to their definition
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add signature and arglists to local var documentation
- Resolve arglists at runtime since clojure-lsp doesn't provide them
- Add GitHub Actions workflow for SCIP indexing on push
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Features:
- Generate SCIP index from clojure-lsp dump
- Namespace definitions and usages
- Var definitions and usages
- Namespace alias definitions and usage references
- External symbol documentation for hover
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>