Skip to content
/ zls Public
forked from zigtools/zls

Zig LSP implementation + Zig Language Server

License

Notifications You must be signed in to change notification settings

zigster64/zls

 
 

Repository files navigation

Zig Language Server

CI codecov License: MIT

Need support? Wanna help out? Join our Discord server!

The Zig Language Server (ZLS) is a tool that implements Microsoft's Language Server Protocol for Zig in Zig. In simpler terms: it'll provide you with completions, go-to definition, etc. when you write Zig code!

Installation

See the Installation Guide for editor and binary installation instructions.

From Source

Building ZLS is very easy. You will need a build of Zig master to build ZLS.

git clone https://github.com/zigtools/zls
cd zls
zig build -Doptimize=ReleaseSafe

Features

ZLS supports most language features, including simple type function support, using namespace, payload capture type resolution, custom packages, cImport and others. Support for comptime and semantic analysis is Work-in-Progress.

The following LSP features are supported:

  • Completions
  • Hover
  • Goto definition/declaration
  • Document symbols
  • Find references
  • Rename symbol
  • Formatting using zig fmt
  • Semantic token highlighting
  • Inlay hints
  • Code actions
  • Selection ranges
  • Folding regions

Related Projects

Quick Thanks :)

We'd like to take a second to thank all our awesome contributors and donators/backers/sponsors; if you have time or money to spare, consider partaking in either of these options - they help keep ZLS awesome for everyone!

OpenCollective Backers

About

Zig LSP implementation + Zig Language Server

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Zig 99.7%
  • Nix 0.3%