improved completion

This commit is contained in:
hgranthorner
2026-08-05 16:32:40 -04:00
parent ede8522716
commit 98e25c5468
10 changed files with 832 additions and 139 deletions

View File

@@ -61,7 +61,7 @@ Last verified state (all green, `./jaigradle check` and `verifyPlugin` too):
```text
dev.hgh.HarnessSmokeTest tests=2
dev.hgh.jai.JaiFileTypeTest tests=4
dev.hgh.jai.completion.JaiCompletionTest tests=6
dev.hgh.jai.completion.JaiCompletionTest tests=19
dev.hgh.jai.editor.JaiEditorSupportTest tests=7
dev.hgh.jai.editor.JaiFoldingBuilderTest tests=3
dev.hgh.jai.findusages.JaiFindUsagesTest tests=2
@@ -76,8 +76,8 @@ dev.hgh.jai.refactoring.JaiRenameTest tests=3
dev.hgh.jai.reference.JaiReferenceTest tests=9
dev.hgh.jai.structure.JaiStructureViewTest tests=3
dev.hgh.jai.settings.JaiProjectSettingsTest tests=3
dev.hgh.jai.settings.JaiConfiguredRootTest tests=4
-> total 78, failures+errors 0
dev.hgh.jai.settings.JaiConfiguredRootTest tests=6
-> total 93, failures+errors 0
```
The corpus gates report what they actually did; check both lines are still there:
@@ -120,10 +120,10 @@ Tier 3: parsed 714 files, 714 clean (100.0%), 0 with errors, 0 PsiErrorElements
`#import`/`#load` path references with standard go-to-definition resolution.
Headless tests cover source-ordered declarations, nested structure members,
folding ranges, local `#load`, and Jai module directories.
- **Phase 5** — basic completion for keywords, directives, and module/file
paths; same-file and imported symbol navigation; rename; and find-usages for
declaration names. Symbol-aware identifier/member completion remains future
work.
- **Phase 5** — completion for keywords, directives, module/file paths, visible
same-file or imported declarations, procedure parameters, and module aliases;
same-file and imported symbol navigation; rename; and find-usages for
declaration names. Struct-field completion remains future work.
- **Phase 5a** — persistent project settings for Jai module/import roots,
shared root-aware resolution and completion, and indexed external Jai library
sources. Headless tests cover state round-tripping, the Settings panel,
@@ -190,11 +190,10 @@ Tier 3: parsed 714 files, 714 clean (100.0%), 0 with errors, 0 PsiErrorElements
### Known code-insight gaps
- Completion currently offers keywords, compiler directives, and module/file
paths, but not declarations, imported symbols, parameters, struct fields, or
module-qualified members.
- Module-qualified members, procedure parameters, and struct fields also do
not yet have symbol resolution.
- Completion currently offers keywords, compiler directives, module/file paths,
visible same-file or imported declarations, procedure parameters, and members
of imported aliases, but not struct fields.
- Struct fields do not yet have symbol resolution or completion.
### In progress — pick up here