Baseline: Ludic compiler + toolchain, Phase 1 syntax fixes complete
Self-hosted compiler (selfhost/*.ludic), runtime, examples, editor tooling, and docs. Phase 1 of the syntax-redesign cohesion pass has landed: edge-system fix, signature-query, when-alias, and the documentation truth-pass. Suite green (14/14), C-free bootstrap fixpoint holds. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
commit
985f9ad8f2
418 changed files with 39065 additions and 0 deletions
54
tools/editors/vscode/README.md
Normal file
54
tools/editors/vscode/README.md
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
# Ludic for VS Code
|
||||
|
||||
Syntax highlighting, formatting, and full language-server support for **Ludic**,
|
||||
the AI-first, ECS-native game language. See `LANGUAGE.md` in the Ludic repository
|
||||
for the language reference.
|
||||
|
||||
## What you get
|
||||
|
||||
| | Source |
|
||||
|---|---|
|
||||
| Syntax highlighting | TextMate grammar, works with no build |
|
||||
| Semantic highlighting | `ludic-lsp` — real name resolution, so a component reads differently from a local |
|
||||
| Diagnostics | structural errors as you type; `ludicc`'s own errors on save |
|
||||
| Completion | context-aware: fields after `.`, components inside `query [...]`, phases after `phase`, widgets inside `ui` |
|
||||
| Hover | signatures and docs for builtins, intrinsics, and everything you declared |
|
||||
| Go to definition / references / rename | across every file in the compilation unit, following `import` |
|
||||
| Formatting | format-on-save, comment-preserving |
|
||||
| Outline, folding, inlay hints, signature help | |
|
||||
| ` ```ludic ` fences in Markdown | highlighted, checked, and formatted |
|
||||
|
||||
## Setup
|
||||
|
||||
Build the toolchain once, from the repository root:
|
||||
|
||||
```bash
|
||||
./tools/build-tools.sh
|
||||
```
|
||||
|
||||
That produces `build/ludic-lsp` and `build/ludic-fmt`, which the extension finds
|
||||
on its own. If you keep them elsewhere, set `ludic.server.path`.
|
||||
|
||||
Format on save:
|
||||
|
||||
```json
|
||||
"[ludic]": { "editor.formatOnSave": true }
|
||||
```
|
||||
|
||||
## Settings
|
||||
|
||||
- `ludic.server.path` — where `ludic-lsp` lives. Empty = search `build/`, then `PATH`.
|
||||
- `ludic.server.enabled` — turn the server off and keep only static highlighting.
|
||||
- `ludic.compilerPath` — where `ludicc` lives, for on-save diagnostics.
|
||||
- `ludic.compilerDiagnostics` — whether to run the compiler at all.
|
||||
- `ludic.indentSize` — spaces per level for the formatter.
|
||||
- `ludic.trace.server` — log LSP traffic (`Ludic: Show Language Server Log`).
|
||||
|
||||
## Installing without publishing
|
||||
|
||||
```bash
|
||||
cd tools/editors/vscode
|
||||
npm install
|
||||
npx @vscode/vsce package
|
||||
code --install-extension ludic-1.0.0.vsix
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue