Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jinzhongjia/znvim
neovim remote rpc client implementation with zig
https://github.com/jinzhongjia/znvim
neovim neovim-remote zig
Last synced: about 1 month ago
JSON representation
neovim remote rpc client implementation with zig
- Host: GitHub
- URL: https://github.com/jinzhongjia/znvim
- Owner: jinzhongjia
- Created: 2024-02-13T17:11:29.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-05-28T13:46:58.000Z (7 months ago)
- Last Synced: 2024-05-29T03:36:08.301Z (7 months ago)
- Topics: neovim, neovim-remote, zig
- Language: Zig
- Homepage:
- Size: 107 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-zig - jinzhongjia/znvim
README
# znvim
_znvim_ is a [neovim remote rpc](https://neovim.io/doc/user/api.html#rpc-connecting) client implementation with [`zig`](https://ziglang.org/).
> This package is under developing!
## Document
[https://jinzhongjia.github.io/znvim/](https://jinzhongjia.github.io/znvim/)
## Features
- Implementation of multiple remote calling methods
- Support all neovim rpc [channels](https://neovim.io/doc/user/channel.html#channel-intro)
- Completely thread safe
- Asynchronous## Getting Started
### `0.12.0` / `0.13.0`
1. Add to `build.zig.zon`
```sh
zig fetch --save https://github.com/jinzhongjia/znvim/archive/{commit or branch}.tar.gz
```2. Config `build.zig`
```zig
const znvim = b.dependency("znvim", .{
.target = target,
.optimize = optimize,
});// add module
exe.root_module.addImport("znvim", znvim.module("znvim"));
```## To use this lib
You can find example on `test` fold!
Recommend to learn about what [msgpack](https://github.com/msgpack/msgpack/blob/master/spec.md) is (this lib uses [zig-msgpack](https://github.com/zigcc/zig-msgpack)) and read neovim's API [documentation](https://neovim.io/doc/user/api.html).