Soufflé
Soufflé Datalog language support.
LanguagesLanguage servers
How to install
With Forge Super installed, the button above opens the app on this extension, where you press Install. Nothing is installed until you do.
You can also open the Extensions panel in the app and search for Soufflé. The extension's id is souffle.
Don't have Forge Super yet? Download it here.
README
From the extension's repository, written by its authors and not by Mentenaz. See the source.
Zed Soufflé
A Soufflé Datalog extension for Zed.
- Tree-sitter: tree-sitter-souffle
- LSP: souffle-lsp-plugin
Installation
Open zed: extensions and search for "Souffle".
Alternatively, to run it from source: clone the repo and use zed: install dev extension, pointing Zed at the repo directory.
Features
- Syntax highlighting that distinguishes relations, variables, and the wildcard
_. - Bracket matching and autoclose for
(),[],{}, and strings. - Syntax-aware indentation for record (
[]) and component ({}) blocks. - Outline / symbol navigation for
.decl,.type(all variants),.comp,.init, and.functor. - LSP features via the Soufflé language server: hover, go-to-definition, and diagnostics. Requires Java (see below); the server jar is downloaded automatically on first use.
Requirements
- A JDK (Java 11 or newer) on your
PATH, orJAVA_HOMEset. This is only required for LSP features, highlighting/outline/indent work without Java.
Configuration
You can override the auto-downloaded server with your own jar. The path must be absolute:
{
"lsp": {
"souffle-lsp": {
"settings": { "jar_path": "/absolute/path/to/server.jar" }
}
}
}