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-utils
nvim-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
require
andprint
- 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