News

Nvim :help pages, generated from source using the tree-sitter-vimdoc parser.


Notable changes since Nvim 0.12
For changes in the previous release, see news-0.12.

BREAKING CHANGES IN HEAD OR EXPERIMENTAL news-breaking-dev

====== Remove this section before release. ======
The following changes to UNRELEASED features were made during the development cycle (Nvim HEAD, the "master" branch).

EVENTS

todo

EXPERIMENTS

todo

LSP

todo

LUA

vim.pos, vim.range always require the buf parameter.

DIAGNOSTICS

todo

OPTIONS

todo

TREESITTER

todo

UI

todo
vim.ui.img experimental module added to display images within neovim.

VIMSCRIPT

todo

BREAKING CHANGES news-breaking

These changes may require adaptations in your config or plugins.

API

nvim_create_autocmd(), nvim_exec_autocmds() and nvim_clear_autocmds() no longer treat an empty non-nil pattern as nil.
nvim_clear_autocmds() no longer treats an empty array event as nil.
ui-messages msg_show.bufwrite and msg_show.completion messages are now msg_show.progress events.

DIAGNOSTICS

todo

EDITOR

On Windows, the trust db now stores paths with "/" slashes. This means the trust store will be reset.
stdpath("log") moved to stdpath("state")/logs.

EVENTS

BufModifiedSet has been removed. Use the OptionSet event with pattern "modified" instead.
todo

LSP

todo

LUA

Added __eq metamethod to vim.VersionRange.

OPTIONS

todo

PLUGINS

todo

TREESITTER

todo

NEW FEATURES news-features

The following new features were added.

API

nvim_set_hl() supports "font" key.
nvim_open_win() zindex controls whether the UI will use a dimmed cursor shape when an unfocused float is on top of the cursor.
nvim_echo() distinguishes zero percent from omitted percent for Progress events.

BUILD

Building using "zig build" requires zig 0.16.x.

DEFAULTS

todo

DIAGNOSTICS

todo

EDITOR

gf and <cfile> support file://… URIs.
:log opens log files.
ZR restarts Nvim (:restart).
:uptime displays uptime.

EVENTS

:delmarks now triggers the MarkSet autocommand with line==col==0, same as nvim_buf_del_mark()

HIGHLIGHTS

todo

LSP

LUA

vim.net.request() can specify custom headers by passing opts.headers.
writefile() treats Lua strings as "blob", so it can be used to write binary data.
vim.filetype.inspect() returns a copy of the internal tables used for filetype detection.
Added __eq metamethod to vim.VersionRange. 2 distinct but representing the same range instances now compare equal.
Documentation for vim.fn now points to preferred Lua alternatives when available.

OPTIONS

'ttyfast' can be disabled during startup by setting the environment variable NVIM_NOTTYFAST to disable automatic background detection.
'scrolloffpad' allows vertically centering cursor at the end of file.
'winpinned' prevents window from closing unless specifically targeted.

PERFORMANCE

Nvim architecture allows pure-Lua implementations of some vim.fn functions, which skips the Vimscript <=> Lua "bridge" (no data conversion/marshalling) entirely, if the vim.fn function is called from Lua.
The table holding LSP data is now cleared using table.clear, thus reducing GC and memory reallocation during each data reset.
When parsing the received Content-Length messages, the RPC client will no longer allocate extra strings.

PLUGINS

provider: add bun support for Node.js plugins

STARTUP

todo

TERMINAL

todo

TREESITTER

v_]N v_[N expand selection to sibling treesitter node.
treesitter-highlight-conceal can be removed by adding a @noconceal capture.

TUI

The TUI will re-query the terminal's background color when resuming from a suspended state, and Nvim will update 'background' accordingly.

UI

todo

VIMSCRIPT

v:exitreason is set before QuitPre.
v:starttime is the process start time (nanoseconds from UNIX epoch).

CHANGED FEATURES news-changed

These existing features changed their behavior.
:Open with no arguments uses the current file.
The "buffer" key was renamed to "buf" in these functions (but the old name "buffer" is still accepted, for backwards compatibility):

REMOVED FEATURES news-removed

These deprecated features were removed.

DEPRECATIONS news-deprecations

Main
Commands index
Quick reference