Home Explore Blog CI



neovim

2nd chunk of `runtime/doc/news.txt`
eb8367729a916f2725f78fe6feedfac7b24e7cf5750c23cd000000010000097f
 exposed as a statusline expression (previously it
  was implemented as an internal C routine).
• Project-local configuration ('exrc') is also loaded from parent directories.
  Unset 'exrc' to stop further search.

DIAGNOSTICS

• |vim.diagnostic.setloclist()| and |vim.diagnostic.setqflist()| now support a
  `format` function to modify (or filter) diagnostics before being set in the
  location/quickfix list.
• |vim.diagnostic.get()| now accepts an `enabled` filter to only return
  enabled or disabled diagnostics.

EDITOR

• |:iput| works like |:put| but adjusts indent.
• |omnicompletion| in `help` buffer. |ft-help-omni|
• Setting "'0" in 'shada' prevents storing the jumplist in the shada file.
• 'shada' now correctly respects "/0" and "f0".

EVENTS

• |CmdlineLeavePre| triggered before preparing to leave the command line.
• New `append` paremeter for |ui-messages| `msg_show` event.

HIGHLIGHTS

• |hl-DiffTextAdd| highlights added text within a changed line.
• |hl-StderrMsg| |hl-StdoutMsg|

LSP

• |vim.lsp.ClientConfig| gained `workspace_required`.
• You can control priority of |vim.lsp.Config| `root_markers`.
• Support for `textDocument/documentColor`: |lsp-document_color|
  https://microsoft.github.io/language-server-protocol/specification/#textDocument_documentColor
• The `textDocument/diagnostic` request now includes the previous id in its
  parameters.
• |vim.lsp.enable()| start/stops clients as necessary. And detaches
  non-applicable LSP clients.
• |vim.lsp.is_enabled()| checks if a LSP config is enabled (without
  "resolving" it).

LUA

• Lua type annotations for `vim.uv`.
• |vim.hl.range()| now allows multiple timed highlights.
• |vim.tbl_extend()| and |vim.tbl_deep_extend()| now accept a function behavior argument.

OPTIONS

• 'autowriteall' writes all buffers upon receiving `SIGHUP`, `SIGQUIT` or `SIGTSTP`.
• 'chistory' and 'lhistory' set size of the |quickfix-stack|.
• 'completefuzzycollect' enables fuzzy collection of candidates for (some)
  |ins-completion| modes.
• 'complete' new flags:
  • "F{func}"   complete using given function
  • "F"         complete using 'completefunc'
  • "o"         complete using 'omnifunc'
• 'complete' allows limiting matches for sources using "{flag}^<limit>".
• 'completeopt' flag "nearset" sorts completion results by distance to cursor.
• 'diffopt' `inline:` configures diff highlighting

Title: Nvim New Features Continued: Diagnostics, Editor, Events, Highlights, LSP, Lua, and Options
Summary
This section details new features in Nvim, including enhancements to diagnostics with format functions and enabled filters, editor improvements like :iput and omnicompletion in help buffers, new events such as CmdlineLeavePre, highlight additions like hl-DiffTextAdd, LSP updates including workspace_required and root_markers control, Lua type annotations and improved table extension functions, and new options such as autowriteall, chistory, and lhistory, along with updates to completefuzzycollect and complete flags.