Commit Graph

15316 Commits

Author SHA1 Message Date
bfredl
0b63f5afad perf(ui): unpack grid_line (screen contents) directly 2022-07-19 12:38:37 +02:00
zeertzjq
7b835ba796 vim-patch:8.2.1147 (#19425)
vim-patch:8.2.1147: :confirm may happen in cooked mode

Problem:    :confirm may happen in cooked mode. (Jason Franklin)
Solution:   Switch to raw mode before prompting. (Brandon Pfeifer)
27321dbeed

Code is N/A, but this improves tests. Port the improved tests to Lua.
2022-07-19 13:00:22 +08:00
JP
1a655b71a8 fix(lua): make it possible to cancel vim.wait() with Ctrl-C (#19217) 2022-07-19 09:11:13 +08:00
Munif Tanjim
a80d447b47 fix(mouse): click on global statusline with splits (#19390) 2022-07-19 06:35:04 +08:00
Enan Ajmain
3340728c72 fix(powershell): filter ":!" commands with args #19268
Problem:
Since 0b9664f524 powershell filtered
:[range]! commands with args causes error:
"Start-Process: A positional parameter cannot be found that accepts argument ..."

Solution:
Pass args to Start-Process via `-ArgumentList`.
closes #19250
2022-07-18 13:26:09 -07:00
Lewis Russell
d73c31a41f Merge pull request #19167 from dundargoc/refactor/conversion
refactor: enable -Wconversion warning for memline.c
2022-07-18 20:22:18 +01:00
bfredl
be3d2f5125 perf(ui): avoid ui_flush() work in headless mode 2022-07-18 14:08:44 +02:00
bfredl
45bee1dafd perf(ui): eliminate spurious memory allocations for hl_attr_define event 2022-07-18 14:08:44 +02:00
bfredl
67a04fe6cb perf(ui): unpack a single ui event at a time, instead of a "redraw" batch
This reduces the memory overhead for large redraw batches, as a much smaller
prefix of the api object buffer is used and needs to be hot in cache.
2022-07-18 14:08:44 +02:00
Enan Ajmain
1b462705d0 fix(windows):exepath, stdpath return wrong slashes #19111
exepath and stdpath should respect shellslash and return path with
proper file separator.
Closes #13787
2022-07-17 17:00:08 -07:00
Gregory Anders
5ccdf6a88d vim-patch:9.0.0055 (#19392)
vim-patch:9.0.0055: bitbake files are not detected

Problem:    Bitbake files are not detected.
Solution:   Add bitbake filetype detection by file name and contents. (Gregory
            Anders, closes vim/vim#10697)
fa49eb4827
2022-07-17 14:33:51 +02:00
matveyt
eb9b93b5e0 feat(defaults): mouse=nvi #19290
Problem:
Since right-click can now show a popup menu, we can provide messaging to
guide users who expect 'mouse' to be disabled by default. So 'mouse' can
now be enabled by default.

Solution:
Do it.
Closes #15521
2022-07-17 04:14:04 -07:00
zeertzjq
006334f3a7 vim-patch:8.2.2427: can still switch windows for 'completefunc'
Problem:    Can still switch windows for 'completefunc'.
Solution:   Also disallow switching windows for other completions.
3eb6bd9c2b

Assert E565 instead of E578.
Need to assert a different string because patch 8.2.1919 hasn't been
ported yet.
2022-07-17 13:51:46 +08:00
zeertzjq
f72ec95958 vim-patch:8.2.2426: allowing 'completefunc' to switch windows causes trouble
Problem:    Allowing 'completefunc' to switch windows causes trouble.
Solution:   use "textwinlock" instead of "textlock".
28976e2acc

Assert E565 instead of E578.

vim-patch:8.2.0670: cannot change window when evaluating 'completefunc'

Problem:    Cannot change window when evaluating 'completefunc'.
Solution:   Make a difference between not changing text or buffers and also
            not changing window.
6adb9ea0a6

vim-patch:8.2.5029: "textlock" is always zero

Problem:    "textlock" is always zero.
Solution:   Remove "textlock" and rename "textwinlock" to "textlock".
            (closes vim/vim#10489)
cfe456543e
2022-07-17 13:51:46 +08:00
zeertzjq
b0bbcfa239 vim-patch:8.2.2424: some tests are known to cause an error with ASAN
Problem:    Some tests are known to cause an error with ASAN.
Solution:   Add CheckNotAsan.
97202d9516

Move CheckNotMSWindows to the right place.
Omit test_memory_usage.vim: a Lua test is used for this file.
2022-07-17 13:51:46 +08:00
zeertzjq
656a1889ee vim-patch:8.2.1984: cannot use :vimgrep in omni completion
Problem:    Cannot use :vimgrep in omni completion, causing C completion to
            fail.
Solution:   Add the EX_LOCK_OK flag to :vimgrep. (closes vim/vim#7292)
33aecb1f2c

Cherry-pick Test_resize_from_copen() indent change from patch 8.2.1432.
2022-07-17 13:51:46 +08:00
zeertzjq
7e79cb56c5 vim-patch:8.2.1294: Vim9: error when using vim9script in TextYankPost
Problem:    Vim9: error when using vim9script in TextYankPost.
Solution:   Use EX_LOCKOK instead of the EX_CMDWIN flag for command that can
            be used when text is locked. (closes vim/vim#6529)
37394ff752
2022-07-17 13:51:46 +08:00
zeertzjq
95b1191505 vim-patch:8.2.0698: insert mode completion not fully tested
Problem:    Insert mode completion not fully tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#6041)
f9ab52e155

Cherry-pick test_ins_complete.vim changes from patches 8.2.{0522,0615}.
2022-07-17 13:51:39 +08:00
zeertzjq
7c3a87182d vim-patch:8.2.1040: not enough testing for movement commands
Problem:    Not enough testing for movement commands.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#6313)
bdd2c290d3

Cherry-pick test_functions.vim changes from patch 8.2.0183.
Cherry-pick Test_normal18_z_fold() change from patch 8.2.0540.
2022-07-17 11:08:14 +08:00
zeertzjq
e53330a603 vim-patch:8.2.0655: search code not sufficiently tested
Problem:    Search code not sufficiently tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#5999)
224a5f17c6

Cherry-pick test_charsearch.vim change from patch 8.2.0448.
Cherry-pick test_search.vim changes from patch 8.2.0619.
2022-07-17 10:03:58 +08:00
zeertzjq
9f837a5dcf fix(api): fix nvim_parse_cmd interfere with printing line in Ex mode (#19400) 2022-07-17 09:59:32 +08:00
zeertzjq
0cfd4fa8f3 vim-patch:8.2.2643: various code not covered by tests
Problem:    Various code not covered by tests.
Solution:   Add a few more test. (Yegappan Lakshmanan, closes vim/vim#7995)
1f448d906b

Cherry-pick some test_edit.vim changes from patches 8.2.{1022,1432}.
Reorder test_undo.vim to match upstream.
2022-07-16 22:46:54 +08:00
zeertzjq
780edfc0eb vim-patch:8.2.2608: character input not fully tested
Problem:    Character input not fully tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#7963)
f4fcedc59d

Cherry-pick related changes from patches 8.2.{0433,0866}.
2022-07-16 21:55:27 +08:00
zeertzjq
bc73795a58 vim-patch:8.2.0198: no tests for y/n prompt
Problem:    No tests for y/n prompt.
Solution:   Add tests. (Dominique Pelle, closes vim/vim#5564)
43c60eda2a
2022-07-16 21:32:25 +08:00
zeertzjq
f7c6676199 vim-patch:8.2.0052: more-prompt not properly tested
Problem:    More-prompt not properly tested.
Solution:   Add a test case. (Dominique Pelle, closes vim/vim#5404)
c6d539b671
2022-07-16 21:32:25 +08:00
zeertzjq
711a6a9157 fix(ex_cmds): correct flags for :const (#19387) 2022-07-16 14:54:31 +08:00
zeertzjq
fa29bc94b5 vim-patch:8.2.0593: finding a user command is not optimal (#19386)
Problem:    Finding a user command is not optimal.
Solution:   Start further down in the list of commands.
a494f56f88
2022-07-16 13:49:48 +08:00
zeertzjq
591765c915 vim-patch:8.2.1061: insufficient testing for src/window.c (#19384)
Problem:    Insufficient testing for src/window.c.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#6345)
5d3c9f8c2a

Cherry-pick test_tagjump.vim changes from patch 8.1.2373.
2022-07-16 11:34:19 +08:00
zeertzjq
73526abbbd fix(api): do not switch win/buf if getting option in current win/buf (#19383) 2022-07-16 09:31:05 +08:00
zeertzjq
33da7d83e8 fix(pum): make right drag in anchor grid to select work in multigrid UI (#19382) 2022-07-16 08:26:40 +08:00
Natasha England-Elbro
86f0da922f fix: remote UI may get invalid 'pumblend' value #19379
fixes: https://github.com/neovim/neovim/issues/19340
2022-07-15 10:42:01 -07:00
Famiu Haque
6645f59832 fix: right-click in clickable statusline #19252
Problem:
1. Right-click does not work in statusline unless you left-click first (to focus
   the statusline).
2. Modifier (e.g. shift+rightclick) does not work in statusline.

Solution:
Make clickable statusline sections receive right-clicks regardless of whether
the statusline is focused.

Closes #18994
2022-07-15 09:15:02 -07:00
Gregory Anders
1c9f487f0e feat(defaults): nnoremap & :&&<CR> #19365 2022-07-15 06:23:29 -07:00
zeertzjq
8bfcff6c4a vim-patch:8.2.0542: no test for E386
Problem:    No test for E386.
Solution:   Add a test. (Dominique Pelle, closes vim/vim#5911)
8832a34578

Cherry-pick Test_search_errors() from patch 8.2.0448.
2022-07-15 20:23:48 +08:00
zeertzjq
ba5ff6e5f0 vim-patch:8.2.0535: regexp patterns not fully tested
Problem:    Regexp patterns not fully tested.
Solution:   Add more regexp tests and others. (Yegappan Lakshmanan,
            closes vim/vim#5901)
4d23c52824

Add missing Test_search_cmdline8().
Cherry-pick Test_invalid_regexp() from patch 8.2.0531.
2022-07-15 20:23:48 +08:00
zeertzjq
0cf5cd1ac9 vim-patch:8.2.0403: when 'buftype' is "nofile" there is no overwrite check
Problem:    When 'buftype' is "nofile" there is no overwrite check.
Solution:   Also check for existing file when 'buftype' is set.
            (closes vim/vim#5807)
a3a9c8ef69

Nvim doesn't have buftype=popup and doesn't allow buftype=terminal for
non-terminal buffer.
2022-07-15 18:27:21 +08:00
zeertzjq
4a64cdafd6 vim-patch:8.1.1547: functionality of bt_nofile() is confusing
Problem:    Functionality of bt_nofile() is confusing.
Solution:   Split into bt_nofile() and bt_nofilename().
26910de8b0
2022-07-15 18:27:21 +08:00
zeertzjq
a649af4dba vim-patch:8.2.0426: some errors were not tested for
Problem:    Some errors were not tested for.
Solution:   Add tests. (Dominique Pelle, closes vim/vim#5824)
9b9be007e7

Cherry-pick get_highest_fnum() from patch 8.1.1908 to make tests pass.
2022-07-15 15:21:39 +08:00
zeertzjq
7b5b7b3cc6 vim-patch:8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Problem:    FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always
            enabled and only adds 7% to the binary size of the tiny build.
Solution:   Graduate FEAT_WINDOWS.
4033c55eca
2022-07-15 15:21:39 +08:00
zeertzjq
465b73c3a5 vim-patch:8.2.0482: channel and sandbox code not sufficiently tested
Problem:    Channel and sandbox code not sufficiently tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#5855)
ca68ae1311

Cherry-pick test_clientserver.vim changes form patch 8.2.0448.
2022-07-15 10:50:21 +08:00
zeertzjq
c821b5c695 vim-patch:8.2.0430: window creation failure not properly tested
Problem:    Window creation failure not properly tested.
Solution:   Improve the test. (Yegappan Lakshmanan, closes vim/vim#5826)
5080b0a047
2022-07-15 10:50:21 +08:00
zeertzjq
73f96ce4c6 Merge pull request #19348 from akinsho/bugfix/winbar-winhighlight
fix(winbar): make setting WinBar and WinBarNC in 'winhighlight' work
2022-07-15 09:56:17 +08:00
zeertzjq
8730643326 fix(winbar): make setting WinBar and WinBarNC in 'winhighlight' work 2022-07-15 09:22:57 +08:00
zeertzjq
072fb55cb0 vim-patch:9.0.0052: "zG" may throw an error if invalid character follows (#19368)
Problem:    "zG" may throw an error if invalid character follows.
Solution:   Pass the word length to valid_spell_word(). (Ken Takata,
            closes vim/vim#10737)
2ebcc35826
2022-07-15 08:42:36 +08:00
zeertzjq
8d67358d49 vim-patch:8.2.0926: cmdline test fails on Appveyor
Problem:    Cmdline test fails on Appveyor.
Solution:   Add CR to the commands. (Naruhiko Nishino, closes vim/vim#6220)
951a2fb1b8
2022-07-14 20:36:34 +08:00
zeertzjq
08235b6f2a vim-patch:8.2.0921: CTRL-W T in cmdline window causes trouble
Problem:    CTRL-W T in cmdline window causes trouble.
Solution:   Disallow CTRL-W T in the cmdline window.  Add more tests.
            (Naruhiko Nishino, closes vim/vim#6219)
4fdb8bd054

Test already passes in Nvim because of later patches.
Move Test_cmdwin_jump_to_win() to the right place.
2022-07-14 20:34:05 +08:00
zeertzjq
314f1a7c21 vim-patch:8.2.0369: various Normal mode commands not fully tested
Problem:    Various Normal mode commands not fully tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#5751)
1671f44881

Cherry-pick a fix from patch 8.2.3162.
Omit test_iminsert.vim as previous patches to that file are N/A, and
Nvim doesn't support iminsert=2 either, so that test isn't useful.
2022-07-14 15:40:07 +08:00
zeertzjq
bf96b9f11d vim-patch:8.2.0347: various code not covered by tests
Problem:    Various code not covered by tests.
Solution:   Add more test coverage. (Yegappan Lakshmanan, closes vim/vim#5720)
91ffc8a5f5

Test_Ex_echo_backslash() is not applicable to Vim enhanced Ex mode.
2022-07-14 15:40:07 +08:00
zeertzjq
c467df997e vim-patch:8.2.0342: some code in ex_getln.c not covered by tests
Problem:    Some code in ex_getln.c not covered by tests.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#5717)
0546d7df13

Nvim doesn't support imsearch=2, commenting out that line is enough.
Test_Ex_append() is not applicable to Vim enhanced Ex mode.
Omit test_iminsert.vim as previous patches to that file are N/A.
2022-07-14 15:40:07 +08:00
kylo252
912dbbdd77 build: gracefully handle error in git-version #19289
- only update git-version if both of these conditions are met:
    - `git` command succeeds
    - `versiondef_git.h` would change (SHA1-diff)
- else print a status/warning message

also move version generation out of Lua into cmake.
2022-07-14 00:12:27 -07:00