Skip to content

IoannisNezis/Qlue-ls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ¦€ 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
πŸ’» Live Demo

πŸš€ Capabilities

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

✨ 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
completion.mp4

πŸ“ Formatting

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

πŸ› οΈ Code Actions

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

ℹ️ Hover

  • View contextual information by hovering over tokens
hover.mp4

🩺 Diagnostics

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

πŸ•³ 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