OxL Reference

JetBrains (LSP4IJ)

There is no native OxL plugin; JetBrains editors work with oxl lsp and oxl dap through the free plugin LSP4IJ (Red Hat), which also suits the Community editions.

1. Highlighting: a TextMate bundle#

The VS Code extension from the archive (share/oxl/vscode/oxl-lang-*.vsix) is a zip with a TextMate grammar. Unpack it and attach it:

sh
mkdir -p ~/oxl-textmate && cd ~/oxl-textmate && unzip /opt/oxl-1.0.0-beta/share/oxl/vscode/oxl-lang-*.vsix

Settings → Editor → TextMate Bundles → + and choose ~/oxl-textmate/extension. Files *.oxl get highlighting.

2. The language server#

Settings → Languages & Frameworks → Language Servers → + (New Language Server):

FieldValue
NameOxL
Commandoxl lsp (the full path if oxl is not in the PATH of the IDE)
Mappings → File name patterns*.oxl, language id oxl
Configuration → Initialization options (optional){ "debounceMs": 150 }

The working directory is the project root; a project with oxl.toml is analysed as a package. The Language Servers window shows the state and the log; the trace level is switched there too.

Available: diagnostics, hover, go to definition, references, rename, file structure, completion, signature help, formatting (Ctrl+Alt+L calls oxl lsp), quick fixes and inlay hints (Editor → Inlay Hints → Language Servers).

3. Debugging#

LSP4IJ supports DAP: Run → Edit Configurations → + → Debug Adapter Protocol:

FieldValue
Server → Commandoxl dap
Configuration → Launch{ "program": "$ProjectFileDir$", "cwd": "$ProjectFileDir$", "oxlProfile": "dev", "stopOnEntry": false }
Mappingsfiles *.oxl, for breakpoints

lldb-18 is needed (installation). See debugging.

4. External tools#

Settings → Tools → External Tools: oxl test and oxl run with $ProjectFileDir$ as the working directory; the output in the IDE console contains file:line:col references that the IDE makes clickable.

OxL 1.0.0-beta · Documentation version 1.0.0-beta© OxwaldLink · generated from the Standard, the std sources and the guides