Problem: Text jumps up and down when moving the cursor in a small window
with wrapping text and 'scrolloff' set.
Solution: Adjust the computation of w_skipcol. (partly by Ghjuvan Lacambre,
closesvim/vim#7813)
8f33ebfade
Problem: :argadd in empty buffer changes the buffer name. (Pavol Juhas)
Solution: Don't re-use the current buffer when not going to edit the file.
(closesvim/vim#3397) Do re-use the current buffer for :next.
32bbd00949
Problem: Test_Executable() fails when using chroot.
Solution: Ignore the difference between "sbin" and "bin".
a387083b2f
Cherry-pick Test_Executable() changes from patches v8.1.1921, v8.2.1432
to be in sync with Vim.
N/A patches for version.c:
vim-patch:8.1.0509: checking cwd not accessible fails for root
Problem: Checking cwd not accessible fails for root. (James McCoy)
Solution: Skip this part of the test for root. (closesvim/vim#3595)
0b38f54730
vim-patch:8.2.2487: terminal shows garbage after double-wide character
Problem: Terminal shows garbage after double-wide character with a
combining character. (Kyoichiro Yamada)
Solution: Libvterm: do not add the width of the combining character to the
glyph width. (closesvim/vim#7801)
4549dad874
vim-patch:8.2.2488: json_encode() gives generic argument error
Problem: json_encode() gives generic argument error.
Solution: Mention the type that can't be encoded. (issue vim/vim#7802)
a853089479
'name' param is casted to char_u* within get_option_value().
Most calls to get_option_value() cast arg to 'name' from char to char_u.
Remove these pointless type casts.
All calls to set_context_in_menu_cmd() cast "cmd" arg to char_u.
get_menu_cmd_nodes() doesn't require "cmd" to be unsigned char.
Use "char" type for "cmd" function param to reduce type casts.
'op' param is casted to char_u* within set_val_lval().
Most calls to set_val_lval() cast arg to 'op' from char to char_u.
Remove these pointless type casts.
Problem: Padding in structures wastes memory.
Solution: Move fields to avoid padding. (Dominique Pelle, closesvim/vim#5202)
d6beab0248
Skip "ml_line_len" member of "struct memline".
Patch v8.1.0579 was not ported.
Problem: Confusing error if :winsize has a wrong argument.
Solution: Quote the argument in the error. (closesvim/vim#2523)
f5a5116a96
Cherry-pick Test_winsize_cmd() from patch v8.2.0243.
Before #12937, the only way to specify the `$TERM` for a pty job was
through the `TERM` key in the job's opts dict. This was shuttled to the
child process throug a special field on the PtyProcess object and
injected into the environment after forking.
Now that we have a proper way to specify the environment for a job, we
can simply ensure that the env dict has a proper `TERM` set and avoid
the extra shuttling of data around.
This deprecates the use of the `TERM` option, but will still honor it if
present, although at a lower priority than a `TERM` present in the env
dict.
This also fixes#13874 because we're no longer trying to overwrite
`TERM` in the env dict with the special pty `term_name`. Doing so
raises an internal error because of the existing key which, under
certain circumstances, would cause the "hit enter" prompt. However,
since the child process had already forked, there was no way for the
user to acknowledge the prompt and we would just hang there.
GHA now provides python3.exe by default -- actions/python-versions#78
Ensure Python 2 directory is earlier in $PATH so bare python always
invokes Python 2.
`pumvisible()` returns a number, and numbers are always `true` in Lua,
so the return value needs to be checked explicitly.
Using https://github.com/neovim/neovim/pull/12900 as context, it appears
the intention was to move into the `if` branch when the completion popup
is not shown (i.e. `vim.fn.pumvisible() == 0`).
Problem: Coverity warns for :retab using freed memory.
Solution: Use the updated line pointer when moving text properties.
0dcd39bad5
N/A patches for version.c:
vim-patch:8.2.2457: Coverity warns for memory leak
Problem: Coverity warns for memory leak.
Solution: Free memory when out of memory.
4dba04256b