5,316
stars
+0+1+91
467
forks
36
watchers
1,543
prs
1,097
issues
13
releases
–
discussions
README
ZLS is a non-official implementation of the Language Server Protocol for Zig in Zig. It provides developers with IDE features in their editor. Installation The complete installation guide is available on the Zigtools website. It covers editor setup, prebuilt binaries and additional documentation. Build From Source The default branch of ZLS targets Zig master. bash git clone https://github.com/zigtools/zls cd zls zig build -Doptimize=ReleaseSafe When upgrading Zig, make sure to update ZLS too keep them in sync. Features ZLS supports most language features, including simple type function support, payload capture type resolution, custom packages, and others. Support for comptime and semantic analysis is Work-in-Progress. The majority of LSP features are supported: - Completions - Hover - Diagnostics and opt-in build-on-save - Go to definition/declaration - Workspace symbols and document symbols - Find references and rename symbol - Formatting based on zig fmt - Semantic tokens highlighting - Inlay hints - Code actions Contributing Please see the contributing guide if you're interested in joining all our awesome contributors that keep ZLS alive and growing! Sponsor You can support ZLS's development by donating through Open Collective (or GitHub Sponsors). Thank you too all our donators/backers/sponsors who help to keep ZLS awesome for everyone!