Neovim 0.12.5

:restart now takes you back to where you left off

Aug 27, 2026

Neovim 0.12.5 is out. It is a maintenance release, so most of the diff is fixes. One change matters: :restart now saves and restores your session, so you can actually pick up where you left off.

Restart and restore your session

This is the change most people will feel. :restart without a bang now saves your session on shutdown and restores it on startup, so your buffers, windows, and layout come back exactly as they were. :restart! keeps the old behaviour and restarts against an empty session.

Behaviour change

:restart used to ignore your session. If you script restarts (for example in a keymap or a plugin), check that you did not rely on the empty session. Reach for :restart! to keep the old semantics.

Related, v:startreason is now set by :restart, so your config can tell a restart apart from a normal launch and skip heavy setup on the way back in.

LSP reuses the right client

The reuse_client predicate on a config (see :help vim.lsp.config) now receives the target buffer. That matters in monorepos where you want client-per-directory. You can finally make the decision with the actual buffer in hand instead of guessing from the current working directory.

Shada keeps more state

Two small persistence fixes round out the release: cleared registers and cleared search patterns are now persisted to the shada file. After a restart you no longer get ghost entries in :reg or a search prompt that still offers patterns you explicitly cleared.

What is shada?

shada (shared data) is Neovim's state file, the successor to Vim's .viminfo. It persists the jumplist, registers, search history, and marks across sessions, so they survive a restart.

Stability fixes

The rest is the usual patch-release jumble: floating window positioning and tabpage cleanup, a statuscolumn wrapping bug, unbounded tree-sitter fold ranges, and a couple of window-closing crashes were all fixed. Tree-sitter was bumped to v0.26.13 and wasmtime to v36.0.14.

Where to get the details

Run :help news inside Neovim for the release notes. For the full per-fix list, the 0.12.5 release on GitHub links to the complete changelog.

Share

Comments (0)