A blazingly fast formatter and language server for SPARQL, written in Rust 🦀.
Fichu is availible on PyPi:
pipx install fichu
Or on crate.io:
cargo install fichu
You can also build it from source:
git clone https://github.com/IoannisNezis/sparql-language-server.git
cd sparql-language-server
cargo build --release
To run Fichu as formatter run:
fichu format <PATH>
To run Fichu as lanugage server run:
fichu server
This will create a language server listening on stdio.
Fichu can be configured through a fichu.toml
or fichu.yml
file.
Here is the full default configuration
[format]
align_predicates = false
align_prefixes = false
separate_prolouge = true
capitalize_keywords = true
insert_spaces = true
tab_size = 2
where_new_line = true
If you want to connect from a web-based-editor, you can use this package as well.
For this purpouse this can be compiled to wasm and is availible on npm:
npm i @ioannisnezis/sparql-language-server
You will have to wrap this in a Web Worker and provide a language server client. There will be more documentation on this in the future...
In the mean time, check out the demo.