https://github.com/KillTheMule/nvim-rs
A rust library for neovim clients
https://github.com/KillTheMule/nvim-rs
Last synced: 4 months ago
JSON representation
A rust library for neovim clients
- Host: GitHub
- URL: https://github.com/KillTheMule/nvim-rs
- Owner: KillTheMule
- License: apache-2.0
- Created: 2019-12-09T20:08:14.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-03-23T11:33:03.000Z (4 months ago)
- Last Synced: 2025-03-25T07:00:27.814Z (4 months ago)
- Language: Rust
- Homepage:
- Size: 1.54 MB
- Stars: 240
- Watchers: 6
- Forks: 26
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# nvim-rs  [](https://docs.rs/nvim-rs/) [](https://crates.io/crates/nvim-rs)
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](https://github.com/KillTheMule/nvim-rs/issues/1) for things being planned.
## Contributing
I'd love contributions, comments, praise, criticism... You could open an [issue](https://github.com/KillTheMule/nvim-rs/issues) or a [pull request](https://github.com/KillTheMule/nvim-rs/pulls). I also read the subreddits for [rust](https://www.reddit.com/r/rust/), 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](https://github.com/daa84/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](https://www.rust-lang.org/en-US/conduct.html).