Skip to content
llogickPublic

About

A Zig Language Server

Topics

Resources

Stars

205 stars

Watchers

7 watching

Forks

Repository files navigation

Zigscient

A Zig Language Server

A drop-in alternative to ZLS

What's different:

  • Improved editing responsiveness for large documents

    • Uses an extended parser, that reuses tokens and nodes to process document changes faster
  • Improved syntax error handling

    • Uses an extended parser, that works around some common parser deficiencies due to syntax errors
  • Reworked Modules Collection and Lookup

    (This may look like a step back, but is needed for correct module resolution for modules created using meta-programming that have the same name)

  • Propagates error messages originating in currently not-open-in-editor documents based (0.16.x and earlier)

    on reference-trace, eg Writers' print(fmt, args)

    std.debug.print("{}", .{});      [!] too few arguments
    std.debug.print("", .{1});       [!] unused argument in ''
    std.debug.print("{s}", .{1});    [!] invalid format string ..
    [!] indicates that the error did not originate in the current document/file
    
  • Integrated Incremental Compilation [Experimental] (0.17 +)

    Performs an incremental compilation update on every document change.

    Does not require saving the document -- uses the in-memory document's data.

    Basic but important info

    Zig's incremental compilation is still not fully robust,
    if you find the experience less than optimal set disable_compilations to true

Building

ZIG_DEBUG_CMD=1 ZIG_LIB_DIR=./lib zig build -Doptimize=ReleaseFast

Note

Remember to rename the executable or update your editor's configuration



Disclaimer

This repository contains an independent derivative work that is not affiliated with or endorsed by The Zig Software Foundation.

  • Support & Maintenance: All technical support, bug tracking, and maintenance are handled exclusively within this repository. Please file all issues here and do not submit bugs or requests upstream.
  • Contributor Attribution: Any attribution of upstream developers in the contributor history or commit log is an artifact of git commit migration. It does not imply their active involvement, endorsement, or support of this specific derivative work.

About

A Zig Language Server

Topics

Resources

Stars

205 stars

Watchers

7 watching

Forks

Releases

Used by

Contributors

Languages