5.3 KiB
Changelog
Unreleased
0.6.0 - May 23 2025
Changed
-
nvim_oxi::api::get_mode()
is now infallible and always returns aGotMode
(#247); -
nvim_oxi::api::KeymapInfos::buffer
is now anOption<Buffer>
instead of abool
(#255); -
nvim_oxi::api::Buffer::get_extmarks()
now takes animpl Into<GetExtmarksNamespaceId>
as its first argument instead of au32
. BecauseGetExtmarksNamespaceId
implementsFrom<u32>
, this should be an API-compatible change (#256);
Fixed
- fixed the definition of
DecorationProviderOpts
, which was causing the callbacks registered toset_decoration_provider()
to panic on all Neovim versions (#253);
Added
-
a
String::to_str()
method which returns a&str
if the string contains valid UTF-8 data; -
a
WindowConfig::mouse
field and aWindowOptsBuilder::mouse()
method on nightly (#189); -
a
string!
macro that producesnvim_oxi::String
s from string literals; -
a
StringBuilder
struct that can be used to incrementally buildnvim_oxi::String
s; -
a
nvim_oxi::tests::build()
function to be used in the build script of a crate containing integration tests annotated with#[nvim_oxi::test]
(#201); -
a series of
Object::as_{kind}_unchecked_mut()
methods to get a mutable reference to anObject
's underlying value without performing any runtime checks; -
three
Object::as_{string,array,dictionary}_unchecked()
methods to get a shared reference to anObject
's underlying string/array/dictionary without performing any runtime checks;
Changed
-
nvim_oxi::api::echo
is now generic over the highlight group type instead of expecting a string slice; -
renamed the
lua_<Foo>
types to<Foo>
; -
the argument of
SetHighlightOptsBuilder::link()
from&str
to any type implementingHlGroup
; -
nvim_oxi::api::notify()
now takes a&Dictionary
instead of&NotifyOpts
at its third parameter, and returnsResult<Object>
instead ofResult<()>
(#208); -
renamed
Object::into_dict_unchecked()
toObject::into_dictionary_unchecked()
; -
renamed
nvim_oxi::api::Window::set_hl
tonvim_oxi::api::Window::set_hl_ns
(#220) -
nvim_oxi::api::feedkeys()
now takes a pair ofimpl Into<NvimStr>
instead of a&str
and aMode
(#240); -
nvim_oxi::api::types::GotMode::mode
is now a value of typeModeStr
instead of aMode
(#241);
Removed
-
the
SetHighlightOptsBuilder::global_link()
method. UseSetHighlightOptsBuilder::link()
instead; -
the argument of
SetHighlightOptsBuilder::{link,global_link}()
from&str
to any type implementingHlGroup
; -
removed the
TitleHighlight
enum, turns out only itsSimpleString
variant was valid, so the entire enum was replaced with annvim_oxi::String
(#228);
0.5.1 - June 23 2024
Added
- a
handle
method onBuffer
,Window
, andTabPage
which returns the underlying handle (#176);
Removed
- the following methods were included in Neovim 0.10 as experimental, but have
subsequently been removed on nightly:
nvim_oxi::api::SetExtmarkOptsBuilder::scoped()
nvim_oxi::api::Window::add_ns()
nvim_oxi::api::Window::get_ns()
nvim_oxi::api::Window::del_ns()
0.5.0 - May 28 2024
Added
-
support for Neovim 0.10;
-
the ability to return a
Result<(), T>
from thenvim_oxi::test
macro (#159); -
the optional
nvim-oxi
andcmd
attributes to thenvim_oxi::test
macro (#159); -
the optional
library_path
attribute to thenvim_oxi::test
macro (#164);
Changed
-
renamed the macro that marks the entrypoint of a plugin from
nvim_oxi::module
tonvim_oxi::plugin
(#142); -
nvim_oxi::api:echo()
now requires a 3rd parameter of typeEchoOpts
(#145);
Removed
- support for Neovim 0.8;
0.4.2 - Jan 29 2024
0.4.1 - Dec 16 2023
Added
-
a new
ExtmarkVirtTextChunk
struct; -
an
Inline
variant to theExtmarkVirtTextPosition
enum when building forneovim-nightly
;
Changed
- the type of
ExtmarkInfos
'svirt_text
field fromOption<Vec<(String, OneOrMore<String>)>>
toVec<ExtmarkVirtTextChunk>
;