Zed Turtle Extension
I have just released the first version of a Zed extension for the Turtle format. I hope it serve both the Zed and the Semantic Web communities.
I have just released the first version of a Zed extension for the Turtle format.
Zed?
Zed is a very cool text editor / IDE by the creators of Atom and Tree-Sitter. It is written in Rust and it caught my interest because it is very very lean, it has Vim, JetBrains, VSCode, Helix and Emacs keybindings and a growing extension system. It has multiple advantages (at least in my opinion) over the competition, and I feel it builds upon other IDEs’ strengths while being very pleasant to use. It has pair-programming and remote development baked-in from day one.
Most importantly, it is not owned by a multi-billionnaire-led, fascist-supporting company that will eventually sunset or paywall the product once the whole world is addicted to it. And yes, it features AI, MCP and agentic editing if that’s your thing, but that’s something you can turn off, which I did.
Zed is currently driving me away from Emacs (and that means something if you ask me). You really should give it a try. Stop reading and download it.
Turtle?
That’s the RDF file format I use extensively at work. It renders RDF graph triplets in a readable format, making it easier to manage than plain RDF/XML or JSON-LD other semantic web file formats.
This is an sample Turtle file:
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix ex: <http://example.org/stuff/1.0/> .
<http://www.w3.org/TR/rdf-syntax-grammar>
dc:title "RDF/XML Syntax Specification (Revised)" ;
ex:editor [
ex:fullname "Dave Beckett";
ex:homePage <http://purl.org/net/dajobe/>
] .
Extension?
So why a RDF extension?
As I was editing .ttl
files for work in Zed, I started looking for an extension to highlight my code and navigate through it, but didn’t find one. So I decided to create my own!
I looked at the Zed developer documentation, took a little inspiration from existing extensions and started writing my very first Rust lines of code – which was another motivation for starting that endeavor.
All I had to do is gather resources scattered here and there on the internet:
- A ready-made tree-sitter project for Turtle
- A language server available here
...and write a few lines of code to turn those into usable Zed features.
The features
Here is what the extension does for now:
- Code highlighting
- Symbol navigation
- LSP – the server is automatically downloaded when you edit your first Turtle document.
What I plan on adding in a near future is:
- Formatting
- SHACL validation
- A better LSP with go to definition / implementation (and maybe formatting as part of the LSP)

What you can do
I hope the plugin serves both the Zed and the Semantic Web communities.
If you are interested in this extension, do not hesitate to give it a try, report issues or add feature requests, or even give me a hand to improve it!