zls
zig.vim
Our great sponsors
zls | zig.vim | |
---|---|---|
14 | 6 | |
2,337 | 399 | |
5.0% | 2.8% | |
9.8 | 5.0 | |
3 days ago | 4 months ago | |
Zig | Vim Script | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
zls
-
Have questions/requests/issues related to the Zig Language Server?
There is no official documentation but the standard library provides definitions for the exchange format and an incomplete set of function for exchanging messages in Client.zig and Server.zig. You can find examples of the zig compile server in action in my PR for ZLS and a showcase of hot-code-swapping by kubkon. The code that implements the ZCS in the zig codebase can be found here.
-
Allow download in build flake's build phase.
For the people who come in the future and want to know how to do it, here is the code as of today (at some point it will be in ZLS repository - github.com/zigtools/zls - and you should take a look there too to see more up-to-date code).
- Zig is now self–hosted by default
- Ask HN: What tool would you buy to make your life easier?
-
Failing to Learn Zig via Advent of Code
> Building is slow. It takes about ~3 seconds minimum which is frustratingly slow when I'm fighting basic syntax errors. I wish there was a fast zig check.
> Lack of zig-analyzer makes learning hard.
> zig fmt src/main.zig is nice. Wish it automatically ran on all files.
I also did (well, "am doing", can only work a bit each day and am plugging through day 7 right now) AdventOfCode in Zig this year.
These points here didn't resonate with me at all. I wonder if the author knew about or tried ZLS[0]. I had it on and integrated with my VSCode and it would check a lot of things as I went and format on save. I think I followed something like this[1] to set it up.
-
How in the world do you set up nvim-cmp?
cd $HOME/.local/zls && curl -L https://github.com/zigtools/zls/releases/download/0.9.0/x86_64-macos.tar.xz | tar -xJ --strip-components=1 -C .
-
Is there a zig plugin for neovim?
There is zig-vim, language server and support in nvim-treesitter
-
Setup Zig for Gamedev
ZLS provides Visual Studio Code (or any other editor with LSP support) with features such as completions, goto definition, find references, rename symbol and format code. If you have git installed recursively clone the repository else you can download and extract an archive of the source from here: https://github.com/zigtools/zls/archive/master.zip. Also download and extract https://github.com/ziglibs/known-folders/archive/master.zip and https://github.com/ziglibs/zinput/archive/master.zip and extract them to the zls/src directory. Use your terminal (cmd.exe) to change into the zls directory and run zig build. If that was successful a zls.exe should exist in zig-cache/bin.
-
Rant: Neovim is less productive than VS Code
As a challenge, I wanted to get Zig working with my config. I timed myself from the first tab opening, to the point I was able to edit Zig files with syntax working and the LSP setup. This took me 30 minutes. Most of that time was spent trying to compile zls because of a current incompatibility with the latest Zig master release. The time I spent learning how to configure properly my editor is time that I will never spend trying to figure out how another program works, trying to memorize hundreds of different nonsensical, arbitrary keybinds, trying to figure out how the workflow of an editor Unfortunately, I don't think Neovim (especially the nightly features) is mature enough for a "distribution" like SpaceVim to really work. We're getting there, but I'd say it's worth waiting for the official 0.5 release.
zig.vim
-
How to configure vim like an IDE
I'm not a fan of debuggers and whatnot, so I don't have anything for that, but I use zig.vim for Zig/C/C++/Obj. C/anything else integration like highlighting. Additionally, vim-scripts/a.vim can be used for alternating between implementation/header files. I don't use it myself but vim-snippets can be used for common snippets.
-
Porting a simple Mark-Sweep Garbage Collector to Zig
Out of the box Vim works well enough as an editor for Zig but the experience is a bit underwhelming. So I installed the Vim configuration for Zig plugin get syntax highlighting.
-
Failing to Learn Zig via Advent of Code
About the fast zig check, looking around the the zig.vim plugin code, I think it would be zig fmt --ast-check.
-
Is there a zig plugin for neovim?
There is zig-vim, language server and support in nvim-treesitter
-
Ziglang : first contact with memory safety and simplicity
install zig for vim : https://github.com/ziglang/zig.vim
What are some alternatives?
Neovim-from-scratch - đź“š A Neovim config designed from scratch to be understandable
vim-plug - :hibiscus: Minimalist Vim Plugin Manager
nvim-treesitter - Nvim Treesitter configurations and abstraction layer
neovim - Vim-fork focused on extensibility and usability
nvim-lsp-installer - Further development has moved to https://github.com/williamboman/mason.nvim!
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
nvim-dap - Debug Adapter Protocol client implementation for Neovim
zigup - Download and manage zig compilers.
zig-ecs
SpaceVim - A community-driven modular vim/neovim distribution - The ultimate vimrc
zig-vulkan-triangle - simple triangle displayed using vulkan, glfw, and zig