A SPARQL language server
Find a file
Ioannis Nezis 611ed14f2b
Some checks are pending
build-test-publish / 🏗️ build Rust 🦀 (push) Waiting to run
build-test-publish / 🔍 run tests (push) Blocked by required conditions
build-test-publish / 🏗️ build python 🐍 (push) Waiting to run
build-test-publish / 📦 Publish to crates.io (push) Blocked by required conditions
bumb version to 0.12.2
2025-06-18 13:36:44 +02:00
.cargo update getrandom to 0.3 2025-05-08 13:57:53 +02:00
.github/workflows Update actions/checkout action to v4 (#52) 2025-04-29 13:26:48 +02:00
crates/parser FIX: continuations algorihm and comments 2025-06-18 12:21:04 +02:00
docs ENH: add Lang-Filter code-action 2025-06-17 12:18:11 +02:00
editor demo: make action widget larger 2025-06-18 12:51:40 +02:00
extract_backends MAINT: make clippy happy 2025-05-24 23:13:22 +02:00
src ENH: new code-actions "add aggregate to result" 2025-06-18 13:35:23 +02:00
.gitignore Initial commit 2024-08-21 15:35:42 +02:00
.gitlab-ci.yml MAINT: add CI for docs 2025-06-09 23:15:15 +02:00
Cargo.lock bumb version to 0.12.2 2025-06-18 13:36:44 +02:00
Cargo.toml bumb version to 0.12.2 2025-06-18 13:36:44 +02:00
CHANGELOG.md bumb version to 0.12.2 2025-06-18 13:36:44 +02:00
justfile DEP: update to parser 0.12.2 2025-06-18 12:33:07 +02:00
LICENSE Initial commit 2024-08-21 15:25:24 +02:00
Makefile MAINT: just&make target to setup development 2025-05-26 17:23:01 +02:00
pyproject.toml META: rename crate to "qlue-ls" 2024-12-16 12:08:16 +01:00
README.md DOC: consmetic changes to README 2025-06-17 16:54:07 +02:00
renovate.json Add renovate.json (#29) 2025-04-27 21:52:36 +02:00

🦀 Qlue-ls 🦀

Qlue-ls (pronounced "clueless") is a blazingly fast language server for SPARQL,
written in Rust 🦀, build for the web.

📚 Documentation
📝 Project Blog Post

🚀 Capabilities

Qlue-ls offers a wide range of LSP features tailored to SPARQL development. For a complete overview, see the capabilities section.

📐 Formatting

  • Auto-formats SPARQL queries for consistency and readability
  • Fully customizable to match your preferred coding style

🩺 Diagnostics

  • Real-time feedback with severity levels: error, warning, and info
  • Helps catch syntax issues and common mistakes

Completion

  • Suggests valid continuations while typing SPARQL queries
  • Backend-powered suggestions for subjects, predicates, and objects
  • Note: Completion queries must be configured for each knowledge graph

🛠️ Code Actions

  • Provides smart quick-fixes for diagnostics
  • Offers suggested improvements and automated edits

Hover

  • View contextual information by hovering over tokens

🕳 Jump

  • Navigate quickly between key locations in a query

operation identification

  • Detects whether a SPARQL operation is a query or an update

⚙️ Configuration

Qlue-ls is configured via a qlue-ls.toml or qlue-ls.yml file.
Full configuration options are explained in the documentation.

Default Configuration

[format]
align_predicates = true
align_prefixes = true
separate_prologue = false
capitalize_keywords = true
insert_spaces = true
tab_size = 2
where_new_line = true
filter_same_line = true

[completion]
timeout_ms = 5000
result_size_limit = 100

[prefixes]
add_missing = true
remove_unused = false

🙏 Acknowledgements