Interacting with Neovim's lua api in Rust can be a bit of a pain. nvim-utils aims to make it easier and quicker to develop Neovim plugins in Rust by removing as much of the required boilerplate as possible, and implementing bindings for the vim.* lua api.
Warning
This library is no longer maintained.
For a more polished API, check out nvim-oxi.
- Integrate with the Luajit and Neovim C APIs directly
- Minimize dependencies
cargo add nvim-utilsnvim-utils provides utilities for:
- Declaratively building lua modules using
mlua - Interacting with Neovim's lua api
- Logging using
vim.notify - Accessing common lua builtin functions like
requireandprint - And more to come!
Check out the examples for a simple example plugin, or my plugins moveline and blam for slightly more complex ones.
Open docs.rs/nvim-utils for the full documentation.
If you build a plugin using nvim-utils, submit a PR or let me know and I'll list it here!
- willothy/moveline.nvim: Easily move lines up and down