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, or if you want a direct contact, meet me in the neovim gitter channel. I also read the subreddits for rust and neovim, if that suits you better.
For some of the tests, the neovim source included as a submodule needs to be compiled.
-
On Linux and OSX, after checking out the source, it should be as simple as
cd neovim && make
. -
On Windows, follow the build instructions from the neovim wiki.
After building neovim, you can simply run cargo test
. Also run cargo build --examples
as well as cargo bench -- --test
to make sure everything still
compiles.
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.