Back

neovim.io
Patches for Neovim x64
Windows
9 patches available
Neovim is a project that seeks to aggressively refactor Vim in order to:nnSimplify maintenance and encourage contributionsnSplit the work between multiple developersnEnable advanced UIs without modifications to the corenMaximize extensibility
Neovim x64 Version 0.11.3
Release Date
7/13/2025
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

NVIM v0.11.3$$$Build type: Release$$$LuaJIT 2.1.1741730670$$$$$$No other release notes available
Neovim x64 Version 0.11.2
Release Date
5/30/2025
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

NVIM v0.11.2$$$Build type: Release$$$LuaJIT 2.1.1741730670$$$This is a maintenance release; focusing on bug fixes. Some enhancements related$$$to vim.lsp.enable are also included.$$$$$$Features$$$lsp: Vim.lsp.is_enabled() #33703$$$lsp: root_markers can control priority$$$lsp: Start/stop LSPs as necessary during vim.lsp.enable() #33702$$$lsp: Detach LSP clients when filetype changes #33707$$$checkhealth: Trigger FileType event after showing report$$$health: Summary in section heading #33388$$$Bug Fixes$$$lsp: Detect if Client:request resolved synchronously #33624$$$lsp: Use bufnr when getting clients in symbols_to_items (#33760)$$$lsp: Improper diagnostic end_col computation
Neovim x64 Version 0.11.2
Release Date
5/30/2025
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

NVIM v0.11.2$$$Build type: Release$$$LuaJIT 2.1.1741730670$$$This is a maintenance release; focusing on bug fixes. Some enhancements related$$$to vim.lsp.enable are also included.$$$$$$Features$$$lsp: Vim.lsp.is_enabled() #33703$$$lsp: root_markers can control priority$$$lsp: Start/stop LSPs as necessary during vim.lsp.enable() #33702$$$lsp: Detach LSP clients when filetype changes #33707$$$checkhealth: Trigger FileType event after showing report$$$health: Summary in section heading #33388$$$Bug Fixes$$$lsp: Detect if Client:request resolved synchronously #33624$$$lsp: Use bufnr when getting clients in symbols_to_items (#33760)$$$lsp: Improper diagnostic end_col computation
Neovim x64 Version 0.11.1
Release Date
4/26/2025
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Not yet updated by vendor.$$$$$$Refer - https://github.com/neovim/neovim/releases/tag/v0.11.1
Neovim x64 Version 0.11.0
Release Date
3/26/2025
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Not update by Vendor yet$$$$$$https://github.com/neovim/neovim/releases/tag/v0.11.0
Neovim x64 Version 0.10.4
Release Date
1/29/2025
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

