Rust library for Neovim msgpack-rpc clients. Utilizes async to allow for arbitrary nesting of requests.
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.
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.
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
).
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.
Wherever applicable, this project follows the rust code of conduct.