#neovim #rpc #nvim #msgpack #api-bindings

bin+lib nvim-rs

A library for writing neovim rpc clients

9 releases (breaking)

0.7.0 Feb 3, 2024
0.6.0 Sep 16, 2023
0.5.0 Oct 8, 2022
0.4.0 Dec 16, 2021
0.0.1 Dec 9, 2019

#35 in Text editors

Download history 223/week @ 2023-12-05 373/week @ 2023-12-12 421/week @ 2023-12-19 400/week @ 2023-12-26 418/week @ 2024-01-02 411/week @ 2024-01-09 391/week @ 2024-01-16 677/week @ 2024-01-23 485/week @ 2024-01-30 549/week @ 2024-02-06 511/week @ 2024-02-13 486/week @ 2024-02-20 548/week @ 2024-02-27 403/week @ 2024-03-05 371/week @ 2024-03-12 403/week @ 2024-03-19

1,798 downloads per month
Used in 5 crates

LGPL-3.0

140KB
4K SLoC

nvim-rs CI (Docs.rs) (Crates.io status)

Rust library for Neovim msgpack-rpc clients. Utilizes async to allow for arbitrary nesting of requests.

Status

Useable, see the examples/ and tests/ folders for examples. The nvim_rs::examples submodule contains documentation of the examples.

The API is unstable, see the Roadmap for things being planned.

Contributing

I'd love contributions, comments, praise, criticism... You could open an issue or a pull request. I also read the subreddits for rust and neovim, if that suits you better.

Running tests

For some tests, neovim needs to be installed. Set the environment variable NVIMRS_TEST_BIN to the path of the binary before running the tests.

Afterwards, you can simply run cargo test --features="use_tokio". Also run cargo build --examples --features="use_tokio" as well as cargo bench -- --test --features="use_tokio" to make sure everything still compiles (replace use_tokio by use_async-std to do all the above with async-std instead of tokio).

License

As this is a fork of neovim-lib, it is licensed under the GNU Lesser General Public License v3.0.

IMPORTANT: All commits to this project, including all PRs, are dual-licensed under the Apache or MIT license. This is to allow the possibility of relicensing this project later.

CoC

Wherever applicable, this project follows the rust code of conduct.

Dependencies

~2–15MB
~179K SLoC