Use nvim-oxi for Neovim plugin development
mainnvim-oxi provides safe and idiomatic Rust bindings to the Neovim API. Unlike traditional plugins that use RPC channels (which require MessagePack serialization and limit features like callbacks), nvim-oxi uses Rust's Foreign Function Interface (FFI) to hook directly into Neovim's C code. This provides feature parity with 'in-process' Lua plugins and avoids the overhead of an extra IO layer.
Key advantages include:
- Access to the Rust ecosystem: Use crates for networking, IO, serialization, and concurrency.
- Fully typed API: Function fields and callback arguments are checked at compile-time, allowing for faster iteration via
cargo check.