It's possible for the environment variable block given to nvim to
contain multiple definitions for the same env var. In this case, nvim
should preserve the last one defined.
When starting a pty job, there are certain env vars that we need to
either add or remove. Currently, there are two relevant scenarios.
* Removing irrelevant env vars on Unix, mostly related to the terminal
hosting nvim since they do not apply to a libvterm-hosted terminal.
* Adding required env vars for Windows jobs.
Problem: Cannot easily get all the current marks.
Solution: Add getmarklist(). (Yegappan Lakshmanan, closes#6032)
cfb4b47de0
Cherry-pick the column number fix from patch v8.2.0871
because patch v8.2.0871 cannot be fully ported
without the method patches.
Co-authored-by: Peter Wolf <pwolf2310@gmail.com>
Problem: Flags for Ex commands may clash with other symbols.
Solution: Prepend with EX_.
8071cb2c64
N/A patches for version.c:
vim-patch:8.1.1672: "make cmdidxs" doesn't work
Problem: "make cmdidxs" doesn't work.
Solution: Update macro names. (Naruhiko Nishino, closesvim/vim#4660)
d94ac0caca
Error message for src/nvim/ex_cmds.lua
which omits the "EX_" prefix for the flags.
Problem: Many type casts are used for vim_strnsave().
Solution: Make the length argument size_t instead of int. (Ken Takata,
closesvim/vim#5633) Remove some type casts.
df44a27b53
N/A patches for version.c:
vim-patch:8.2.0315: build failure on HP-UX system
Problem: Build failure on HP-UX system.
Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch
statement. (John Marriott)
c593bec412
vim-patch:8.2.1052: build failure with older compilers
Problem: Build failure with older compilers.
Solution: Move declaration to start of block.
7acde51832
vim-patch:8.2.2229: build failure without the +eval feature
Problem: build failure without the +eval feature.
Solution: Add #ifdef.
39cb2dab18
vim-patch:8.2.2232: compiler error for falling through into next case
Problem: Compiler error for falling through into next case.
Solution: Move FALLTHROUGH below the #endif
9618a25b9c
Problem: Popup test fails if clipboard is supported but not working.
Solution: Add the "clipboard_working" feature. Also use Check commands
instead of "if" and "throw". And remove stray ch_logfile().
4999a7fb65
Treat "clipboard_working" feature as an alias to "clipboard" feature.
N/A patches for version.c:
vim-patch:8.1.1840: Testing: WorkingClipboard() is not accurate
Problem: Testing: WorkingClipboard() is not accurate.
Solution: Check feature clipboard_working instead.
52992feafe
Neovim did not port WorkingClipboard() for the legacy tests.
Problem: Vim9: Using uninitialized variable.
Solution: Initialize "len" to zero. Clean up fnamemodify().
c530852315
N/A patches for version.c:
vim-patch:8.1.0839: when using VTP wrong colors after a color scheme change
Problem: When using VTP wrong colors after a color scheme change.
Solution: When VTP is active always clear after a color scheme change.
(Nobuhiro Takasaki, closesvim/vim#3872)
f58d81a187
vim-patch:8.1.2382: MS-Windows: When using VTP bold+inverse doesn't work
Problem: MS-Windows: When using VTP bold+inverse doesn't work.
Solution: Compare with the default colors. (Nobuhiro Takasaki, closesvim/vim#5303)
a050b9471c
vim-patch:8.2.0669: MS-Windows: display in VTP is a bit slow
Problem: MS-Windows: display in VTP is a bit slow.
Solution: Optimize the code. (Nobuhiro Takasaki, closesvim/vim#6014)
4e5534fab7
vim-patch:8.2.0739: incomplete profiling when exiting because of a dealy signal
Problem: Incomplete profiling when exiting because of a dealy signal.
Solution: Call __gcov_flush() if available.
b415168a98
vim-patch:8.2.1911: tiny build fails
Problem: Tiny build fails.
Solution: Add #ifdef.
977fd0b327
vim-patch:8.2.2140: build failure with tiny features
Problem: Build failure with tiny features.
Solution: Add #ifdef.
2a3cd3af45
Problem: Cannot get window type for autocmd and preview window.
Solution: Add types to win_gettype(). (Yegappan Lakshmanan, closesvim/vim#6277)
0fe937fd86
Cherry-pick test_preview.vim,test_window_cmd.vim changes
from patch v8.2.0522.
Problem: Vim9: getchar() test fails with GUI.
Solution: Avoid that getchar(0) gets stuck on K_IGNORE.
15183b41c4
N/A patches for version.c:
vim-patch:8.1.0323: reverse order of VTP calls only needed the first time
Problem: Reverse order of VTP calls only needed the first time.
Solution: Add a flag to remember the state. (Nobuhiro Takasaki, closesvim/vim#3366)
2551c037e4
vim-patch:8.1.0777: Win32: using pipes for channel does not work well
Problem: Win32: using pipes for channel does not work well.
Solution: Use a larger buffer and handle overlaps. (Yasuhiro Matsumoto,
closesvim/vim#3782)
b091f30bf3
vim-patch:8.1.0933: When using VTP scroll region isn't used properly
Problem: When using VTP scroll region isn't used properly.
Solution: Make better use of the scroll region. (Nobuhiro Takasaki,
closesvim/vim#3974)
6982f42f33
vim-patch:8.1.0938: background color is wrong in MS-Windows console
Problem: Background color is wrong in MS-Windows console when not using VTP.
Solution: Use g_attrCurrent. (Nobuhiro Takasaki, closesvim/vim#3987)
21edde8742
vim-patch:8.2.0178: with VTP the screen may not be restored properly
Problem: With VTP the screen may not be restored properly.
Solution: Add another set of saved RGB values. (Nobuhiro Takasaki,
closesvim/vim#5548)
df54382eac
vim-patch:8.2.0248: MS-Windows: dealing with deprecation is too complicated
Problem: MS-Windows: dealing with deprecation is too complicated.
Solution: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build
file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken
Takata, closesvim/vim#5626)
2f18975088
vim-patch:8.2.0547: Win32: restoring screen not always done right
Problem: Win32: restoring screen not always done right.
Solution: Use a more appropriate method. (Nobuhiro Takasaki, closesvim/vim#5909)
e7f234120f
vim-patch:8.2.0581: Win32 console: the cursor position is always top-left
Problem: Win32 console: the cursor position is always top-left.
Solution: Revert the patch for restoring screen.
81ccbf199f
vim-patch:8.2.0592: MS-Windows with VTP: cursor is not made invisible
Problem: MS-Windows with VTP: cursor is not made invisible.
Solution: Output the code to make the cursor visible or invisible. (Nobuhiro
Takasaki, closesvim/vim#5941)
2695de63e3
vim-patch:8.2.0646: t_Co uses the value of $COLORS in the GUI
Problem: t_Co uses the value of $COLORS in the GUI. (Masato Nishihata)
Solution: Ignore $COLORS for the GUI. (closesvim/vim#5992)
759d81549c
vim-patch:8.2.0658: HP-UX build fails when setenv() is not defined
Problem: HP-UX build fails when setenv() is not defined.
Solution: Change "colors" to "t_colors". (John Marriott)
affc8fd2cd
vim-patch:8.2.0793: MS-Windows: cannot build GUI with small features
Problem: MS-Windows: cannot build GUI with small features. (Michael Soyka)
Solution: Add #ifdef around use of windowsVersion. (Ken Takata)
1e1d2e89fa
vim-patch:8.2.1975: Win32: memory leak when encoding conversion fails
Problem: Win32: memory leak when encoding conversion fails.
Solution: Free the allocated memory. (Ken Takata, closesvim/vim#7277)
bbf9f344af
vim-patch:8.2.1991: Coverity warns for not using the ga_grow() return value
Problem: Coverity warns for not using the ga_grow() return value.
Solution: Bail out if ga_grow() fails. (Yegappan Lakshmanan, closesvim/vim#7303)
ca359cbedd
vim-patch:8.2.1992: build fails with small features
Problem: Build fails with small features.
Solution: Add #ifdef.
4792a679f9
vim-patch:8.2.1993: occasional failure of the netbeans test
Problem: Occasional failure of the netbeans test.
Solution: Add "silent!". (Yegappan Lakshmanan, closesvim/vim#7304)
50dc3ecc64
vim-patch:8.2.1994: MS-Windows: MinGW always does a full build
Problem: MS-Windows: MinGW always does a full build.
Solution: Only check if $OUTDIR exists. (Masamichi Abe, closesvim/vim#7311)
c4390fe6c0
vim-patch:8.2.1998: terminal Cmd test sometimes fails to close popup
Problem: Terminal Cmd test sometimes fails to close popup.
Solution: Add "term_finish" option.
27f4f6baee
vim-patch:8.2.1999: terminal popup test sometimes fails
Problem: Terminal popup test sometimes fails.
Solution: Wait for the popup to close.
e6329e4c55
vim-patch:8.2.2003: build error with +conceal but without +popupwin
Problem: Build error with +conceal but without +popupwin.
Solution: Add #ifdef. (Tom Ryder, closesvim/vim#7316)
1efefda623
vim-patch:8.2.2007: test for insert mode in popup is not reliable
Problem: Test for insert mode in popup is not reliable.
Solution: Wait for the popup to disappear. (Ozaki Kiichi, closesvim/vim#7321)
17ab28daa0
vim-patch:8.2.2008: MS-Windows GUI: handling channel messages lags
Problem: MS-Windows GUI: handling channel messages lags.
Solution: Reduce the wait time from 100 to 10 msec. (closesvim/vim#7097)
032f40afb8
vim-patch:8.2.2009: MS-Windows: setting $LANG in gvimext only causes problems
Problem: MS-Windows: setting $LANG in gvimext only causes problems.
Solution: Do not set $LANG. (Ken Takata, closesvim/vim#7325)
382319211a
Problem: 'completeslash' also applies to globpath().
Solution: Add the WILD_IGNORE_COMPLETESLASH flag. (test by Yasuhiro
Matsumoto, closesvim/vim#4760)
Problem: resolve('/') returns an empty string.
Solution: Don't remove single slash. (closesvim/vim#7074)
50c4e9e08f
Cherry-pick the test rename from Test_resolve() to Test_resolve_unix()
from patch 8.1.0894.
N/A patches for version.c:
vim-patch:8.1.0929: no error when requesting ConPTY but it's not available
Problem: No error when requesting ConPTY but it's not available.
Solution: Add an error message. (Hirohito Higashi, closesvim/vim#3967)
5acd987258
vim-patch:8.1.1535: popup select test fails on Mac
Problem: Popup select test fails on Mac.
Solution: Skip test if clipboard feature not available.
650a63748c
vim-patch:8.1.1536: popup select test still fails on Mac
Problem: Popup select test still fails on Mac.
Solution: Set 'clipboard' to "autoselect"
1755ec4278
vim-patch:8.1.1604: popup window scroll test is flaky
Problem: Popup window scroll test is flaky.
Solution: Add a delay between scroll events.
13b47c37a6
vim-patch:8.1.1668: popup window test is a bit flaky on some systems
Problem: Popup window test is a bit flaky on some systems.
Solution: Clear the command line. (Naruhiko Nishino, closesvim/vim#4656)
8ccabf624e
vim-patch:8.1.1935: test for text property popup window is flaky
Problem: Test for text property popup window is flaky.
Solution: Remove the undo message
57441d6fa0
vim-patch:8.1.2347: MacOS: build fails
Problem: MacOS: build fails.
Solution: Don't define _XOPEN_SOURCE for Mac.
84f903326d
vim-patch:8.2.0351: terminal in popup test is still a bit flaky
Problem: Terminal in popup test is still a bit flaky.
Solution: Clear and redraw before opening the popup.
3e919d2924
vim-patch:8.2.0752: terminal in popup window test is a bit flaky
Problem: Terminal in popup window test is a bit flaky.
Solution: Wait for shell job status to be "run". Mark as flaky test.
e06a28f5e3
vim-patch:8.2.1087: possible memory leak when file expansion fails
Problem: Possible memory leak when file expansion fails.
Solution: Clear the grow array when returning FAIL. Use an error message
instead of an empty string.
566cc8c72b
vim-patch:8.2.1863: json code not sufficiently tested
Problem: Json code not sufficiently tested.
Solution: Add more test cases. (Dominique Pellé, closesvim/vim#7166)
e3c65ce4e5
Problem: trim() always trims both ends.
Solution: Add an argument to only trim the beginning or end. (Yegappan
Lakshmanan, closesvim/vim#6126)
2245ae18e3
Problem: "vat" does not select tags correctly over line break.
Solution: Adjust the search pattern. (Aufar Gilbran, closesvim/vim#7136)
a604ccc959
Use 'const char*' for spat,mpat,epat params of do_searchpair()
to reduce (char_u *) casts.
Cherry-pick Test_string_html_objects() changes from patch 8.2.0655.
Problem: Computing function length name in many places.
Solution: compute name length in call_func().
6ed8819822
In call_func(), reassign "len" param to (int)STRLEN(funcname)
instead of using vim_strsave() which runs strlen().
"len" param is checked for v:lua functions.
call_func() states that strlen() is used if "len" is set to -1.
Problem: Not so easy to interrupt a script programatically.
Solution: Add the interrupt() function. (Yasuhiro Matsumoto, closesvim/vim#2834)
67a2deb9cb
vim-patch:8.2.1054: not so easy to pass a lua function to Vim
vim-patch:8.2.1084: Lua: registering function has useless code
I think I have also opened up the possibility for people to use these
callbacks elsewhere, since I've added a new struct that we should be
able to use.
Also, this should allow us to determine what the state of a list is in
Lua or a dictionary in Lua, since we now can track the luaref as we go.
When UV_OVERLAPPED_PIPE was used for the pipe passed to the child process, a
problem occurred with the standard input of the .Net Framework application
(#11809). Therefore, add the overlapped option to jobstart() and change it so
that it is set only when necessary
Problem: Cannot delete a match from another window. (Paul Jolly)
Solution: Add window ID argument to matchdelete(), clearmatches(),
getmatches() and setmatches(). (Andy Massimino, closesvim/vim#4178)
aff749145e