Commit Graph

23281 Commits

Author SHA1 Message Date
Lewis Russell
1d4840a13a build: remove EXITFREE for debug builds
When EXITFREE is defined, uv handles are not closed on exit in order to
better detect memory leaks. However the cost of this is that by not
closing the handles there can be lag when exiting nvim.

This change removes EXITFREE from debug builds in order to avoid this
exit lag for regular debug builders who are not running ASAN.
2022-10-08 16:06:32 +01:00
James McCoy
9207ad5c84
Merge pull request #20528 from mliszcz/build-appimage-in-container
ci: Use ubuntu docker container to build appimage
2022-10-08 10:02:54 -04:00
James McCoy
56182b5e97
Merge pull request #20543 from dundargoc/ci/backport
ci(backport): bump version to v0
2022-10-08 09:58:17 -04:00
dundargoc
048baa92be ci(backport): bump version to v0
backport-action now uses "v0" tag to point to the latest stable version.
This helps us avoid having to manually bump the version to get bug
fixes.
2022-10-08 14:24:03 +02:00
zeertzjq
fad1022caf
fix(tui): resume main thread if suspending isn't implemented (#20523)
Not doing anything is better than hanging.
2022-10-08 20:17:53 +08:00
zeertzjq
2a12faaec1
fix(api): dynamically allocate line buffer for nvim_out_write (#20537) 2022-10-08 20:10:00 +08:00
lvimuser
0773a9ee3a
feat(lsp): support window/showDocument (#19977) 2022-10-08 10:22:25 +02:00
mliszcz
f2cab9b5b4 ci: use ubuntu docker container to build appimage
Switch back to Ubuntu 18.04 for buliding the appimage. This allows for
using the appimage on older systems that do not provide GLIBC_2.29.

Fixes #19711.
Fixes #20113.
2022-10-07 15:13:40 +02:00
zeertzjq
cfdb4cbada
fix: find multibyte file name in line (#20519)
And remove unnecessary unsigned casts in fold marker comparison.
2022-10-07 09:43:16 +08:00
zeertzjq
d191070913
fix(ui): setting 'cmdheight' with global statusline (#20515) 2022-10-07 08:52:51 +08:00
zeertzjq
bcef006da6
vim-patch:9.0.0678: using exclamation marks on :function (#20518)
Problem:    Using exclamation marks on :function.
Solution:   Use :func and :endfunc as usual.
97f0eb169b

Add a missing change from patch 8.1.1875.
2022-10-07 07:06:38 +08:00
zeertzjq
09325845b9
vim-patch:9.0.0666: spacing-combining characters handled as composing (#20501)
Problem:    Spacing-combining characters handled as composing, causing text to
            take more space than expected.
Solution:   Handle characters marked with "Mc" not as composing.
            (closes vim/vim#11282
7beaf6a720
2022-10-07 06:44:29 +08:00
dundargoc
6cd643dbf9
ci: update which paths to ignore (#20510)
Skipping the CI on documentation-only changes is no longer appropriate
as we now rely on CI to test parts of documentation, e.g.
test/functional/lua/help_spec.lua.

Ignore changes in contrib/ as it's for non-essential user contributions
that we don't need to test.
2022-10-06 18:45:42 +02:00
Lewis Russell
d48ea0e3ea
Merge pull request #20378 from folke/shared_annotations 2022-10-06 16:04:34 +01:00
Folke Lemaitre
1da7b4eb69 feat: added support for specifying types for lua2dox 2022-10-06 15:42:21 +01:00
Folke Lemaitre
24a1c7f556 feat: added support for optional params to lua2dox 2022-10-06 15:38:28 +01:00
Folke Lemaitre
453fffde16 feat: added support for @generic to lua2dox.lua 2022-10-06 15:38:28 +01:00
Folke Lemaitre
c8d1b9a2d6 docs: added proper annotations to functions in shared.lua 2022-10-06 15:38:27 +01:00
Justin M. Keyes
f7b175e049
fix(docs-html): keycodes, taglinks, column_heading #20498
Problem:
- Docs HTML: "foo ~" headings (column_heading) are not aligned with
  their table columns/contents because the leading whitespace is not
  emitted.
- taglinks starting with hyphen like |-x| were not recognized.
- keycodes like `<foo>` and `CTRL-x` were not recognized.
- ToC is not scrollable.

Solution:
- Add ws() to the column_heading case.
- Update help parser to latest version
  - supports `keycode`
  - fixes for taglink, argument
- Update .toc CSS. https://github.com/neovim/neovim.github.io/issues/297

fix https://github.com/neovim/neovim.github.io/issues/297
2022-10-06 06:16:00 -07:00
James McCoy
61da959bb4
build(deps): restore support for USE_EXISTING_SRC_DIR (#20491)
59d5f692f removed cmake.deps/cmake/DownloadAndExtractFile.cmake and
support for USE_EXISTING_SRC_DIR.  The Ubuntu nightly PPA still relies
on USE_EXISTING_SRC_DIR functionality since it can't access the network
during the build.

Supplying an empty value for ExternalProject_Add()'s URL value appears
to provide the needed mechanism to avoid re-downloading when the sources
are already present.  This is undocumented behavior, though, so it may
break in the future.

Now, if USE_EXISTING_SRC_DIR is set, the ExternalProject's URL variable
is unset, preventing the download and erroring out if the source doesn't
actually exist.
2022-10-06 15:14:38 +02:00
zeertzjq
25dea99ce5
vim-patch:9.0.0670: no space for command line when there is a tabline (#20512)
Problem:    No space for command line when there is a tabline.
Solution:   Correct computation of where the command line should be.
            (closes vim/vim#11295)
c9f5f73206
2022-10-06 20:03:59 +08:00
dundargoc
2c08ab5369
docs: fix incorrect :help tag (#20511)
vim.lsp.format() doesn't exist, which causes functionaltest to fail.
Change to vim.lsp.buf.format().
2022-10-06 19:00:13 +08:00
Steve Thorne
de47b4b901
docs(lsp): add formatting APIs to deprecated.txt (#20487)
Add vim.lsp.buf.formatting() to deprecated.txt.
Add vim.lsp.buf.range_formatting() to deprecated.txt.
2022-10-06 10:07:04 +02:00
zeertzjq
1cb858b355
vim-patch:9.0.0657: too many #ifdefs (#20506)
Problem:    Too many #ifdefs.
Solution:   Graduate the +cmdwin feature.  Now the tiny and small builds are
            equal, drop the small build.  (Martin Tournoij, closes vim/vim#11268)
7904fa420e

Accidentally forgot to mark as ported:

vim-patch:9.0.0471: no test for what patch 9.0.0469 fixes

Problem:    No test for what patch 9.0.0469 fixes.
Solution:   Add a test. (closes vim/vim#11140)
12167d8b84
2022-10-06 15:47:50 +08:00
luukvbaal
5acf52e19b
feat(window/ui): add splitkeep option (#19243)
vim-patch:9.0.0445: when opening/closing window text moves up/down

Problem:    When opening/closing window text moves up/down.
Solution:   Add the 'splitscroll' option.  When off text will keep its
            position as much as possible.
29ab524358

vim-patch:9.0.0455: a few problems with 'splitscroll'

Problem:    A few problems with 'splitscroll'.
Solution:   Fix 'splitscroll' problems. (Luuk van Baal, closes vim/vim#11117)
5ed391708a

vim-patch:9.0.0461: 'scroll' is not always updated

Problem:    'scroll' is not always updated.
Solution:   Call win_init_size() at the right place.
470a14140b

vim-patch:9.0.0465: cursor moves when cmdwin is closed when 'splitscroll' is off

Problem:    Cursor moves when cmdwin is closed when 'splitscroll' is off.
Solution:   Temporarily set 'splitscroll' when jumping back to the original
            window. (closes vim/vim#11128)
e697d48890

vim-patch:9.0.0469: cursor moves if cmdwin is closed when 'splitscroll' is off

Problem:    Cursor moves if cmdwin is closed when 'splitscroll' is off.
Solution:   Skip win_fix_cursor if called when cmdwin is open or closing.
            (Luuk van Baal, closes vim/vim#11134)
3735f11050

vim-patch:9.0.0478: test for 'splitscroll' takes too much time

Problem:    Test for 'splitscroll' takes too much time.
Solution:   Only test some of the combinations. (Luuk van Baal, closes vim/vim#11139)
594f9e09cd

vim-patch:9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help

Problem:    Text scrolled with 'nosplitscroll', autocmd win opened and help
            window closed.
Solution:   Skip win_fix_scroll() in more situations. (Luuk van Baal,
            closes vim/vim#11150)
d5bc762dea

vim-patch:9.0.0505: various problems with 'nosplitscroll'

Problem:    Various problems with 'nosplitscroll'.
Solution:   Fix 'nosplitscroll' problems. (Luuk van Baal, closes vim/vim#11166)
faf1d412f5

vim-patch:9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin

Problem:    Scrolling with 'nosplitscroll' in callback changing curwin.
Solution:   Invalidate w_cline_row in the right place. (Luuk van Baal,
            closes vim/vim#11185)
20e58561ab

vim-patch:9.0.0603: with 'nosplitscroll' folds are not handled correctly

Problem:    With 'nosplitscroll' folds are not handled correctly.
Solution:   Take care of closed folds when moving the cursor. (Luuk van Baal,
            closes vim/vim#11234)
7c1cbb6cd4

vim-patch:9.0.0605: dump file missing

Problem:    Dump file missing.
Solution:   Add the missing dump file. (issue vim/vim#11234)
439a2ba174

vim-patch:9.0.0647: the 'splitscroll' option is not a good name

Problem:    The 'splitscroll' option is not a good name.
Solution:   Rename 'splitscroll' to 'splitkeep' and make it a string option,
            also supporting "topline". (Luuk van Baal, closes vim/vim#11258)
13ece2ae1d

vim-patch:9.0.0667: ml_get error when 'splitkeep' is "screen"

Problem:    ml_get error when 'splitkeep' is "screen". (Marius Gedminas)
Solution:   Check the botline is not too large. (Luuk van Baal,
            closes vim/vim#11293, closes vim/vim#11292)
346823d3e5
2022-10-06 14:57:52 +08:00
zeertzjq
4bfbac05c9
vim-patch:9.0.0422: not enough testing of the :all command (#20503)
Problem:    Not enough testing of the :all command.
Solution:   Add more testing. (Yegappan Lakshmanan, closes vim/vim#11091)
0dc2fd307f
2022-10-06 12:50:34 +08:00
zeertzjq
bc64aa435b
vim-patch:9.0.0665: setting 'cmdheight' has no effect if last window was resized (#20500)
Problem:    Setting 'cmdheight' has no effect if last window was resized.
Solution:   Do apply 'cmdheight' when told to.  Use the frame height instead
            of the cmdline_row.  (closes vim/vim#11286)
0816f473ab
2022-10-06 09:03:49 +08:00
bfredl
6ae4a6e071
Merge pull request #20374 from bfredl/notype
screen: refactor old curwin-heavy logic and graduate "msgsep" feature
2022-10-05 21:50:12 +02:00
bfredl
ede85dda2e
Merge pull request #20496 from ehllie/runtime_annotations
docs(docstrings): fix runtime type annotations
2022-10-05 20:21:30 +02:00
bfredl
7746f641b8 fix(options): no matter what is said, 'cmdheight' is tab-local (susy baka) 2022-10-05 20:12:59 +02:00
bfredl
6ae144a921 feat(messages)!: graduate the 'msgsep' feature
The old behaviour (e.g. via `set display-=msgsep`) will not be available.
Assuming that messages always are being drawn on msg_grid
(or not drawn at all, and forwarded to `ext_messages` enabled UI)
will allows some simplifcations and enhancements moving forward.
2022-10-05 20:12:59 +02:00
bfredl
cce0840cbf refactor(redraw): various simplifications 2022-10-05 20:12:58 +02:00
bfredl
6679687bb3 refactor(redraw): no type argument in update_screen()
This was used in the past with assumption that curwin/curbuf
is "special" but this has not been true since basically forever
at this point.

Reduce NOT_VALID/CLEAR panic in options.lua . These should not
be set if an effect of the option is causing something
which by itself invokes redraw_later().
2022-10-05 20:11:13 +02:00
zeertzjq
28e228d60d
Merge pull request #20497 from zeertzjq/vim-8.2.2413
vim-patch:8.2.{2413,2421,2463,3884,3885,3886},9.0.0388: arglist patches
2022-10-05 23:11:36 +08:00
zeertzjq
4ebcc6f822 vim-patch:9.0.0388: the do_arg_all() function is too long
Problem:    The do_arg_all() function is too long.
Solution:   Split the function in smaller parts. (Yegappan Lakshmanan,
            closes vim/vim#11062)
8894761daf
2022-10-05 22:40:28 +08:00
zeertzjq
42afb9153a vim-patch:8.2.3886: can define autocmd for every event by using "au!"
Problem:    Can define autocmd for every event by using "au!".
Solution:   Check if a command is present also for "au!".
b6db146762
2022-10-05 22:40:28 +08:00
zeertzjq
824a31cd0d vim-patch:8.2.3885: arglist test fails
Problem:    Arglist test fails.
Solution:   Adjust for locking the arglist for ":all".
679140c56b
2022-10-05 22:40:28 +08:00
zeertzjq
dcdb7dca6a vim-patch:8.2.3884: crash when clearing the argument list while using it
Problem:    Crash when clearing the argument list while using it.
Solution:   Lock the argument list for ":all".
6f98371532
2022-10-05 22:40:28 +08:00
zeertzjq
a66b12378b vim-patch:8.2.2463: using :arglocal in an autocommand may use freed memory
Problem:    Using :arglocal in an autocommand may use freed memory.
            (houyunsong)
Solution:   Check if the arglist is locked.
6bcb877ec1
2022-10-05 22:40:28 +08:00
zeertzjq
0ae47000e0 vim-patch:8.2.2421: double free when using autocommand with "argdel"
Problem:    Double free when using autocommand with "argdel". (Houyunsong)
Solution:   Add the arglist_locked flag.
5ed58c7b70
2022-10-05 22:40:28 +08:00
zeertzjq
c64acad4e2 vim-patch:8.2.2413: crash when using :all while using a cmdline window
Problem:    Crash when using :all while using a cmdline window. (Zdenek Dohnal)
Solution:   Disallow :all from the cmdline window.
bb4b93ed85

Use test from lastest Vim instead.
2022-10-05 22:40:23 +08:00
Elizabeth Paź
548a4e2587 docs(docstrings): fix runtime type annotations 2022-10-05 15:25:03 +02:00
bfredl
1f2ded459a
Merge pull request #20494 from bfredl/shadatest
test(shada): fix shada syntax definitions test.
2022-10-05 14:58:27 +02:00
Justin M. Keyes
18afacee1d
feat(docs): format parameters as a list #20485
Problem:
The {foo} parameters listed in `:help api` and similar generated docs,
are intended to be a "list" but they aren't prefixed with a list symbol.
This prevents parsers from understanding the list, which forces
generators like `gen_help_html.lua` to use hard-wrapped/preformatted
layout instead of a soft-wrapped "flow" layout.

Solution:
Modify gen_vimdoc.py to prefix {foo} parameters with a "•" symbol.
2022-10-05 05:15:55 -07:00
bfredl
9d8546e0c5 test(shada): fix shada syntax definitions test
These tests contained errors due to synstack() and friends do not ensure
syntax state is fully synced. Actually expecting what the user will
see with a screen test does ensure it is fully synced.
2022-10-05 13:46:52 +02:00
bfredl
f572718480
Merge pull request #20493 from bfredl/windowtest
test(api): migrate screenchar() test in in window API to screen test
2022-10-05 12:10:40 +02:00
bfredl
fc1f84c4c5 test(api): migrate screenchar() test in in window API to screen test
This produces actual output in case of regressions.
2022-10-05 11:32:13 +02:00
Christian Clason
06f4edc864
vim-patch:partial:f269eabc6c4f (#20470)
Update runtime files
f269eabc6c
2022-10-05 10:56:53 +02:00
zeertzjq
759259e8af
Merge pull request #20490 from zeertzjq/vim-9.0.0656
vim-patch:9.0.{0656,0661}: 'fillchars' "lastline"
2022-10-05 07:25:30 +08:00
zeertzjq
98bb2c1930 vim-patch:9.0.0661: multi-byte "lastline" in 'fillchars' does not work properly
Problem:    Multi-byte "lastline" item in 'fillchars' does not work properly
            when the window is two columns wide.
Solution:   Compute the text length correctly. (closes vim/vim#11280)
18b3500b8c
2022-10-05 06:59:05 +08:00