Skip to content

Nvim 0.9.2

Compare
Choose a tag to compare
@github-actions github-actions released this 07 Sep 10:35

This is a maintenance release, focused on bug fixes and performance improvements.
However, There are included features related to TUI and :terminal.

Bram

Nvim is a fork of the Vim editor, created and developed by Bram Moolenaar.

On August 3, 2023, he passed away at the age of 62. If Vim or Nvim have been
of use to you in your life, read :help Bram and :help Uganda and consider
honoring his memory in a way you see fit.

Changes since 0.9.1

Breaking change

An adjustment was made to the grid_line event as part of the external UI protocol:
the cells array might now end with a [' ', attr, 0] item with a repeat count of
zero. This is needed by the TUI to disambiguate final spaces from a line from just
clearing the line, which will make a difference when copying text using the terminal
emulators' builtin primary selection support.

External UIs can safely ignore such an empty item and most UIs already handle this fine.
But it could break UIs which has an assert to validate the cell count to be bigger
than zero, or similar.

Features

  • tui: Support Super and Meta modifiers
  • terminal: Forward more special keys and modifier-mouse combinations

Bug Fixes

  • lua: Always set arg0 to lua scripts
  • api: Redundant error when using nvim_cmd
  • api, lua: Make blank lines in a message work properly
  • column: Fix bugs related to signs in 'statuscolumn'
  • completion: Don't add backslash in runtime completion
  • diff: Filler lines for hunks bigger than linematch limit
  • edit: Fix K_EVENT interfering with 'digraph'
  • editorconfig: Better validation and error handling
  • events: Don't expand non-file as file name
  • events: Trigger VimResume on next UI request
  • extmarks: Wrong display when changing text with virt_lines
  • folds: Update folds in Insert mode with fdm=indent
  • helptags: Make multibyte help tags work properly
  • highlight: Make CurSearch work properly with 'winhl'
  • inccommand: Fix saving of undo info
  • keycodes: Recognize <t_xx> as a key
  • lsp: Do not assume client capability exists in watchfiles check (#24558)
  • mouse: Handle folded lines with virt_lines attached to line above
  • remote: Make --remote-expr print to stdout
  • remote: Restore previous --remote-expr output formatting
  • spell: Splice extmarks on :spellrepall
  • startup: Don't truncate when printing with -l
  • startup: Run embedded Nvim with real path
  • statusline: Redraw when Visual submode changes
  • statusline: Fill for double-width char after moving items
  • treesitter: Updates to queries and injections
  • treesitter: Fix TSNode:tree() double free
  • ui: Propagate line wrapping state on grid_line events
  • ui: Avoid ambiguity about chunk that clears part of line

Performance

  • extmarks: Avoid unnecessary marktree traversal with folds
  • substitute: Don't reallocate new_start every time

Build System

  • deps: Bump libvterm to 0.3.3
  • deps: Bump LuaJIT to HEAD - 03c31124c
  • deps: Bump libuv to v1.46.0
  • deps: Bump Luv to 1.45.0-0
  • deps: Bump tree-sitter-c to v0.20.5
  • deps: Bump tree-sitter-lua to v0.0.18
NVIM v0.9.2
Build type: Release
LuaJIT 2.1.1692716794

Install

Windows

Zip

  1. Download nvim-win64.zip
  2. Extract the zip
  3. Run nvim-qt.exe

MSI

  1. Download nvim-win64.msi
  2. Run the MSI
  3. Search and run nvim-qt.exe or run nvim.exe on your CLI of choice

macOS

  1. Download nvim-macos.tar.gz
  2. Run xattr -c ./nvim-macos.tar.gz (to avoid "unknown developer" warning)
  3. Extract: tar xzvf nvim-macos.tar.gz
  4. Run ./nvim-macos/bin/nvim

Linux (x64)

AppImage

  1. Download nvim.appimage
  2. Run chmod u+x nvim.appimage && ./nvim.appimage
    • If your system does not have FUSE you can extract the appimage:
      ./nvim.appimage --appimage-extract
      ./squashfs-root/usr/bin/nvim
      

Tarball

  1. Download nvim-linux64.tar.gz
  2. Extract: tar xzvf nvim-linux64.tar.gz
  3. Run ./nvim-linux64/bin/nvim

Other

SHA256 Checksums

fee870b6173f1da134281824a744ada91ef612723bd328683dc941ef16837ec5  nvim-linux64.tar.gz
61950131e18157ab9c7f14131a3dda0aa81f8e4fb47994bf6d8b418d9be6e3c0  nvim.appimage
c6831ac9bb7145e3fdc595cca2a655aad25600a73d4d06750489282d54144c99  nvim.appimage.zsync
da2e852e25325ddc568c9c828060221a03b79b4e9fc9b7eecff9a633830eb923  nvim-macos.tar.gz
73f0b11322a905fbd9c1ba28fca21bacbf9b8547f164d3d5439f39d1c272bf15  nvim-win64.zip
febca24056ec8220e3d748755eeedd282db2dca6a32b6f8e89cf1c39328dcbfd  nvim-win64.msi