- README documents install-from-disk and what actually works today - jaitest prints the recovery steps when a poisoned build cache makes :test report NO-SOURCE, and AGENTS.md records the failure mode
1.9 KiB
Jai plugin for IntelliJ IDEA
Support for the Jai programming language.
Everything here is derived from the local Jai distribution at ~/.local/jai,
never from online material (see AGENTS.md).
What works today
.jaifile type with its own icon- Syntax highlighting: keywords, built-in type names, compiler directives
(
#import,#run, …), notes (@Cleanup), numbers (hex / binary / hexfloat /_separators), strings, here-strings (#string DONE … DONE), nesting block comments, operators,---,$/$$,it/it_index - Colour settings page (Settings → Editor → Color Scheme → Jai)
- Comment / uncomment (
//and nesting/* */) - Brace matching, including the Jai-only
.{struct-literal and.[array-literal openers
Not yet: parser and PSI, so no structure view, go-to-definition, completion,
formatting, or inspections. See docs/BUILD_PLAN.md for the phase plan.
Install it locally
./jaigradle buildPlugin
# -> build/distributions/intellijai-1.0.0-SNAPSHOT.zip
In the IDE: Settings → Plugins → ⚙ → Install Plugin from Disk…, pick that ZIP, restart when prompted. Requires build 253 (2025.3) or newer; verified compatible with IU-253, IU-261 and IU-262 by the JetBrains Plugin Verifier.
To try it, open any file from ~/.local/jai/how_to/.
Uninstall or update the same way — installing a new ZIP over the old one replaces it.
Develop
./jaigradle test # or ./jaitest, which reports the JUnit XML
./jaigradle check # full verification
Never call ./gradlew directly: there is no JDK on PATH, and ./jaigradle
resolves one via mise first. Read AGENTS.md before changing anything.
Key docs:
| File | What it is |
|---|---|
AGENTS.md |
how to work in this repo; current state |
docs/JAI_LANGUAGE_REFERENCE.md |
the language, transcribed from the compiler |
docs/BUILD_PLAN.md |
phased plan and testing strategy |