Commit Graph

22070 Commits

Author SHA1 Message Date
Javier Lopez
1803b0ffd7
fix(tui): resize at startup #17795
* fix(test): screen.lua nil index
  When actual_rows and expected_rows are different avoid a nil index.
* fix(tui): resize at startup
  The deleted code is not needed after 402b4e8.
  It caused the condition to false positive when the function was called
  more than once before startup (first normal mode). Being itself what
  set the dimension and not the user, locking the size of the screen to
  an incorrect size.
  Make got_winch an int to mitigate: tui_grid_resize changing the size
  of the host terminal between the signal handler and the call to
  sigwinch_cb. Since the actual signal handler uv__signal_handle doesn't
  directly call the callback, the event loop does.

Fixes #17285
Fixes #15044
Fixes #11330
2022-07-04 13:09:47 -07:00
zeertzjq
ab5929e1b0
Merge pull request #19221 from zeertzjq/vim-8.2.1808
vim-patch:8.2.{1808,5098},9.0.0034
2022-07-04 18:59:27 +08:00
zeertzjq
a4160dd105 vim-patch:9.0.0034: spell tests do not always clear the word list
Problem:    Spell tests do not always clear the word list.
Solution:   Clear the word list in TearDown(). (closes vim/vim#10659)
288ed23e39
2022-07-04 18:38:39 +08:00
zeertzjq
08aba02ad7 vim-patch:8.2.5098: spelldump test sometimes hangs
Problem:    Spelldump test sometimes hangs.
Solution:   Catch the problem of the spell file not being found to avoid
            hanging in the download dialog.
fc9f0fd6d1
2022-07-04 18:37:46 +08:00
zeertzjq
d9c63507f8 vim-patch:8.2.1808: no test coverage for ":spelldump!"
Problem:    No test coverage for ":spelldump!".
Solution:   Add a test. (Dominique Pellé, closes vim/vim#7089)
f12f0022e6
2022-07-04 18:37:36 +08:00
erw7
436747752b
refactor: remove unnecessary volatile #19210
libuv does not call callback functions(uv_signal_cb) directly from signal
handlers. Therefore, there is no need to use volatile.

Ref. 1a91b51976/src/unix/signal.c (L183)
2022-07-04 03:28:59 -07:00
zeertzjq
f075feee32
Merge pull request #19220 from zeertzjq/vim-8.2.1470
vim-patch:8.2.{1470,1493,1522,1523,1770,5072,5074}: spell patches
2022-07-04 11:13:19 +08:00
zeertzjq
6b474d0237 vim-patch:8.2.5074: spell test fails on MS-Windows
Problem:    Spell test fails on MS-Windows.
Solution:   Do not change 'encoding'
ad73cc2ff2
2022-07-04 10:02:35 +08:00
zeertzjq
a4215a0a21 vim-patch:8.2.5072: using uninitialized value and freed memory in spell command
Problem:    Using uninitialized value and freed memory in spell command.
Solution:   Initialize "attr".  Check for empty line early.
2813f38e02
2022-07-04 10:02:35 +08:00
zeertzjq
1ff86aa634 vim-patch:8.2.1770: invalid memory use when using SpellFileMissing autocmd
Problem:    Invalid memory use when using SpellFileMissing autocmd.
Solution:   Add test case. (Dominique Pellé, closes vim/vim#7036)  Fix using a window
            that was closed.
d569a9e746

Skip an assert because of #3027.
2022-07-04 09:37:45 +08:00
zeertzjq
7648a8524c vim-patch:8.2.1523: still not enough test coverage for the spell file handling
Problem:    Still not enough test coverage for the spell file handling.
Solution:   Add spell file tests. (Yegappan Lakshmanan, closes vim/vim#6790)
b9fc192f92
2022-07-04 09:18:35 +08:00
zeertzjq
a2d8d5e1f5 vim-patch:8.2.1522: not enough test coverage for the spell file handling
Problem:    Not enough test coverage for the spell file handling.
Solution:   Add spell file tests. (Yegappan Lakshmanan, closes vim/vim#6763)
c8ec5fe56f

Add missing whitespace in message.
2022-07-04 09:15:03 +08:00
zeertzjq
ed64c8f683 vim-patch:8.2.1493: not enough test coverage for the spell file handling
Problem:    Not enough test coverage for the spell file handling.
Solution:   Add spell file tests. (Yegappan Lakshmanan, closes vim/vim#6728)
fc2a47ffc4
2022-07-04 09:09:42 +08:00
zeertzjq
acb6512f2e vim-patch:8.2.1470: errors in spell file not tested
Problem:    Errors in spell file not tested.
Solution:   Add test for spell file errors. (Yegappan Lakshmanan,
            closes vim/vim#6721)
c0f8823ee4
2022-07-04 09:06:01 +08:00
Jonas Strittmatter
acb7a90281
refactor(runtime): port scripts.vim to lua (#18710) 2022-07-03 15:31:56 +02:00
zeertzjq
0313aba77a
vim-patch:9.0.0031: <mods> of user command does not have correct verbose value (#19215)
vim-patch:9.0.0031: <mods> of user command does not have correct verbose value

Problem:    <mods> of user command does not have correct verbose value.
Solution:   Use the value from the command modifier. (closes vim/vim#10651)
9359e8a6d9
2022-07-03 21:17:03 +08:00
zeertzjq
e837f29ce6
Merge pull request #19212 from zeertzjq/vim-9.0.0024
vim-patch:9.0.{0024,0030}
2022-07-03 06:43:16 +08:00
zeertzjq
357d63f5d7 vim-patch:9.0.0030: matchfuzzy test depends on path of current directory
Problem:    Matchfuzzy test depends on path of current directory.
Solution:   Use fnamemodify() to remove the path. (Robin Becker,
            closes vim/vim#10650)
22e7e867e2
2022-07-03 06:21:05 +08:00
zeertzjq
312f1b65c8 vim-patch:9.0.0024: may access part of typeahead buf that isn't filled
Problem:    May access part of typeahead buf that isn't filled.
Solution:   Check length of typeahead.
af043e12d9
2022-07-03 06:21:05 +08:00
dundargoc
2b04aaad94
build: drop -Wsuggest #19177
Disable -Wsuggest compile flags by default.

Although the flags are useful to see what the compiler thinks we can
improve on, it adds a lot of noise to the build output. That makes it
harder to spot actual issues that may be flagged.

Closes https://github.com/neovim/neovim/issues/19160
2022-07-02 14:47:22 -07:00
bfredl
c6c89391b7
Merge pull request #19205 from bfredl/luaerr
fix(lua): don't leak memory on error
2022-07-02 23:44:26 +02:00
zeertzjq
8d37901f1c
Merge pull request #19203 from zeertzjq/api-cmd-unsilent
feat(api): add `unsilent` to command APIs
2022-07-03 05:00:02 +08:00
zeertzjq
7a907c3314 feat(api): add unsilent to command APIs 2022-07-03 04:34:28 +08:00
zeertzjq
f93eb169f6 vim-patch:8.2.1900: Vim9: command modifiers do not work
Problem:    Vim9: command modifiers do not work.
Solution:   Make most command modifiers work.
02194d2bd5
2022-07-03 04:34:28 +08:00
bfredl
0160ff6aa0 fix(lua): don't leak memory on error 2022-07-02 20:10:32 +02:00
Javier Lopez
108368bdd5
fix(coverity): 353827 unnecessary null check #19209
Previous checks make sure the index is not out of bounds. Therefore jmp
is never NULL.
2022-07-02 09:24:58 -07:00
erw7
e11f3655fb
fix(jobs): deadlock in channel.c:exit_event #19082
In the rare case that exit_event is called from process_close_handles,
it stalls waiting for the process to exit (the routine is currently
underway to do just that). This causes `job_spec.lua` to sometimes
stall.

REJECTED IDEAS:
==============================================================
1. Currently `exit_event` is placed on `main_loop.fast_events`. Would the problem
   be solved by using `main_loop.events` instead?
    - A: Maybe, but it will cause other problems, such as queuing exit_event()
      during "Press Enter..." prompt which may result in the event not being
      processed, leading to another stall.
2. Can we avoid the timer?
    - A: Using a timer is just the easiest way to queue a delayed event without
      causing an infinite loop in the queue currently being processed.
3. Can we avoid the new `exit_need_delay` global...
    1. by using `process_is_tearing_down` instead?
        - A: Can't use `process_is_tearing_down` because its semantics are different.
    2. by checking a similar condition as `process_teardown`? f50135a32e/src/nvim/event/process.c (L141-L142)
       ```
       if (!process_is_tearing_down || (kl_empty(main_loop.children) && multiqueue_empty(main_loop.events))) {
         uv_timer_start(&main_loop.exit_delay_timer, exit_delay_cb, 0, 0);
         return;
       }
       ```
        - A: Tried but it did not work (other stalls occurred). Maybe
          exit_event() is called from a source other than
          process_close_handles() and is delayed, the delayed exit_event() will
          be executed before main_loop.events is processed, resulting in an
          infinite loop.
2022-07-02 09:14:08 -07:00
bfredl
c1b591dc8f
Merge pull request #19137 from dundargoc/refactor/char_u-to-char
refactor: replace char_u
2022-07-02 17:13:25 +02:00
Dundar Goc
3b8804571c refactor: replace char_u
Work on https://github.com/neovim/neovim/issues/459
2022-07-02 16:01:27 +02:00
Lewis Russell
ed429c00d7
refactor(fold): style #19175
* refactor(fold): update comment formatting
* refactor(fold): use post-increment/decrement
* refactor(fold): reduce scope of local variables
* refactor(fold): use booleans
2022-07-02 04:29:27 -07:00
Christian Clason
662681694b
vim-patch:0d878b95d8f9 (#19197)
Update runtime files
0d878b95d8
2022-07-02 11:06:03 +02:00
zeertzjq
a9de89894a
Merge pull request #19202 from zeertzjq/vim-8.2.0316
vim-patch:8.2.{0261,0316}: insufficient test coverage
2022-07-02 12:25:07 +08:00
zeertzjq
7277543772 vim-patch:8.2.0316: ex_getln.c code has insufficient test coverage
Problem:    ex_getln.c code has insufficient test coverage.
Solution:   Add more tests. Fix a problem. (Yegappan Lakshmanan, closes vim/vim#5693)
8d588ccee5
2022-07-02 11:57:53 +08:00
zeertzjq
d197e77a55 vim-patch:8.2.0261: some code not covered by tests
Problem:    Some code not covered by tests.
Solution:   Add test cases. (Yegappan Lakshmanan, closes vim/vim#5645)
f0cee1971f

Cherry-pick Test_bunload_with_offset() from patch 8.2.0243
2022-07-02 11:57:53 +08:00
zeertzjq
f71d518c90
Merge pull request #19199 from zeertzjq/vim-9.0.0017
vim-patch:9.0.{0017,0021,0022}: invalid memory access
2022-07-02 09:28:16 +08:00
Gregory Anders
5bd1bdee14
fix(mark): set mark fnum from buffer (#19195) 2022-07-01 17:20:50 -06:00
zeertzjq
d358856a0c vim-patch:9.0.0022: spell test fails
Problem:    Spell test fails.
Solution:   Expect new error is given.
95afae6d17
2022-07-02 06:55:23 +08:00
zeertzjq
998a96803b vim-patch:9.0.0021: invalid memory access when adding word to spell word list
Problem:    Invalid memory access when adding word with a control character to
            the internal spell word list.
Solution:   Disallow adding a word with control characters or a trailing
            slash.
5e59ea54c0
2022-07-02 06:55:23 +08:00
zeertzjq
0b15c01912 vim-patch:9.0.0017: accessing memory beyond the end of the line
Problem:    Accessing memory beyond the end of the line.
Solution:   Stop Visual mode when closing a window.
3d51ce18ab
2022-07-02 06:55:23 +08:00
dundargoc
9b4d0137b8
build: move lint target to cmake #19169
This will ensure less verbose output and faster linting.
2022-07-01 09:15:04 -07:00
zeertzjq
2b1abe3c9d
vim-patch:9.0.0015: with EXITFREE defined terminal menus are not cleared (#19187)
Problem:    With EXITFREE defined terminal menus are not cleared.
Solution:   Also clear terminal menus. Remove condition that is always true.
            (closes vim/vim#10641)
79ae152697
2022-07-01 21:02:59 +08:00
github-actions[bot]
6486b0345a
version.c: update [skip ci] #19179
Co-authored-by: marvim <marvim@users.noreply.github.com>
2022-07-01 03:26:42 -07:00
Christian Clason
60604d6a99
vim-patch:9.0.0012: signature files not detected properly (#19172)
Problem:    Signature files not detected properly.
Solution:   Add a function to better detect signature files. (Doug Kearns)
cdbfc6dbab
2022-07-01 07:08:44 +02:00
zeertzjq
8f5bcfb0e4
Merge pull request #19178 from zeertzjq/vim-8.2.0049
vim-patch:8.2.0049: command line completion not fully tested
2022-07-01 11:49:48 +08:00
zeertzjq
b22f7dd908 test(old): reorder test_cmdline.vim to match upstream 2022-07-01 11:17:33 +08:00
zeertzjq
300490f2e8 vim-patch:8.2.0049: command line completion not fully tested
Problem:    Command line completion not fully tested.
Solution:   Add more test cases.  Make help sorting stable. (Dominique Pelle,
            closes vim/vim#5402)
297610ba4b
2022-07-01 11:02:55 +08:00
zeertzjq
2268a4147e
Merge pull request #19170 from zeertzjq/vim-8.0.1558
vim-patch:8.0.{1558,1570,1574,1588},8.1.{0487,0695,1274}: menu features
2022-07-01 10:49:14 +08:00
zeertzjq
5a62ad605e feat(ui): make right-click menu work properly with ext_multigrid
Add tests both with and without ext_multigrid.
2022-07-01 10:28:07 +08:00
zeertzjq
236947ab20 vim-patch:8.1.1274: after :unmenu can still execute the menu with :emenu
Problem:    After :unmenu can still execute the menu with :emenu.
Solution:   Do not execute a menu that was disabled for the specified mode.
ce79353ace
2022-07-01 10:17:39 +08:00
zeertzjq
d81d8d454a vim-patch:8.1.0695: internal error when using :popup
Problem:    Internal error when using :popup.
Solution:   When a menu only exists in Terminal mode give an error. (Naruhiko
            Nishino, closes vim/vim#3765)
f42b45d719
2022-07-01 10:17:39 +08:00