Editor Tooling

Donna editor support has two parts.

Tree-sitter handles syntax highlighting. The Donna grammar gives editors a structural view of .donna files, so keywords, functions, types, comments, and strings can be highlighted without relying on fragile regular expressions.

The Donna language server handles compiler-powered features:

code
donna lsp

Editors should start that command over stdio. The server currently provides diagnostics, hover, go-to-definition, document symbols, workspace symbols, completions, and code actions.

The language server uses the latest open editor buffer for completions and symbols, so unsaved imports and local edits are visible to editor features. Diagnostics still run through donna check, so saving a file is the normal way to refresh project errors and warnings.

Donna's Zed extension uses the Tree-sitter grammar for highlighting and starts donna lsp for language-server features.