when using the rbuffer as a linear buffer, exactly filling the buffer
will case write_ptr to wrap around too early. For now detect this
special case.
Of course, the rbuffer should refactored to a proper ring buffer where
write_pos >= read_pos always and there is no special case for full
buffers. This will be a follow up change.
(cherry picked from commit 8ebdb97ea7)
Problem: `*.db` files use empty string as default filetype, which is
inconsistent with the rest of the code which uses `nil` instead.
Solution: don't pass a default empty string
(cherry picked from commit 8bfde69007)
Included patches:
821. By Paul "LeoNerd" Evans on 2022-12-29
Don't bother to emit the unrecognised sequence in DECRQSS response as it provides an echo roundtrip possibility
820. By Paul "LeoNerd" Evans on 2022-11-26
erase_internal() should only set fg/bg colour, resetting other attributes (especially RV)
819. By Paul "LeoNerd" Evans on 2022-11-09
Added vterm_screen_set_default_colors(), which repaints the cells in the buffer(s)
818. By Paul "LeoNerd" Evans on 2022-11-09
Permit either colour argument to be NULL to vterm_state_set_default_colors()
817. By Paul "LeoNerd" Evans on 2022-10-01
Delete the mk_wcswidth functions as they're not used; guard the CJK-wide one with an ifdef as by default we don't use it
816. By Paul "LeoNerd" Evans on 2022-10-01
Make sure to supply empty (void) prototype to functions that take no arguments in bin/vterm-ctrl.c
(cherry picked from commit 7295ed1f6f)
Use "0" for 'foldcolumn' when w_p_fdc_save is empty, like how
"manual" is used for 'foldmethod' when w_p_fdm_save is empty.
(cherry picked from commit 5f04b164e6)
It is strange that Ex commands that explicitly interact with the
clipboard show provider warning, but Normal mode commands do not.
(cherry picked from commit c98571de2a)
Features
- help: Highlighted codeblocks for plugin documentation
Documentation
- lua: Add guide to using Lua in Neovim (#21137)
- 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 (#21138)
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 (#21454)
- 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
Problem: ModeChanged autocmd not executed when Visual mode is ended with
CTRL-C.
Solution: Do not trigger the autocmd when got_int is set. (closesvim/vim#11394)
61c4b04799
Cherry-pick removal of cmdwin feature check from patch 9.0.0663.
(cherry picked from commit 0b3328d15a)
It is not safe to remove the float grid when autocommands can still be
triggered, as autocommands may use the float grid.
(cherry picked from commit 9a5e80af56)
Add introductory guide explaining how to use Lua in Neovim:
where to put Lua files, how to set variables and options, how
to create mappings, autocommands, and user commands.
Adapted with kind permission from
https://github.com/nanotee/nvim-lua-guide
Duplicating get_option_value() logic for an obscure future refactor
isn't really worthwhile, and findoption() isn't used anywhere else
outside the options code.
(cherry picked from commit 09841ccbc3)
The BufWipeout autocmd is not 100% reliable and may leave stale entries
in the cache. This is sort of a hack/workaround to ensure
`vim.diagnostic.reset` calls don't fail if there are stale cache entries
but instead clears them
Fixes errors like
Error executing vim.schedule lua callback: /usr/share/nvim/runtime/lua/vim/diagnostic.lua:1458: Invalid buffer id: 22
stack traceback:
[C]: in function 'nvim_exec_autocmds'
/usr/share/nvim/runtime/lua/vim/diagnostic.lua:1458: in function 'reset'
(cherry picked from commit 1743359235)
Problem: screenpos() column result in fold may be too small.
Solution: Add space of 'number', sign column, etc. (closesvim/vim#11715)
ba2d191932
(cherry picked from commit 56b77dc171)