NVIM v0.10.4$$$This is maintenance release; focusing on bug fixes. It also contains changes$$$to the available binary releases.$$$A Linux AArch64 binary has been added as part of the binary releases.$$$In addition; the previous linux64 binary has been renamed to linux-x86_64.$$$This is a BREAKING change for scripts which consumes our binary releases.$$$$$$Bug Fixes$$$checkhealth: Failed if lua in plugin name$$$decor: Set invalid flag for end of invalidated paired marks$$$inspect: Use correct default highlight$$$jobs: Do not block UI when jobwait() doesnt block (#31803)$$$lsp: Minimum height for floating popup #31990$$$lua: Prevent SIGSEGV when lua error is NULL in libuv_worker (#32091)$$$marks: Revise metadata for start mark of revalidated pair #32017$$$mpack: Remove invalid bool definition$$$runtime: Let matchit and matchparen skips fallback on treesitter captures$$$search: Avoid quadratic time complexity when computing fuzzy score (#32153)$$$treesitter: Uv_dlclose after uv_dlerror$$$treesitter: Dont open fold when o/O adds a line below #28709$$$treesitter.foldexpr: Robustness against ctrl-c$$$treesitter.foldexpr: Refresh in the buffers affected by OptionSet$$$treesitter.foldexpr: Only refresh valid buffers$$$ui: Ensure screen update before waiting for input #30576
Neovim x64 Version 0.10.3
Release Date
12/21/2024
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Changes since 0.10.2:$$$$$$Features$$$main: Expand file ~\ or ~/ prefix on Windows$$$Bug Fixes$$$api: Make nvim_set_hl() respect all cterm attributes (#31390)$$$completion: Avoid deleting text when completion leader changes #31448$$$coverity/510275: Linematch out of bounds access (#30687)$$$defaults: Dont replace keycodes in Visual search mappings (#31460)$$$events: Dont expand args.file for Lua callback (#31473)$$$extmark: Builtin completion can still affect nearby extmarks #31387$$$filetype: Make filetype detection work with :doautocmd (#31470)$$$inccommand: Ensure cursor is where it belongs$$$inspect: Show priority for treesitter highlights$$$inspect: Always show priority$$$lsp: Str_byteindex_enc bounds checking #30747$$$lsp: Retrigger diagnostics request on server cancellation (#31345) (#31427)$$$lsp: Cancel pending requests before refreshing (#31500)$$$marks: Skip right_gravity marks when deleting text$$$startup: Report --startuptime error to stderr (#31131)$$$treesitter: Show proper node name error messages$$$tui: Avoid flushing buffer halfway an OSC 2 sequence (#30793)$$$uri: Uri_encode encodes brackets incorrectly for RFC2732 #31284$$$vim.system: Invalid MAX_TIMEOUT for 32-bit systems #31638$$$Documentation$$$Misc (#29410)$$$lua: vim.bo is always equivalent to :setlocal (#30733)$$$lua: Clarify when on_key typed will be empty (#30774)$$$Refactor$$$Fix incorrect use of enum (#30924)$$$Sort various Lua tables in src/ alphabetically (#30978)
Neovim x64 Version 0.10.2
Release Date
10/3/2024
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Features$$$jumplist: Allow opting out of removing unloaded buffers (#30419)$$$Bug Fixes$$$api: Error properly with invalid field in nvim_open_win (#30078)$$$api: Nvim_buf_get_text() crashes with large negative column #28740$$$api: Fix crash/leak with float title/footer on error (#30543)$$$channel: Handle writing to file instead of pipe (#30520)$$$column: Set signcolumn width after splitting window (#30556)$$$completion: Dont include <Lua function> in -complete= (#30209)$$$decor: Dont use separate DecorSignHighlight for url (#30096)$$$decor: Exclude invalid marks from meta total
Neovim x64 Version 0.10.1
Release Date
7/24/2024
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Changes since 0.10.0:$$$$$$Features$$$lsp: Update LSP healthcheck format (#28988)$$$Build System$$$deps: Bump tree-sitter-query to v0.4.0$$$deps: Bump tree-sitter-c to v0.21.3$$$deps: Bump tree-sitter-vimdoc to v3.0.0$$$deps: Drop unused bundled bash; python parsers and queries$$$macos: Disable deduplication in link step$$$popcount name conflict on NetBSD #28983$$$Remove -O2 from gen_cflags$$$Reuse code for deps.txt for both deps and main build$$$Bug Fixes$$$Show swapfile warning as a warning (#28972)$$$Assert failure in VimL expression parser$$$api: Alloc and draw cursor window in nvim__redraw$$$colorscheme: Underline StatusLineNC with notermguicolors #28810$$$column: Crash with signcolumn set to number (#29003)$$$column: Clamp line number for legacy signs$$$column: Modifying a sign should update placed signs (#29750)$$$comment: Fall back to using trimmed comment markers (#28950)$$$defaults: Default @/Q broken when ignorecase is set (#29343)$$$drawline: Dont draw beyond end of window (#29035)$$$drawline: Dont draw beyond end of window with rnu (#29406)$$$extmarks: Issues with revalidating marks #28961$$$filetype: Fix typos in filetype detection$$$float: Handle error in win_float_create() (#29742)$$$fs: Make vim.fs.root work for relative paths and unnamed buffers (#28973)$$$health: Broken ruby detect #28804$$$health: Fix fetching url with python in provider health (#29594)$$$input: Handle vim.on_key() properly with ALT and K_SPECIAL (#29677)$$$lsp: Add textDocument/documentLink to capability map (#28838)$$$lsp: Hide layout in codelenses in virtual text (#28794) (#28895)$$$lsp: Detach all clients on_reload to force buf_state reload (#28898)$$$lsp: Trigger LspDetach on buffer delete$$$lsp: Check if buffer was detached in on_init callback (#28942)$$$lsp: Handle nil root_dir in health check (#29010)$$$lsp: Do not detach from buffer if there are uninitialized clients (#29043)$$$lsp: Clear lsp client diagnostics (#29091)$$$lsp: Remove superfluous on_detach callback from semantic tokens module (#29188)$$$lsp: Do not reset buf version when detaching client (#29273)$$$lsp: Avoid vim.keymap.del error when stopping a client (#29478)$$$lsp: Dont show codelens for buffers that dont support it (#29690)$$$lsp: Inlay hints are rendered in the correct order (#29707)$$$lua: Change some vim.fn.expand() to vim.fs.normalize() (#29583)$$$marks: Revalidate marks whose position did not change$$$mouse: Early return when clicking in padded statuscolumn (#29394)$$$move: Half-page scrolling with resized grid at eob (#28821)$$$path: Avoid chdir() when resolving path (#28799)$$$quickfix: Make shortmess+=O work with cmdheight=0 (#29609)$$$runtime: Source c ftplugin properly for cpp on Windows (#29053)$$$runtime: Add commentstring for glsl ftplugin$$$snippet: Dont override unnamed register on tabstop select (#29008)$$$snippet: Cancel snippet session when leaving the buffer (#29044)$$$snippet: Modify base indentation when theres actually whitespace (#29670)$$$tohtml: Replace ipairs with pairs$$$tohtml: Ignore lsp inlay hints$$$tohtml: Show how many warnings are hidden$$$tohtml: Properly handle multiple hl groups #29012$$$tohtml: Extmark text may be out of bounds$$$tohtml: Support ranges again$$$treesitter: Do not modify highlight state for _on_spell_nav$$$treesitter: Ensure syntaxset augroup exists (#29542)$$$treesitter: Display fields for anonymous nodes in :InspectTree$$$treesitter: Recognize aliased parsers in omnifunc; query linter$$$tui: Remove duplicate disabling of synchronized output (#28884)$$$tui: Move $COLORTERM check to _defaults.lua (#29206)$$$tui: Skip TUI in ui_rgb_attached (#29096)$$$ui: Flush ext_cmdline events before doing cmdpreview (#29062)$$$ui: Superfluous showmode / excessive grid_cursor_goto #29089$$$ui: Avoid ambiguity about last chunk when flushing halfway (#29718)$$$version: Fix vim.version().prerelease$$$vim.text: Remove assert from vim.text.hexdecode$$$win-msi: Add bin to PATH per-machine after installation (#29099)$$$Documentation$$$Update LSP quickstart (#28989)$$$Misc (#29229)$$$
Neovim x64 Version 0.10.0
Release Date
5/16/2024
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

News-0.10$$$Nvim :help pages; generated from source using the tree-sitter-vimdoc parser.$$$$$$Notable changes since Nvim 0.9$$$For changes in the previous release; see news-0.9.$$$BREAKING CHANGES$$$These changes may require adaptations in your config or plugins.$$$API:$$$nvim_open_win() now blocks all autocommands when noautocmd is set; rather than just those from setting the buffer to display in the window.$$$Defaults:$$$Default color scheme has been updated to be Nvim branded and accessible. Use :colorscheme vim to revert to the old legacy color scheme.$$$These Nvim specific highlight groups are now defined in a meaningfully different way and might need an update:$$$hl-FloatBorder is linked to hl-NormalFloat instead of hl-WinSeparator.$$$hl-NormalFloat is not linked to hl-Pmenu.$$$hl-WinBar has different background.$$$hl-WinBarNC is similar to hl-WinBar but not bold.$$$hl-WinSeparator is linked to hl-Normal instead of hl-VertSplit.$$$This also might result into some color schemes looking differently due to them relying on implicit assumptions about how highlight groups are defined by default. To account for this; define all attributes of highlight groups explicitly. Alternatively; use :colorscheme vim or :source $VIMRUNTIME/colors/vim.lua to restore previous definitions.$$$termguicolors is enabled by default when Nvim is able to determine that the host terminal emulator supports 24-bit color.$$$Editor:$$$When switching windows; CursorMoved autocommands trigger when Nvim is back on the main loop rather than immediately. This is more compatible with Vim.$$$# followed by a digit no longer stands for a function key at the start of the lhs of a mapping.$$$shm-q now fully hides macro recording message instead of only shortening it.$$$Signs placed through the legacy sign-commands are now stored and displayed as extmarks internally. Along with the following changes:$$$A sign placed twice in the same group with the same identifier will be moved.$$$Legacy signs are always deleted along with the line it is placed on.$$$Legacy and extmark signs will show up in both :sign-place-list and nvim_buf_get_extmarks().$$$Legacy and extmark signs are displayed and listed with the same priority: line number -> priority -> sign id -> recently placed$$$:behave was removed.$$$If you used :behave xterm; the following is equivalent:$$$set mousemodel=extend$$$If you used :behave mswin; the following is equivalent:$$$set selection=exclusive$$$set selectmode=mouse;key$$$set mousemodel=popup$$$set keymodel=startsel;stopsel$$$Events:$$$Returning any truthy value from a callback passed to nvim_create_autocmd() (rather than just true) will delete the autocommand.$$$LSP:$$$LanguageTree:parse() will no longer parse injections by default and now requires an explicit range argument to be passed. If injections are required; provide an explicit range via parser:parse({ start_row; end_row }).$$$vim.lsp.util.parse_snippet() will now strictly follow the snippet grammar defined by LSP; and hence previously parsed snippets might now be considered invalid input.$$$vim.lsp.codelens.refresh() now takes an opts argument. With this change; the default behavior of just refreshing the current buffer has been replaced by refreshing all buffers.$$$vim.lsp.util.extract_completion_items() will no longer return reliable results; since it does not apply itemDefaults when its input is a CompletionList. Moreover; since support for LSP completionList.itemDefaults was added; some third party plugins might be negatively impacted in case the language servers support the feature but the plugin does not. If necessary; the respective capability can be removed when calling vim.lsp.protocol.make_client_capabilities().$$$LspRequest and LspProgressUpdate (renamed to LspProgress) autocmds were promoted from User autocmds to first class citizens.$$$Lua:$$$-l ensures output ends with a newline if the script prints messages and doesnt cause Nvim to exit.$$$Removed functions from the vim.json module:$$$Unnecessary; undocumented funct
Neovim x64 Version 0.9.5
Release Date
12/30/2023
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Bug Fixes$$$defaults: Set fsync #26039$$$Dont create data dir if its a broken symlink$$$Make InspectTree handle nested injection$$$Remove nested for_each_tree in TSTreeView (#26331)$$$api: Use a conditional stack for nvim_cmd$$$change: Update fold after on_bytes$$$deps: Bump libmpack from luarocks$$$extmark_to_array: Convert conceal_char to bytes$$$highlight: Apply winblend to float border$$$inccommand: Save and restore [ and ] marks$$$inccommand: Dont crash with split and n flag$$$lsp: Handle NUL bytes in popup text$$$lua: Correct return value for on_key with no arguments$$$lua: Crash in nlua_error$$$man: Make :Man with a range work$$$mappings: Fix mapset() not replacing map with backslash$$$marks: Handle switching buffer properly$$$mouse: Avoid dragging after click label popupmenu callback$$$mouse: Avoid dragging when clicking next to popupmenu$$$move: Check the correct buffer$$$oldtest: Always use a 64-bit int for swapfile block number$$$options: Setting scroll with resized grid$$$quickfix: Check if delete failed in qf_fill_buffer()$$$set_bool_option: Use int value to make bool Object$$$set_option_from_tv: Use v_bool to access boolean option$$$terminal: Assign channel to terminal earlier$$$terminal: Avoid Insert mode in Terminal buffer$$$terminal: Dont lose focus on$$$terminal: Keep focus when scrolling number column of another window$$$terminal: Make backslashes in shell work on Windows$$$treesitter: Foldexpr tweaks$$$treesitter: Remove incompatible c query (again)$$$ui: Empty line before the next message after :silent command
Neovim x64 Version 0.9.5
Release Date
12/30/2023
Bug Fix?
Yes
Minor Release?
Yes
Patch Notes

Bug Fixes$$$defaults: Set fsync #26039$$$Dont create data dir if its a broken symlink$$$Make InspectTree handle nested injection$$$Remove nested for_each_tree in TSTreeView (#26331)$$$api: Use a conditional stack for nvim_cmd$$$change: Update fold after on_bytes$$$deps: Bump libmpack from luarocks$$$extmark_to_array: Convert conceal_char to bytes$$$highlight: Apply winblend to float border$$$inccommand: Save and restore [ and ] marks$$$inccommand: Dont crash with split and n flag$$$lsp: Handle NUL bytes in popup text$$$lua: Correct return value for on_key with no arguments$$$lua: Crash in nlua_error$$$man: Make :Man with a range work$$$mappings: Fix mapset() not replacing map with backslash$$$marks: Handle switching buffer properly$$$mouse: Avoid dragging after click label popupmenu callback$$$mouse: Avoid dragging when clicking next to popupmenu$$$move: Check the correct buffer$$$oldtest: Always use a 64-bit int for swapfile block number$$$options: Setting scroll with resized grid$$$quickfix: Check if delete failed in qf_fill_buffer()$$$set_bool_option: Use int value to make bool Object$$$set_option_from_tv: Use v_bool to access boolean option$$$terminal: Assign channel to terminal earlier$$$terminal: Avoid Insert mode in Terminal buffer$$$terminal: Dont lose focus on$$$terminal: Keep focus when scrolling number column of another window$$$terminal: Make backslashes in shell work on Windows$$$treesitter: Foldexpr tweaks$$$treesitter: Remove incompatible c query (again)$$$ui: Empty line before the next message after :silent command
Interested in automating patching for Neovim x64?