- Update to 0.10.2
- 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: Don't include <Lua function> in -complete= (#30209)
* decor: Don't use separate DecorSignHighlight for url (#30096)
* decor: Exclude invalid marks from meta total
* diagnostics: Don't apply extmarks to invalid lines #29321
* diff: Use mmfile_t in linematch
* filetype: Handle .in files with no filename (#30487)
* float: Properly find last window of tabpage (#30571)
* health: Fix pyenv root and python exepath detect issue
* health: Return correct name from 'path2name()'
* lsp: Don't send foreign diagnostics to servers in buf.code_action (#29501)
* lsp: Avoid reusing diagnostics from different servers in actions (#30002)
* lsp: Return call hierarchy item, not the index (#30145)
* lsp: Handle out-of-bounds character positions #30288
* lsp: Handle encoding bounds in str_utfindex_enc
* lsp: Handle nil bytes in strings
* lua: Ignore stdout and stderr for xdg-open
* man: Avoid setting v:errmsg (#30052)
* man: Check if buffer is valid before restoring 'tagfunc' (#30180)
* regexp: Fix typo in E888 error message (#30161)
* runtime: Sync bundled treesitter queries
* runtime: Sync bundled treesitter queries (forwarded request 1205561 from mvyskocil)
OBS-URL: https://build.opensuse.org/request/show/1205619
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/neovim?expand=0&rev=67
- 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: Don't include <Lua function> in -complete= (#30209)
* decor: Don't use separate DecorSignHighlight for url (#30096)
* decor: Exclude invalid marks from meta total
* diagnostics: Don't apply extmarks to invalid lines #29321
* diff: Use mmfile_t in linematch
* filetype: Handle .in files with no filename (#30487)
* float: Properly find last window of tabpage (#30571)
* health: Fix pyenv root and python exepath detect issue
* health: Return correct name from 'path2name()'
* lsp: Don't send foreign diagnostics to servers in buf.code_action (#29501)
* lsp: Avoid reusing diagnostics from different servers in actions (#30002)
* lsp: Return call hierarchy item, not the index (#30145)
* lsp: Handle out-of-bounds character positions #30288
* lsp: Handle encoding bounds in str_utfindex_enc
* lsp: Handle nil bytes in strings
* lua: Ignore stdout and stderr for xdg-open
* man: Avoid setting v:errmsg (#30052)
* man: Check if buffer is valid before restoring 'tagfunc' (#30180)
* regexp: Fix typo in E888 error message (#30161)
* runtime: Sync bundled treesitter queries
* runtime: Sync bundled treesitter queries
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=164
optional (behind bcond) - this fixes s390x
- enable luajit for riscv64, which leaves ppc64le as the lone arch
which uses lua
- remove post and postun from the spec template, as most standard
packages don't need this (and ChangeLog file, as most projects dont use this
file anymore.
- revert back to default compiler flags
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=156
- add versioning to some dependencies, as neovim is quite picky
- fix template.spec so when creating a new spec file, it doesn't pull in
vims skeleton.spec
- Update to 0.10.1
- Features
* lsp: Update LSP healthcheck format
- 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
* Remove -O2 from gen_cflags
* Reuse code for deps.txt for both deps and main build
- Bug Fixes
* Show swapfile warning as a warning
* Assert failure in VimL expression parser
* api: Alloc and draw cursor window in nvim__redraw
* colorscheme: Underline StatusLineNC with 'notermguicolors'
* column: Crash with 'signcolumn' set to "number"
* column: Clamp line number for legacy signs
* column: Modifying a sign should update placed signs
* comment: Fall back to using trimmed comment markers
* defaults: Default @/Q broken when 'ignorecase' is set
* drawline: Don't draw beyond end of window
* drawline: Don't draw beyond end of window with 'rnu'
* extmarks: Issues with revalidating marks
* filetype: Fix typos in filetype detection
* float: Handle error in win_float_create()
* fs: Make vim.fs.root work for relative paths and unnamed buffers
* health: Broken ruby detect
* health: Fix fetching url with python in provider health
* input: Handle vim.on_key() properly with ALT and K_SPECIAL
* lsp: Add textDocument/documentLink to capability map
* lsp: Hide layout in codelenses in virtual text
* lsp: Detach all clients on_reload to force buf_state reload
* lsp: Trigger LspDetach on buffer delete
* lsp: Check if buffer was detached in on_init callback
* lsp: Handle nil root_dir in health check
* lsp: Do not detach from buffer if there are uninitialized clients
* lsp: Clear lsp client diagnostics
* lsp: Remove superfluous on_detach callback from semantic tokens module
* lsp: Do not reset buf version when detaching client
* lsp: Avoid vim.keymap.del error when stopping a client
* lsp: Don't show codelens for buffers that don't support it
* lsp: Inlay hints are rendered in the correct order
* lua: Change some vim.fn.expand() to vim.fs.normalize()
* marks: Revalidate marks whose position did not change
* mouse: Early return when clicking in padded 'statuscolumn'
* move: Half-page scrolling with resized grid at eob
* path: Avoid chdir() when resolving path
* quickfix: Make shortmess+=O work with cmdheight=0
* runtime: Source c ftplugin properly for cpp on Windows
* runtime: Add commentstring for glsl ftplugin
* snippet: Don't override unnamed register on tabstop select
* snippet: Cancel snippet session when leaving the buffer
* snippet: Modify base indentation when there's actually whitespace
* tohtml: Replace ipairs with pairs
* tohtml: Ignore lsp inlay hints
* tohtml: Show how many warnings are hidden
* tohtml: Properly handle multiple hl groups
* 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
* treesitter: Display fields for anonymous nodes in :InspectTree
* treesitter: Recognize aliased parsers in omnifunc, query linter
* tui: Remove duplicate disabling of synchronized output
* tui: Move $COLORTERM check to _defaults.lua
* tui: Skip TUI in ui_rgb_attached
* ui: Flush ext_cmdline events before doing cmdpreview
* ui: Superfluous showmode / excessive grid_cursor_goto
* ui: Avoid ambiguity about last chunk when flushing halfway
* version: Fix vim.version().prerelease
* vim.text: Remove assert from vim.text.hexdecode
* win-msi: Add bin to PATH per-machine after installation
- Documentation
* Update LSP quickstart
* Misc
* Document 'list' behavior when 'listchars' excludes "tab"
* Fix more treesitter parsing errors
* Misc
* lpeg: Merge upstream changes
* lsp: Format the handwritten part
* Refactor
* Replace deprecated vim.loop with vim.uv
* lsp: Reuse buf_detach_client logic in on_detach
* path.c: Add nonnull attributes
* tests: Use more global highlight definitions
* tests: More global highlight definitions
OBS-URL: https://build.opensuse.org/request/show/1191018
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/neovim?expand=0&rev=64
- remove fedora compatibility as requested by a reviewer
- remove the older SUSE releases compatibility as 0.10.0 requires
newer stuff anyway
- remove spec-template and lj-busted.sh from sources
- Update to 0.10.0
- Packaging changes:
- remove %check as it depends on a lua code bump now
- bump vterm and other dependencies to match upstream
- Breaking changes:
- 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:
OBS-URL: https://build.opensuse.org/request/show/1177052
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=147
- Update to version 0.9.4:
This is a maintenance release, focusing on bug fixes.
- build: Fix exporting symbols on macOS Sonoma
- api: Handle NUL in nvim_err_write() and nvim_out_write()
- autocmd: Api functions accepting garbage after event name
- clang: Null pointer dereference in parse_msgpack
- clipboard: Don't pass --foreground to wl-copy
- exception: Remember whether message is multiline
- float: Update position of anchored windows first
- float: Fix some other crashes with :unhide or :all
- lua: Not using global value in vim.opt_global
- lua: Show error message when failing to set variable
- mouse: Click on 'statuscolumn' with 'rightleft'
- path: Accept special characters on Windows
- provider: Fix python3 provider cannot detect python3.12
- provider/pythonx: Import the correct module
- rpc: Fix race condition
- runtime: Add commentstring for D ftplugin
- statuscolumn: Update number hl for each screen line
- terminal: Check terminal size at end of screen update
- treesitter: Remove more double recursion
- ui: "resize -1" with cmdheight=0
- unhide: Close floating windows first
- unittests: Ignore __s128 and __u128 types in ffi
- tutor: Clarify the meaning of ✗ and ✓
OBS-URL: https://build.opensuse.org/request/show/1117794
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/neovim?expand=0&rev=56
This is a maintenance release, focusing on bug fixes.
- build: Fix exporting symbols on macOS Sonoma
- api: Handle NUL in nvim_err_write() and nvim_out_write()
- autocmd: Api functions accepting garbage after event name
- clang: Null pointer dereference in parse_msgpack
- clipboard: Don't pass --foreground to wl-copy
- exception: Remember whether message is multiline
- float: Update position of anchored windows first
- float: Fix some other crashes with :unhide or :all
- lua: Not using global value in vim.opt_global
- lua: Show error message when failing to set variable
- mouse: Click on 'statuscolumn' with 'rightleft'
- path: Accept special characters on Windows
- provider: Fix python3 provider cannot detect python3.12
- provider/pythonx: Import the correct module
- rpc: Fix race condition
- runtime: Add commentstring for D ftplugin
- statuscolumn: Update number hl for each screen line
- terminal: Check terminal size at end of screen update
- treesitter: Remove more double recursion
- ui: "resize -1" with cmdheight=0
- unhide: Close floating windows first
- unittests: Ignore __s128 and __u128 types in ffi
- tutor: Clarify the meaning of ✗ and ✓
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=136
- Update to version 0.9.2:
- 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.
- Breaking change:
- An adjustment was made to the grid_line event as part of
the exernal 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 UI:s can safely ignore such an empty item and most
UIs already handle this fine. But it could break UI:s 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 'statuscol'
- 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
- Remove unnecessary neovim-rpmlintrc.
OBS-URL: https://build.opensuse.org/request/show/1109538
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/neovim?expand=0&rev=55
- 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.
- Breaking change:
- An adjustment was made to the grid_line event as part of
the exernal 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 UI:s can safely ignore such an empty item and most
UIs already handle this fine. But it could break UI:s 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 'statuscol'
- 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
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=133
- Update 0.8.3:
- clipboard: Show provider warning when not during batch
changes
- diff: Avoid restoring invalid 'foldcolumn' value
- filetype: Don't pass empty string to detect
- messages: Reset msg_grid_scroll_discount when redrawing
- rbuffer: Handle edge case where write_ptr has wrapped around
- rpc: Don't parse msgpack if buflen is 0
- treesitter: Properly restore 'syntax' (#21358)
- treesitter: Validate language name
OBS-URL: https://build.opensuse.org/request/show/1062687
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/neovim?expand=0&rev=50
- clipboard: Show provider warning when not during batch
changes
- diff: Avoid restoring invalid 'foldcolumn' value
- filetype: Don't pass empty string to detect
- messages: Reset msg_grid_scroll_discount when redrawing
- rbuffer: Handle edge case where write_ptr has wrapped around
- rpc: Don't parse msgpack if buflen is 0
- treesitter: Properly restore 'syntax' (#21358)
- treesitter: Validate language name
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=123
- Update to version 0.8.2:
- This primarily a bug fix release but some improvements to
documentation has been back-ported as well.
- Features
help: Highlighted codeblocks
- Documentation
- lua: Add guide to using Lua in Neovim
- Mention how to remove the "How-to disable mouse" menu item
- Fix order of numbers in syntax.txt
- lua: Correct the tags for vim.opt_local and vim.opt_global
- Bug Fixes
- api: Set correct curbuf when temporarily changing curwin
- api: "emsg_silent" should imply "silent" in nvim_cmd
- decoration: Do not reset must_redraw after calling
providers
- diagnostic: Clear stale cache on reset
- events: Save v:event for cmdline autocommands separately
- float: Fix ml_get error with bufpos
- float: Fix crash with bufpos and non-existent window
- folds: Use long for number of folded lines
- mappings: Use all buckets in second round of unmap
- memory: Fix memory alignment for dynamic allocation
- options: Fix local 'sidescrolloff' doesn't work for mouse
- options: Restore exists() behavior for options
- terminal: Fix 'mousescroll' not respected in terminal mode
- tui: Set cursor color parameter as string when required
- win_close: Remove float grid after closing buffer
- Build System Fixes
- Restrict git describe to top level source directory
OBS-URL: https://build.opensuse.org/request/show/1045759
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/neovim?expand=0&rev=48
- This primarily a bug fix release but some improvements to
documentation has been back-ported as well.
- Features
help: Highlighted codeblocks
- Documentation
- lua: Add guide to using Lua in Neovim
- Mention how to remove the "How-to disable mouse" menu item
- Fix order of numbers in syntax.txt
- lua: Correct the tags for vim.opt_local and vim.opt_global
- Bug Fixes
- api: Set correct curbuf when temporarily changing curwin
- api: "emsg_silent" should imply "silent" in nvim_cmd
- decoration: Do not reset must_redraw after calling
providers
- diagnostic: Clear stale cache on reset
- events: Save v:event for cmdline autocommands separately
- float: Fix ml_get error with bufpos
- float: Fix crash with bufpos and non-existent window
- folds: Use long for number of folded lines
- mappings: Use all buckets in second round of unmap
- memory: Fix memory alignment for dynamic allocation
- options: Fix local 'sidescrolloff' doesn't work for mouse
- options: Restore exists() behavior for options
- terminal: Fix 'mousescroll' not respected in terminal mode
- tui: Set cursor color parameter as string when required
- win_close: Remove float grid after closing buffer
- Build System Fixes
- Restrict git describe to top level source directory
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=119
- Update to version 0.8.1:
+ 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
OBS-URL: https://build.opensuse.org/request/show/1043902
OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=117