Commit Graph

16013 Commits

Author SHA1 Message Date
zeertzjq
36f0b508c5 revert: "jobstart(): Fix hang on non-executable cwd #9204" (#19826)
This reverts commit c4c74c3883.

LibUV already gives an error for this, so this isn't needed.
2022-08-18 22:09:50 +08:00
bfredl
700a6fb9d4 Merge pull request #19822 from bfredl/hldef
fix(api): make nvim_set_hl(ns=0, ...) redraw screen properly
2022-08-18 12:16:27 +02:00
bfredl
7a2be8cc17 Merge pull request #19828 from bfredl/nullhl
fix(winhl): do not crash when unsetting winhl in just opened window
2022-08-18 11:12:50 +02:00
zeertzjq
fbcce2b2ca vim-patch:8.1.2082: rename popupmnu.* to popupmenu.* (#19829)
vim-patch:8.1.2082: some files have a weird name to fit in 8.3 characters

Problem:    Some files have a weird name to fit in 8.3 characters.
Solution:   Use a nicer names.
30e8e73506
2022-08-18 17:06:39 +08:00
bfredl
e29156356b fix(api): make nvim_set_hl(ns=0, ...) redraw screen properly
fixes #18160
2022-08-18 10:57:46 +02:00
bfredl
21b2906c9c fix(winhl): do not crash when unsetting winhl in just opened window
fixes #19823
2022-08-18 09:43:07 +02:00
bfredl
d879331b0d feat(ui): allow to set the highlight namespace per window
- reimplement 'winhl' in terms of highlight namespaces
- check for EOF in screen tests (to indicate a likely crash)
2022-08-17 16:20:39 +02:00
zeertzjq
f7cfca49d6 refactor: remove some unused includes (#19820)
Replace grid.h in screen.h and screen.h in buffer.h with grid_defs.h
2022-08-17 22:18:34 +08:00
Famiu Haque
f5588ee896 feat: allow :wincmd to accept a count (#19815)
Let :wincmd command accept a count like what its documentation suggests.
Previously it could only accept a range, which led to some ambiguity on
which attribute should be used when executing :wincmd using nvim_cmd.

Closes #19662.

Also fix a typo in a related Vim test:

vim-patch:9.0.0223: typo in diffmode test

Problem:    Typo in diffmode test.
Solution:   Fix the typo. (closes vim/vim#10932)
5fd6ab820b
2022-08-17 19:50:40 +08:00
zeertzjq
5d8278591a vim-patch:8.2.1262: src/ex_cmds.c file is too big (#19811)
Problem:    src/ex_cmds.c file is too big.
Solution:   Move help related code to src/help.c. (Yegappan Lakshmanan,
            closes vim/vim#6506)
f868ba8903
2022-08-17 17:29:06 +08:00
zeertzjq
bccb5de89d vim-patch:8.2.3699: the +title feature adds a lot of #ifdef but little code (#19809)
Problem:    The +title feature adds a lot of #ifdef but little code.
Solution:   Graduate the +title feature.
651fca85c7
2022-08-17 12:44:31 +08:00
Shougo Matsushita
9a6d3bd76e vim-patch:9.0.0191: messages test fails; window size incorrect
Problem:    Messages test fails; window size incorrect when 'cmdheight' is
            made smaller.
Solution:   Properly cleanup after test with cmdheight zero.  Resize windows
            correctly when 'cmdheight' gets smaller.
d4cf9fc53e

N/A patches for version.c:

vim-patch:9.0.0192: possible invalid memory access when 'cmdheight' is zero

Problem:    Possible invalid memory access when 'cmdheight' is zero. (Martin
            Tournoij)
Solution:   Avoid going over the end of w_lines[] when w_height is Rows.
            (closes vim/vim#10882)
fdc5d17d58
2022-08-17 09:35:07 +08:00
Shougo Matsushita
5977a96b3f vim-patch:9.0.0190: the way 'cmdheight' can be made zero is inconsistent
Problem:    The way 'cmdheight' can be made zero is inconsistent.
Solution:   Only make 'cmdheight' zero when setting it explicitly, not when
            resizing windows. (closes vim/vim#10890)
f797e309ca
2022-08-17 09:34:13 +08:00
zeertzjq
dd15fa7096 vim-patch:9.0.0222: no good reason why text objects are only in larger builds
Problem:    No good reason why text objects are only in larger builds.
Solution:   Graduate +textobjects.
887748742d
2022-08-17 09:07:12 +08:00
zeertzjq
65bcec9e9b vim-patch:9.0.0220: invalid memory access with for loop over NULL string
Problem:    Invalid memory access with for loop over NULL string.
Solution:   Make sure mb_ptr2len() consistently returns zero for NUL.
f6d39c31d2
2022-08-17 09:07:12 +08:00
Lewis Russell
542fa8a9cc refactor: change pre-decrement/increment to post (#19799)
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2022-08-16 12:26:08 +01:00
Lewis Russell
9a4b8dc603 refactor(signs): handle non-sign attrs separately (#19784) 2022-08-16 11:03:44 +01:00
zeertzjq
03fddfd928 fix(api): nvim_exec and nvim_cmd restore msg_col when capturing output (#19789)
This matches the code in execute_common(), preventing messages after the
API call from being printed at the wrong column.
2022-08-16 17:30:39 +08:00
Lewis Russell
dee96f4725 refactor(eval.c): resolve all clint issues (#19774) 2022-08-16 09:47:16 +01:00
zeertzjq
da13ed43cb vim-patch:8.2.3888: the argument list may contain duplicates (#19795)
Problem:    The argument list may contain duplicates.
Solution:   Add the :argdedeupe command. (Nir Lichtman, closes vim/vim#6235)
73a024209c

Use latest index.txt :argdedupe doc from Vim.
2022-08-16 15:29:36 +08:00
zeertzjq
a63eea3d23 vim-patch:8.1.2042: the evalfunc.c file is too big (#19792)
Problem:    The evalfunc.c file is too big.
Solution:   Move getchar() and parse_queued_messages() to getchar.c.
9c658c9eac

Omit parse_queued_messages(): Nvim does not have MESSAGE_QUEUE.
2022-08-16 15:09:59 +08:00
zeertzjq
5e98a41872 vim-patch:8.1.1869: code for the argument list is spread out (#19791)
Problem:    Code for the argument list is spread out.
Solution:   Put argument list code in arglist.c. (Yegappan Lakshmanan,
            closes vim/vim#4819)
4ad62155a1
2022-08-16 14:16:03 +08:00
zeertzjq
d5d6ed311b vim-patch:9.0.0216: undo earlier test sometimes fails on MS-Windows (#19790)
Problem:    Undo earlier test sometimes fails on MS-Windows.
Solution:   Use another file name.
cce293f87b
2022-08-16 11:23:49 +08:00
zeertzjq
d1464d16d6 fix(source): fix expand('<sfile>') no longer works for Lua 2022-08-16 05:39:44 +08:00
zeertzjq
1d28bbf1e5 vim-patch:9.0.0217: 'shellslash' works differently when sourcing a script again
Problem:    'shellslash' works differently when sourcing a script again.
Solution:   Use the name from the script item. (closes vim/vim#10920)
5a4fff4d94
2022-08-16 05:39:12 +08:00
Christian Clason
e954d62527 Merge pull request #19635 from dundargoc/build/windows
build: windows-specific cmake fixes
2022-08-15 17:49:33 +02:00
zeertzjq
747dec7925 vim-patch:8.2.3392: augroup completion escapes regexp pattern characters
Problem:    augroup completion escapes regexp pattern characters.
Solution:   Do not escape the augroup name. (closes vim/vim#8826)
b4d82e2a8d
2022-08-15 21:19:50 +08:00
zeertzjq
e73517e34e vim-patch:8.2.3345: some code not covered by tests
Problem:    Some code not covered by tests.
Solution:   Add a few more tests. (Dominique Pellé, closes vim/vim#8757)
bfb2bb16bc
2022-08-15 21:19:50 +08:00
zeertzjq
535e423a6a vim-patch:8.2.1803: a few failures are not tested
Problem:    A few failures are not tested.
Solution:   Test a few failures. (Dominique Pellé, closes vim/vim#7075)
afe8cf6170

Cherry-pick a line in Test_argdelete() from patch 8.2.1736.
2022-08-15 21:19:35 +08:00
zeertzjq
18b457ebbb fix(redraw): make sure :redraw! redraws command line
In Vim :redraw! uses CLEAR, which calls screenclear(), which sets
redraw_cmdline. In Nvim :redraw! uses NOT_VALID, which does not set
redraw_cmdline automatically, so set it explicitly.
2022-08-15 20:24:43 +08:00
zeertzjq
76b4b1977b vim-patch:8.2.1799: some Normal mode commands not fully tested
Problem:    Some Normal mode commands not fully tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#7073)
d1ad99b654

Cherry-pick test_registers.vim change from patch 8.2.0644.
2022-08-15 20:24:43 +08:00
zeertzjq
37586eac42 vim-patch:8.2.1786: various Normal mode commands not fully tested
Problem:    Various Normal mode commands not fully tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#7059)
8a9bc95eae

Cherry-pick Test_normal_gdollar_cmd() change from patch 8.2.0540.
2022-08-15 20:24:42 +08:00
zeertzjq
55da52963b vim-patch:8.2.5109: mode not updated after CTRL-O CTRL-C in Insert mode
Problem:    Mode not updated after CTRL-O CTRL-C in Insert mode.
Solution:   Set redraw_mode and use it. (closes vim/vim#10581)
7a1d32809b
2022-08-15 17:58:35 +08:00
zeertzjq
93ba821831 vim-patch:8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Problem:    Mode is not cleared when leaving Insert mode with mapped Esc.
Solution:   Clear the mode when redraw_cmdline is set. (closes vim/vim#4269)
4c25bd785a
2022-08-15 17:58:35 +08:00
zeertzjq
53b0688ac0 vim-patch:8.1.1189: mode is not cleared when leaving Insert mode
Problem:    Mode is not cleared when leaving Insert mode.
Solution:   Clear the mode when got_int is set. (Ozaki Kiichi, closes vim/vim#4270)
abc7c7fc5a
2022-08-15 17:58:35 +08:00
zeertzjq
b47f313151 fix(getchar): flush screen before doing a blocking wait 2022-08-15 17:58:35 +08:00
zeertzjq
95b8e2c55f vim-patch:partial:8.1.0822: peeking and flushing output slows down execution
Problem:    Peeking and flushing output slows down execution.
Solution:   Do not update the mode message when global_busy is set.  Do not
            flush when only peeking for a character. (Ken Takata)
cb574f4154

Omit inchar() change: it breaks too many tests.

N/A patches for version.c:

vim-patch:8.2.5170: tiny issues

Problem:    Tiny issues.
Solution:   Tiny improvements.
944cc9ceba
2022-08-15 17:58:35 +08:00
Lewis Russell
9a3877ff9d refactor(ex_docmd.c): resolve most clint errors (#19775)
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2022-08-15 08:54:40 +01:00
zeertzjq
9ab9eb1220 fix(source): make changing 'shellslash' change expand() result 2022-08-15 10:14:53 +08:00
zeertzjq
d6a6adf708 vim-patch:8.2.1658: expand('<stack>') has trailing ".."
Problem:    Expand('<stack>') has trailing "..".
Solution:   Remove the "..". (closes vim/vim#6927)
a810db3f17
2022-08-15 10:14:53 +08:00
zeertzjq
ed65724e57 vim-patch:8.2.1653: expand('<stack>') does not include the final line number
Problem:    Expand('<stack>') does not include the final line number.
Solution:   Add the line nuber. (closes vim/vim#6927)
4f25b1aba0
2022-08-15 10:14:53 +08:00
zeertzjq
98ab0bb5f7 vim-patch:8.2.1297: when a test fails it's often not easy to see where
Problem:    When a test fails it's often not easy to see what the call stack
            is.
Solution:   Add more entries from the call stack in the exception message.
a5d0423fa1

Use docs from latest Vim.
2022-08-15 10:14:52 +08:00
zeertzjq
1c164689a4 refactor: move menu non-symbols to menu_defs.h (#19778) 2022-08-15 10:04:05 +08:00
zeertzjq
d3569e8337 vim-patch:8.1.1960: fold code is spread out (#19777)
Problem:    Fold code is spread out.
Solution:   Move fold functions to fold.c.
db022f3ffb
2022-08-15 06:33:30 +08:00
zeertzjq
41d6b8a6d0 vim-patch:9.0.0207: stacktrace not shown when debugging (#19776)
Problem:    Stacktrace not shown when debugging.
Solution:   Set msg_scroll in msg_source(). (closes vim/vim#10917)
28c162f6f1
2022-08-15 06:01:38 +08:00
Lewis Russell
47aba12593 refactor(eval/funcs.c): resolve all clint errors
... and tidy up local variable declarations

Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2022-08-14 15:51:03 +01:00
zeertzjq
b1faf5f0b9 vim-patch:8.2.4249: the timeout limit for spell suggestions is always 5000 (#19769)
Problem:    The timeout limit for spell suggestions is always 5000 milli
            seconds.
Solution:   Add the "timeout" entry to 'spellsuggest'.
585ee07cfe
2022-08-14 19:11:36 +08:00
zeertzjq
c77cce615b vim-patch:8.1.2081: the spell.c file is too big (#19767)
Problem:    The spell.c file is too big.
Solution:   Move the code for spell suggestions to a separate file. (Yegappan
            Lakshmanan, closes vim/vim#4988)
46a426c9ac
2022-08-14 18:30:37 +08:00
zeertzjq
c96020b2bf vim-patch:8.2.3675 (#19766)
vim-patch:8.2.3675: using freed memory when vim_strsave() fails

Problem:    Using freed memory when vim_strsave() fails.
Solution:   Clear "last_sourcing_name".  Check for msg_source() called
            recursively. (closes vim/vim#8217)
ba8c92687d

Although xstrdup() cannot fail in Nvim, it may still be possible that an
error appears (e.g. in regexp engine) when printing the message.
2022-08-14 15:15:43 +08:00
zeertzjq
fa8fde99e6 vim-patch:9.0.0203: confusing variable name (#19762)
Problem:    Confusing variable name.
Solution:   Use "prim_aep" instead of "spell_aep".
c9b6570fab
2022-08-14 06:19:12 +08:00