Releases: neovim/neovim
Nvim 0.8.1
NVIM v0.8.1
Build type: Release
LuaJIT 2.1.0-beta3
Changes since 0.8.0
Features
- extmarks: Allow preventing spellchecking with spell = false
- spell: Support nospell in treesitter queries
- man: Add health check
- docs-html: Try to use tags for ToC headings
Bug Fixes
- ui: Setting 'cmdheight' with global statusline
- ui: Fix highlights not being updated with 'winhl'
- Make_filter_cmd for :! powershell
- :! pwsh redirection for
command not found
- Find multibyte file name in line
- Avoid unsigned overflow in home_replace()
- docs-html: Update parser
- folds: Fix fold marker multibyte comparison
- health: Correct tmux rgb verification
- man.lua: Set modifiable before writing page
- mouse: Ensure no scrolling with "ver:0" in 'mousescroll'
- paste: Feed keys as typed in cmdline mode
- qflist: Avoid read of uninitialized memory
- spell: Fix wrong cast
- stdpath: Default to /tmp if stdpath('run') cannot be created
- tui: Resume main thread if suspending isn't implemented
Documentation
- lsp: Vim.lsp.range_code_action() is not deprecated
Install
Windows
Zip
- Download nvim-win64.zip
- Extract the zip.
- Run
nvim-qt.exe
MSI
- Download nvim-win64.msi
- Run the MSI
- Search and run
nvim-qt.exe
or runnvim.exe
on your CLI of choice.
macOS
- Download nvim-macos.tar.gz
- Run
xattr -c ./nvim-macos.tar.gz
(to avoid "unknown developer" warning) - Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-macos/bin/nvim
Linux (x64)
Tarball
- Download nvim-linux64.tar.gz
- Extract:
tar xzvf nvim-linux64.tar.gz
- Run
./nvim-linux64/bin/nvim
Debian Package
- Download nvim-linux64.deb
- Install the package using
sudo apt install ./nvim-linux64.deb
- Run
nvim
AppImage
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
a901b8815d1c0a26104bcbe405e1aa308f364f98d9dc7daa58c70114def60a29 nvim-linux64.tar.gz
5774c0d299a27a77e4e497c018cbcc9d4291c3b019ada28880d08d1f3040e779 nvim-linux64.deb
25658f3db59fac398bc28b7ff7984ed1becdf9a3e98b3e4e226c236c35107054 nvim.appimage
95cc915e2c41b7f29c3c6c572f847b1b67ba6b05eb015d5f0d78a4300d11b213 nvim.appimage.zsync
52efab6794653ff6346b3a94d991c086b93837f95eeed467cb3769a3c65088ea nvim-macos.tar.gz
1332cc7eded77ec3284ef648b6d54beb6d0f8be8eb7789483d46ff466343afb4 nvim-win64.zip
e351d76026b0b19488ff4961435e01ead30a5955aafcbe6c89dcb8d8d7054a76 nvim-win64.msi
Nvim v0.8.0
NVIM v0.8.0
Build type: Release
LuaJIT 2.1.0-beta3
Install
Windows
Zip
- Download nvim-win64.zip
- Extract the zip.
- Run
nvim-qt.exe
MSI
- Download nvim-win64.msi
- Run the MSI
- Search and run
nvim-qt.exe
or runnvim.exe
on your CLI of choice.
macOS
- Download nvim-macos.tar.gz
- Run
xattr -c ./nvim-macos.tar.gz
(to avoid "unknown developer" warning) - Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-macos/bin/nvim
Linux (x64)
Tarball
- Download nvim-linux64.tar.gz
- Extract:
tar xzvf nvim-linux64.tar.gz
- Run
./nvim-linux64/bin/nvim
Debian Package
- Download nvim-linux64.deb
- Install the package using
sudo apt install ./nvim-linux64.deb
- Run
nvim
AppImage
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
1af27471f76f1b4f7ad6563c863a4a78117f0515e3390ee4d911132970517fa7 nvim-linux64.tar.gz
215c88e8cf3fefcd02ef45dc8cdad563e1c601faeddca41565b6b852fceb26b5 nvim-linux64.deb
e1e6512bd5d9081d293ac7d1283166e09cbb32d15063853ade4b03719919e22f nvim.appimage
c36b78021333db3c5d312b83ff1634997c1085473e2cedce3862786eddae481d nvim.appimage.zsync
abe0b0c1ca46b7d05e689d4791055a6dbbf2394cb53a6a8d8274813e6762c1f1 nvim-macos.tar.gz
c52e0a93e8bd7e0192c3fe4552d8b0fb66fc8e08b6949e92340cccc4fa3a9bd0 nvim-win64.zip
1f38694a43c9fb33b045407edaab793e4a4f6da6751ec6f09f6fd96da4fba786 nvim-win64.msi
Breaking changes
- Remove 'insertmode' 'remap' and 'terse' options
- highlight: Rename attributes to match Vim (#19159)
- highlight: Error on invalid names and allow '.' and '@'
- terminal: Drop winpty, require Windows 10 (version 1809 or later) #18253
- treesitter: Use @foo.bar style highlight groups
- treesitter: Do not merge queries by default (#20105)
Features
- runtime: Enable filetype.lua by default (#19216)
- Add
undo!
- Add "prerelease" to version dict
- Click support for 'statusline', 'winbar' #18650
- Add preview functionality to user commands
- allow Cmdheight=0 (EXPERIMENTAL) #16251
- Stdpath('run'), /tmp/nvim.user/ #18993
- Add 'mousescroll' option (#12355)
- Allow :wincmd to accept a count (#19815)
- Multibuffer preview support for inccommand
- Man: Port to Lua (#19912)
- api: Ui options relevant for remote TUI
- api: Add
nvim_parse_cmd
Andnvim_cmd
- api: Support handling stdin stream in remote ui
- api: Add
group_name
tonvim_get_autocmds
- api: Enable nvim_exec_autocmds to pass arbitrary data (#18613)
- api: Support pattern array for exec_autocmds
- api: Add
unsilent
to command APIs - api: Add replace_keycodes to nvim_set_keymap (#19598)
- api: Add support for :horizontal modifier
- api: Add "move" to nvim_input_mouse
- api/ui: "ui_watched" option for ui-side extmarks
- build: Add_glob_target runs only on changed files #19070
- checkhealth: Check for slow shell #17829
- defaults: Session data in $XDG_STATE_HOME #15583
- defaults: Search selection by * and # in visual mode (#18538)
- defaults: Nnoremap & :&& #19365
- defaults: enable mouse by default (set mouse=nvi) #19290
- diagnostic: Pass diagnostics as data to DiagnosticChanged autocmd (#20173)
- docs: Gen_help_html.lua
- edit: Insert an unsimplified key using CTRL-SHIFT-V
- treesitter: Full support for spelling
- filetype: Convert more patterns to filetype.lua
- filetype: Remove side effects from vim.filetype.match (#18894)
- filetype: Expand environment variables in filetype patterns (#20145)
- fs: Add vim.fs functions: parents() dirname() basename() dir() find() normalize()
- highlight: Implement CurSearch highlight
- highlight: Support scoped @spam.eggs.baked_beans groups
- input: Delay all simplifications
- l10n: Turkish translations #19441
- l10n: Improve zh_CN translations (#19483)
- lsp: Remove capabilities sanitization (#17814)
- lsp: Show feedback on empty hover response (#18308)
- lsp: Options to filter and auto-apply code actions (#18221)
- lsp: Add vim.lsp.buf.format (#18193)
- lsp: Add logging level "OFF" (#18379)
- lsp: Add LspAttach and LspDetach autocommands
- lsp: Add filter to vim.lsp.get_active_clients()
- lsp: Option to reuse_win for jump actions (#18577)
- lsp: Add a start function (#18631)
- lsp: Send didChangeConfiguration after init (#18847)
- lsp: Defaults: tagfunc, omnifunc, formatexpr (#19003, #19677)
- lsp: Allow passing custom list handler to LSP functions that return lists (#19213)
- lsp: Provide feedback if server can't compute rename result (#19546)
- lsp: Add range option to code_action; deprecate range_code_action (#19551)
- lsp: Disable exit_timeout by default (#19672)
- lsp: Add tcp support
- lua: Vim.deprecate() #18320
- lua: Vim.cmd() with kwargs acts like nvim_cmd() #18523
- lua: Allow some vim script functions to run in fast callbacks
- lua: Measure require in --startuptime
- lua: Allow vim.cmd to be indexed (#19238)
- lua: Print source locations of lua callbacks (#19597)
- lua: Add vim.iconv (#18286)
- lua: Vim.ui_attach to get ui events from lua (EXPERIMENTAL)
- man.vim: List command flags in "gO" outline #17558
- mappings: Do not replace existing mapping for simplified form
- mappings: Allow special keys and modifiers in mapping
- mapset: Support restoring "replace_keycodes" and "desc"
- mapset: Support restoring Lua callback (#20024)
- marks: Restore viewport on jump #15831
- nvim_create_user_command: Pass structured modifiers to commands
- pum: Pretend 'mousemoveevent' is set when showing right-click menu
- server: Set $NVIM, unset $NVIM_LISTEN_ADDRESS #11009
- server: Instance "name", store pipes in stdpath(state)
- term: Add support for libvterm >= 0.2
- terminal: Implement <c-> for terminal mode
- terminal: Recognize underdouble and undercurl
- terminfo: Bump built-in terminfo entries (#18570)
- treesitter: Allow customizing language symbol name
- treesitter: Add ability to retreive a tree/node given a range
- treesitter: Upstream node methods from nvim-treesitter
- treesitter: Include language in invalid query error (#14053)
- treesitter: Bundle Lua parser and queries
- treesitter: Add viml parser and queries
- treesitter: Add injections
- treesitter: Add vim.treesitter.start(), enable for Lua
- treesitter: Bundle :help parser and queries
- tui: Query terminal for CSI u support (#18181)
- tui: Recognize keypad keys when using kitty keyboard protocol
- tui: Try terminfo for [re]set_cursor_color OSC #19255
- tui: Allow grid and host to disagree on ambiguous-width chars (#19686)
- tui: Recognize sidescroll events (#19992)
- tui: Support 'mousemoveevent'
- ui: Add
'winbar'
- ui: Clear message history explicitly with msg_history_clear event
- ui: Make right-click menu work properly with ext_multigrid
- ui: Allow to set the highlight namespace per window
- ui: Use msg_grid based implementation for cmdheight=0
- ui-ext: Make 'mousemoveevent' a ui_option
- eval: Make Lua Funcref work as method and in substitute() (#20217)
- eval: Input() support any type for "cancelreturn" in a dict (#19357)
Bug Fixes
- Show autocmd output when F is in shortmess (#18251)
- Has() should preserve v:shell_error #18280
- Suppress "is a directory" messages with shortmess 'F' (#18296)
- Display global statusline correctly with ext_messages
- Correct nlua_wait error message #18867
- Right-click in clickable statusline #19252
- Remote UI may get invalid 'pumblend' value #19379
- Assertion failure when requiring missing module in autocmd
- api: Nvim_eval_statusline should validate input #18347
- api: Check error after getting win/buf handle (#19052)
- api: Check for inclusive buffer line index out of bounds correctly (#19056)
- api: Change default value of 'pattern' in nvim_exec_autocmds (#19115)
- api: Do not switch win/buf if getting option in current win/buf (#19383)
- api: Make nvim_set_hl(ns=0, ...) redraw screen properly
- api: Nvim_set_hl bail out on invalid group name (#20021)
- api: Notify dict watchers on nvim_set_var and vim.g setter
- api/command: Fargs behavior when no arguments are passed (#19862)
- autocmds: Separate command from desc (#18617)
- buffer: Disable buffer-updates before removing from window #18933
- build: Missing definitions for sizeof macros #16393
- build: Only pass -municode if MINGW #19049
- build: Strip trailing newline from variable (#19084)
- build: Don't disable byte precompilation on debug builds
- build: Fails if git is missing #19366
- charclass: Make behavior with empty str match latest Vim (#19749)
- checkhealth: Skip vim.health #18816
- ci: Remove 2000ms blocking wait in many plugin/lsp_spec.lua tests
- cmd: Make :-tabmove work with modifiers (#18447)
- cmdheight=0: Various issues part3 #19816
- cmdline: Fix passing -1 as char
- cmdline: Trigger CmdlineEnter and ModeChanged earlier (#19474)
- cmdline: Do not trigger completion at wrong time (#19920)
- cmdline: Don't send invalid cursor with incsearch and cmdheight=0
- column: Move sign sentinel after inserting/de...
Nvim v0.7.2
NVIM v0.7.2
Build type: Release
LuaJIT 2.1.0-beta3
Install
Windows
Zip
- Download nvim-win64.zip
- Extract the zip.
- Run
nvim-qt.exe
MSI
- Download nvim-win64.msi
- Run the MSI
- Search and run
nvim-qt.exe
or runnvim.exe
on your CLI of choice.
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-macos/bin/nvim
Linux (x64)
Tarball
- Download nvim-linux64.tar.gz
- Extract:
tar xzvf nvim-linux64.tar.gz
- Run
./nvim-linux64/bin/nvim
Debian Package
- Download nvim-linux64.deb
- Install the package using
sudo apt install ./nvim-linux64.deb
- Run
nvim
AppImage
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
fa75852890ca4b57551da194c696d3bbd14d9d2e966bc188d1e7e52ee942b71d nvim-linux64.tar.gz
dce77cae95c2c115e43159169e2d2faaf93bce6862d5adad7262f3aa3cf60df8 nvim-linux64.deb
33b5d020c730b6d1b5185b1306ead83b6b8f8fab0239e0580c72b5224a9658e1 nvim.appimage
0ef9478020bb6539b0f8e0d037e65cd5c69bfcb2353ee6231b0131fd30cfbd58 nvim.appimage.zsync
39cb6b62f965dccebe433083e33974e1af3c4579a14bf818066b3d5250968495 nvim-macos.tar.gz
0e969e15c7e4d9b128ec1e06159ead386d262fdc94616ddbb0c245abcc798ae8 nvim-win64.zip
8cd7d3ae8ceeff9c0af8e5b1e216beb86230494f50f2f8dad2684fd2936b1494 nvim-win64.msi
NVIM v0.7.0
NVIM v0.7.0
Build type: Release
LuaJIT 2.1.0-beta3
Install
Windows
Zip
- Download nvim-win64.zip
- Extract the zip.
- Run
nvim-qt.exe
MSI
- Download nvim-win64.msi
- Run the MSI
- Search and run
nvim-qt.exe
or runnvim.exe
on your CLI of choice.
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-osx64/bin/nvim
Linux (x64)
Tarball
- Download nvim-linux64.tar.gz
- Extract:
tar xzvf nvim-linux64.tar.gz
- Run
./nvim-linux64/bin/nvim
Debian Package
- Download nvim-linux64.deb
- Install the package using
sudo apt install ./nvim-linux64.deb
- Run
nvim
AppImage
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
5b3fced3f185ae1e1497cb5f949597c4065585fc26e7cd25a31f5f791dbd9b59 nvim-linux64.tar.gz
4c36e1708b99f24327cde6fff2c19c2b4217e1a289fac90c2c10492df3ea7a71 nvim-linux64.deb
ac1caae4f1c54e0ce126b9313d993cb0d1cc4a81ef3e09dd26772be37aaa61db nvim.appimage
9711fd721732ac189e8fa40aea6aadc5816861cf53f6ac498bd21cd6cf602f85 nvim.appimage.zsync
6260a2edb2da35af02b986c8a6506138afcb3f78f81a80734214b2cadf390a42 nvim-macos.tar.gz
a72a90e2897ea296b777c325a37c981a0b51e2fe0c8b8735e3366b65e958cddc nvim-win64.zip
c79b647338c3728e8d690ff70f81a4dda815adf9195cfdcfaa4f715514b0b3b2 nvim-win64.msi
BREAKING CHANGES
-
Support for Python 2 is dropped. For Python 3, the minimum supported version is 3.6. Legacy
:pythonx
commands are still available, and always uses the python 3 provider. -
api: Existing usages of
nvim_buf_set_text
that use negative line numbers will be off-by-one. -
highlight: signature of
vim.highlight.range
was changed. -
input: distinguish between some input keys which previously were synonyms. This will break some exiting mappings.
<cr>
,<tab>
and<esc>
are no longer considered equivalent to<c-m>
,<c-i>
and<c-[
> respectively. In case the terminal or GUI supports distinguishing these keys, these can now be mapped separately. But even if the terminal only can send one code you might still need to change what variant is used in the config.
Features
Core APIs:
-
api: add support for lua function & description in keymap (b411f43)
-
api: add api and lua autocmds (991e472)
-
api: nvim_clear_autocmd (b80651e)
-
api: pass args table to autocommand callbacks (30bc02c)
-
api: remove Lua autocommand callbacks when they return true (#17784) (be35d3c)
-
api: implement nvim_{add,del}_user_command (eff11b3)
-
api: add nvim_get_option_value (71ac00c)
-
highlight: ns=0 to set :highlight namespace (4aa0cdd)
-
highlight: support for blend in nvim_set_hl (#17516) (b5bf487)
-
api: add strikethrough, nocombine to set_hl (cb18545)
-
api: relax statusline fillchar width check (3011794)
Lua:
-
lua: add vim.keymap (6d41f65)
-
lua: add proper support of luv threads (b87867e)
-
lua: make :lua =expr print result of expr (d442546)
-
lua: handle lazy submodules in
:lua vim.
wildmenu completion (5ed6080) -
lua: add support for multiple optional types in vim.validate (#16864) (55c4393)
-
lua: show proper verbose output for lua configuration (ebfe083)
-
lua: more conversions between LuaRef and Vim Funcref (c8656e4)
-
lua: support converting nested Funcref back to LuaRef (#17749) (cac90d2)
-
call __tostring on lua errors if possible before reporting to user (81bffbd)
-
filetype.lua: add support for files under .git (7a574e5)
-
filetype.lua: add support for patch files (27b664a)
-
filetype.lua: add support for tmux.conf files (94d5358)
-
filetype.lua: Add typescript extension to filetype detection (#16923) (8ade800)
-
filetype.lua: fix .cc file not detected (c38d602)
-
filetype.lua: fix .env file not detected (19864bd)
-
filetype: convert patterns for mail buffers (#17238) (4458413)
-
filetype: support scripts.vim with filetype.lua (#17517) (fdea157)
UI and decorations:
- decorations: support signs (30e4cc3)
- extmarks: add strict option (11142f6)
- api: expose extmark more details (5971b86)
- api: expose extmark right_gravity and end_right_gravity (3d9ae9d)
- use nvim_buf_set_extmark for vim.highlight (#16963) (b455e01)
- statusline: support multibyte fillchar (be15ac0)
- add support for global statusline (5ab1229), closes #9342
Treesitter:
- ui: allow conceal to be defined in decorations and tree-sitter queries (6eca9b6)
- tree-sitter: allow Atom-style capture fallbacks (#14196) (8ab5ec4)
- treesitter: add more default groups to highlight map (#17835) (6d648f5)
- treesitter: multiline match predicates (6e6c36c)
- treesitter: set allocator wh...
NVIM v0.6.1
NVIM v0.6.1 (2021-12-31)
Build type: Release
LuaJIT 2.1.0-beta3
Install
Windows
- Extract nvim-win64.zip
- Run
nvim-qt.exe
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-osx64/bin/nvim
Linux (x64)
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
06f1c19b09dd8cc63f970ef7edab8fa3850a154c296f453393d00854f514a847 nvim-linux64.tar.gz
ef9056e05ef6a4c1d0cdb8b21f79261703122c0fd31f23f782158d326fdadbf5 nvim.appimage
53e60639b49c692cfc54e5e435799aa4cf2cac8fc36ccfadc422bd98ee9cade6 nvim.appimage.zsync
3546be6a13f45411731dc4c93b0932f7d6197b4318ea082cafe7b28d843248f9 nvim-macos.tar.gz
0c1fa8e95882836baec568ad547fe558241f2b26ff738a28e42fafae8c32bcf4 nvim-win64.zip
Thanks to our sponsors!
Thanks to the large number of financial contributors which help make Neovim possible. In particular, these sponsor neovim with $100 per month or more:
- Anton Kochkov
- Airbrake
- Folke Lemaitre
- Shea Parkes
- Roman Fuentes
Changes since 0.6.0
Bug Fixes
- api: allow nvim_buf_set_extmark to accept end_row key (#16686) (1b54344)
- diagnostic: assert that diagnostics have line number and column (#16687) (9dae939)
- diagnostic: clamp diagnostics on negative line numbers (#16497) (096f841)
- diagnostic: escape special chars in file names (#16588) (beac24d)
- diagnostic: respect "if_many" source option for virtual text (#16697) (060eeaa)
- diagnostic: set effective buffer number for DiagnosticChanged autocmd (#16485) (84784a8)
- diagnostic: set effective buffer number in autocmd (again) (#16590) (08ddfa9), closes #16474
- lua: do not cast offset to char_u in str_utf_start (93f1ec0)
- lsp: avoid attaching to unloaded buffers (#16726) (0088994)
- lsp: call config on_exit handler before context is cleared (#16781) (571609f)
- lsp: fix
nil
-index behavior for UTF-8 in_str_*index_enc
methods (#16785) (03bd914) - lsp: handle offset encoding (#16783) (7b60ec7)
- lsp: progress handlers should return vim.NIL on error (#16476) (fb11ef0)
- options: disallow empty 'fdc' and 'scl' (#16776) (37a00be)
- quickfix: avoid O(N^2) when filling from string typval (#16663) (aa0ddc6)
- screenpos, float: add top and left border adjustment (8f68548)
- terminal: fix resize crash with pending scrollback (#16665) (ae249d8)
- ui: close floating window on BufLeave event (#16664) (785bace)
- uri: change scheme pattern to not include the comma character (#16798) (0e96f7d)
Features
NVIM v0.6.0
NVIM v0.6.0
Build type: Release
LuaJIT 2.1.0-beta3
Install
Windows
- Extract nvim-win64.zip
- Run
nvim-qt.exe
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-osx64/bin/nvim
Linux (x64)
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
9a7f72e25747c3839f2c8978ef4f902aada0c60ad4b5ff0cb8b9d4c1f0b35586 nvim-linux64.tar.gz
8a2b8bb009f5a10f2908c6806c4745e064a6032db89de7895805fb979c90a08e nvim.appimage
a20073fc161e3c5ce204e301c39a434943ac9a9dc4438e8371191a014067ac55 nvim.appimage.zsync
03cdbfeec3493f50421a9ae4246abe4f9493715f5e151a79c4db79c5b5a43acc nvim-macos.tar.gz
d46a161a8e025f8a03a75b1181372f2712116e4edf566b2569cdcc4f371f80c4 nvim-win64.zip
Changes since 0.5.0
BREAKING CHANGES
- 32-bit windows builds are no longer provided.
- build deps: use libuv 1.42.0 upstream for WIN32 (#15889) (f6c0a37), closes #15889
- removes Windows 7 support
- removes support for mouse and alternate buffers in TUI for Windows 8 and 8.1
- lsp/diagnostic: highlight groups and signs for LSP diagnostics renamed (e.g.
LspDiagnosticsDefaultWarning
toDiagnosticWarn
) (a5bbb93) - diagnostic: make DiagnosticChanged a first class autocmd (#16098) (150a592), closes #16098
au User LspDiagnosticsChanged
autocommands are not supported. Use the new first-class DiagnosticChanged event instead.
- lua:
register_keystroke_callback
=>on_key
(#15460) (69fe427)- note: this breaking change was included in 0.5.1
Features
- :source, nvim_exec: defer script item creation until s:var access (da9b0ab)
- :source, nvim_exec: support script-local variables (d4ed51e), closes #13143 #11507
- lua: add trimempty optional parameter to vim.split (5fa26e2)
- lua: add vim.str_utf_{start,end} (#16129) (2230b57)
- lua: add vim.str_utf_pos function (d752cbc)
- lsp: aggregate code actions from all clients (#15121) (c36df20)
- api: add lua C bindings for xdiff (#14536) (3d3c0c6)
- api: evaluate statusline string #16020 (9086938)
- api: named marks set, get, delete #15346 (49fdc62)
- api: nvim_get_chan_info: include "argv" for jobs #15537 (0603eba), closes #15440
- api: win_viewport also sends line_count #15613 (086631c)
- api: support :terminal input callback in lua (9e41e82)
- ci: add backport PR action (#14766) (6cc456d)
- decorations: allow more than one stacked highlight in a virt_text (1495d36)
- decorations: support virtual lines (392c658) (8d7816c)
- diagnostic: move vim.lsp.diagnostic to vim.diagostic and support other sources (a5bbb93)
- diagnostic: add 'prefix' option to open_float (#16321) (3c74ba4)
- diagnostic: add option to include diagnostic source (d43151e)
- diagnostic: allow 'prefix' option to return highlight (cc48837)
- diagnostic: allow customized diagnostic messages (#15742) (d999c96)
- diagnostic: match(), tolist(), fromlist() #15704 (e61ea77)
- diagnostic: update jumplist on goto_next/prev (#15942) (b55944e)
- diagnostic: use
scope = 'line'
by default foropen_float()
(#16456) (217f9f8), closes #16453 - diagnostic: support severity_sort (32c0631)
- checkhealth: provide function for command line completion (8b43b07)
- f_chansend: support Blob data argument (7e9ea08)
- job: add parameter to close stdin (eb7f24b)
- keywordprg: use :terminal for external commands #15398 (a90513c), closes #2995 #2761
- lsp: add 'focus' option to open_floating_preview (#16465) (fff8827)
- lsp: add a registry for client side code action commands (6c03601)
- lsp: add client command support to codelens (#15820) (19a77cd)
- lsp: add codeAction/resolve support (#15818) (ec4731d)
- lsp: add exit_timeout flag (#16070) (80456cf)
- lsp: add formatexpr (#16186) (52fa1d2)
- lsp: add lsp healthcheck (e268026)
- lsp: add per-client commands (#16101) (519d8de)
- lsp: add tagfunc (#16103) (f940e7a)
- lsp: add warning message for large log size (e6777a7)
- lsp: allow configuring zindex for floating windows (#15086) (c487a73)
- lsp: allow diagnostics to be disabled for a buffer (#15134) ([1aeb945](1aeb945553a12ab5e88...
NVIM v0.5.1
Nvim release build
NVIM v0.5.1
Build type: Release
LuaJIT 2.1.0-beta3
Release Notes
Install
Windows
- Extract nvim-win64.zip (or nvim-win32.zip)
- Run
nvim-qt.exe
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-osx64/bin/nvim
Linux (x64)
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
d4b5b3984f607eaec1cca1df33120adfbaa89cf167d0cac77eb95fd1a9c21e9d nvim-linux64.tar.gz
1cfbc587ea5598545ac045ee776965a005b1f0c26d5daf5479b859b092697439 nvim.appimage
65be33fc7bfe939019693d3a8781da97def1b848d083d023d172e8a79a3d1f0a nvim.appimage.zsync
d736845b8b63e443970ea93636dfbde3e2673a70d2058c057e41b836ac4f6f6c nvim-macos.tar.gz
0e0dd552a1f28b222b10c07fb94787548cf443b0db6845cf683857e2e13724d2 nvim-win64.zip
d098236b443f487ac82be522e50c4259ee2043370943404db3ab38e06d6d39fa nvim-win32.zip
NVIM v0.5.0
Nvim release build
NVIM v0.5.0
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Release Notes
Install
Windows
- Extract nvim-win64.zip (or nvim-win32.zip)
- Run
nvim-qt.exe
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-osx64/bin/nvim
Linux (x64)
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
SHA256 Checksums
cd59e885143e0fa7e43cfdacbc8e37dc033c56d9205b8f8a8acd08cd9f93737d nvim-linux64.tar.gz
6305a1cab22433bf7871cbfcdb76f0013314f4a6c04e56e1547a6925df17240b nvim.appimage
80cd39bfe4923cadb8d9e8576d6b91df5da60db6ec2f40e9bc9b9258d663dca7 nvim.appimage.zsync
6bcfa5192c9460c946e853dbd1a0baf659df5de184436144147711d1bceedeee nvim-macos.tar.gz
0064bd9f6b270158212ec0a55c1e7255562d4813ad3316592b1f74df041d3c06 nvim-win64.zip
9d0dcdc535ace7500e8395e2d814a415fb9405aedb5cb56382b9f96f98c272e9 nvim-win32.zip
NVIM 0.4.4
Nvim release build.
NVIM v0.4.4
Build type: Release
LuaJIT 2.0.5
Install
Windows
- Extract nvim-win64.zip (or nvim-win32.zip)
- Run
nvim-qt.exe
macOS
- Download nvim-macos.tar.gz
- Extract:
tar xzvf nvim-macos.tar.gz
- Run
./nvim-osx64/bin/nvim
Linux (x64)
- Download nvim.appimage
- 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
- If your system does not have FUSE you can extract the appimage:
Other
- Install by package manager
NVIM 0.4.3
Nvim release build.
NVIM v0.4.3
Build type: Release
LuaJIT 2.0.5