Commit Graph

15726 Commits

Author SHA1 Message Date
Famiu Haque
cf68f0a512 fix(api): make nvim_cmd work correctly with empty arguments list (#18527)
Closes #18526.
2022-05-11 10:51:53 -06:00
zeertzjq
e36e0f7b2f vim-patch:8.2.4939: matchfuzzypos() with "matchseq" does not have all positions (#18525)
Problem:    matchfuzzypos() with "matchseq" does not have all positions.
Solution:   Also add a position for white space. (closes vim/vim#10404)
9af2bc0751
2022-05-11 21:51:31 +08:00
zeertzjq
6f52bc5dee vim-patch:8.2.4938: crash when matching buffer with invalid pattern
Problem:    Crash when matching buffer with invalid pattern.
Solution:   Check for NULL regprog.
a59f2dfd0c
2022-05-11 19:13:07 +08:00
zeertzjq
0019886a84 vim-patch:8.2.4901: NULL pointer access when using invalid pattern
Problem:    NULL pointer access when using invalid pattern.
Solution:   Check for failed regexp program.
8e4b76da1d
2022-05-11 19:09:21 +08:00
bfredl
96a125b207 Merge pull request #18366 from famiu/feat/api/nvim_cmd
feat(api): add `nvim_cmd`
2022-05-11 10:39:02 +02:00
Famiu Haque
dfcc584665 feat(api): add nvim_cmd
Adds the API function `nvim_cmd` which allows executing an Ex-command through a Dictionary which can have the same values as the return value of `nvim_parse_cmd()`. This makes it much easier to do things like passing arguments with a space to commands that otherwise may not allow it, or to make commands interpret certain characters literally when they otherwise would not.
2022-05-11 13:12:16 +06:00
zeertzjq
406c2e35b3 vim-patch:8.2.4929: off-by-one error in in statusline item
Problem:    Off-by-one error in in statusline item.
Solution:   Subtrace one less. (closes vim/vim#10394, closes vim/vim#5599)
57ff52677b
2022-05-10 07:59:43 +08:00
zeertzjq
9aa5647e68 vim-patch:8.2.4911: the mode #defines are not clearly named (#18499)
Problem:    The mode #defines are not clearly named.
Solution:   Prepend MODE_.  Renumber them to put the mapped modes first.
249591057b

A hunk from the patch depends on patch 8.2.4861, which hasn't been
ported yet, but that should be easy to notice.
2022-05-10 07:58:58 +08:00
bfredl
77863b8e96 feat(keyset): allow hash conflicts 2022-05-09 19:53:47 +06:00
zeertzjq
8658e82357 vim-patch:8.2.4925: trailing backslash may cause reading past end of line (#18493)
Problem:    Trailing backslash may cause reading past end of line.
Solution:   Check for NUL after backslash.
53a70289c2

N/A patches for version.c:

vim-patch:8.2.4926: #ifdef for crypt feature around too many lines

Problem:    #ifdef for crypt feature around too many lines.
Solution:   Move code outside of #ifdef. (closes vim/vim#10388)
51f0bc31d3
2022-05-09 21:10:53 +08:00
zeertzjq
db506d991d vim-patch:8.2.4924: maparg() may return a string that cannot be reused
Problem:    maparg() may return a string that cannot be reused.
Solution:   use msg_outtrans_special() instead of str2special().
            (closes vim/vim#10384)
0519ce0039
2022-05-09 19:19:21 +08:00
zeertzjq
79929cf44d vim-patch:8.2.4923: test checks for terminal feature unnecessarily
Problem:    Test checks for terminal feature unnecessarily.
Solution:   Remove CheckRunVimInTerminal. (closes vim/vim#10383)
194843028e
2022-05-09 18:07:09 +08:00
zeertzjq
a56a43614c vim-patch:8.2.4918: conceal character from matchadd() displayed too many times
Problem:    Conceal character from matchadd() displayed too many times.
Solution:   Check the syntax flag. (closes vim/vim#10381, closes vim/vim#7268)
9830db6305
2022-05-09 18:06:55 +08:00
zeertzjq
84c031fade vim-patch:8.2.4922: mouse test fails on MS-Windows
Problem:    Mouse test fails on MS-Windows.
Solution:   Set 'mousemodel' to "extend".
b370771bff
2022-05-09 17:16:22 +08:00
zeertzjq
a501127899 vim-patch:8.2.4916: mouse in Insert mode test fails
Problem:    Mouse in Insert mode test fails.
Solution:   Fix the text and check relevant positions.
8e8dc9b323

Use nvim_input_mouse() to set mouse position, and discard mouse event
using getchar().
2022-05-09 17:16:22 +08:00
Dundar Goc
e31b32a293 refactor: replace char_u variables and functions with char
Work on https://github.com/neovim/neovim/issues/459
2022-05-09 10:03:29 +02:00
Shougo
dbdd58e548 feat: cmdline funcs (#18284)
vim-patch:8.2.4903: cannot get the current cmdline completion type and position

Problem:    Cannot get the current cmdline completion type and position.
Solution:   Add getcmdcompltype() and getcmdscreenpos(). (Shougo Matsushita,
            closes vim/vim#10344)
79d599b877

vim-patch:8.2.4910: imperfect coding

Problem:    Imperfect coding.
Solution:   Make code nicer.
9ff7d717aa
2022-05-09 12:52:31 +08:00
bfredl
df41d884a7 refactor(grid): move out grid_* functions from screen.c
Also normalize some types. use "size_t" for unsigned array offsets.
Fix -Wconversion issues missed as screen.c is missing this check.
2022-05-08 13:22:09 +02:00
zeertzjq
1b1cc4d864 vim-patch:8.2.4908: no text formatting for // comment after a statement (#18472)
Problem:    No text formatting for // comment after a statement.
Solution:   format a comment when the 'c' flag is in 'formatoptions'.
48a8a83303
2022-05-08 07:51:12 +08:00
Christian Clason
0a00792332 vim-patch:8.2.4907: some users do not want a line comment always inserted (#18463)
Problem:    Some users do not want a line comment always inserted.
Solution:   Add the '/' flag to 'formatoptions' to not repeat the comment
            leader after a statement when using "o".
2bf875f881
2022-05-07 16:49:36 +02:00
bfredl
03471e292d Merge pull request #18425 from dundargoc/refactor/char_u/1
refactor: replace char_u variables and functions with char
2022-05-07 16:40:00 +02:00
bfredl
eccb989689 Merge pull request #18460 from bfredl/decor33
refactor(decor): use decor levels properly
2022-05-07 14:57:23 +02:00
Dundar Goc
2a378e6e82 refactor: replace char_u variables and functions with char
Work on https://github.com/neovim/neovim/issues/459
2022-05-07 14:54:01 +02:00
bfredl
add3ad6a48 Merge pull request #18450 from dundargoc/build/clint/remove-function-size-warning
build(clint): remove "function size is too large" warning
2022-05-07 14:21:01 +02:00
bfredl
5e2346178c refactor(decor): use decor levels properly 2022-05-07 14:08:21 +02:00
bfredl
6c39f9d427 Merge pull request #18457 from famiu/feat/api/nvim_parse_cmd
fix(api): make `nvim_parse_cmd` work correctly with both range and count
2022-05-07 09:46:06 +02:00
Famiu Haque
14f3383c0d fix(api): make nvim_parse_cmd work correctly with both range and count
It seems range and count can be used together in commands. This PR fixes
the behavior of `nvim_parse_cmd` for those cases by removing the mutual
exclusivity of "range" and "count". It also removes range line number
validation for `nvim_parse_cmd` as it's not its job to validate the
command.
2022-05-07 12:26:49 +06:00
zeertzjq
f5ed1b3908 fix(extmarks): revert to int for extmark row 2022-05-07 09:55:13 +08:00
Dundar Goc
11631354cb vim-patch:8.2.4469: Coverity warns for uninitialized variable
Problem:    Coverity warns for uninitialized variable.
Solution:   Set the value to zero.
05c1734c4f
2022-05-06 23:17:56 +02:00
Dundar Goc
d0897243f6 build(clint): remove "function size is too large" warning
This warning is essentially only triggered for ported vim functions.
It's unlikely that we'll refactor vim functions solely based on their
size since it'd mean we'd greatly deviate from vim, which is a high cost
when it comes to importing the vim patches. Thus, this warning only
serves as an annoyance and should be removed.
2022-05-06 18:03:57 +02:00
bfredl
d9ec57e16a Merge pull request #18302 from dundargoc/refactor/enable-conversion-warning/edit
refactor: enable -Wconversion warning for edit.c
2022-05-06 15:00:40 +02:00
zeertzjq
7978660efb vim-patch:8.2.4881: "P" in Visual mode still changes some registers (#18445)
Problem:    "P" in Visual mode still changes some registers.
Solution:   Make "P" in Visual mode not change any register. (Shougo
            Matsushita, closes vim/vim#10349)
509142ab7a
2022-05-06 19:26:28 +08:00
Dundar Goc
21a31ea929 refactor: enable -Wconversion warning for edit.c
Work on https://github.com/neovim/neovim/issues/567
2022-05-06 11:00:29 +02:00
bfredl
8bbeab9989 Merge pull request #18442 from dundargoc/uncrustify
refactor: upgrade uncrustify configuration to version 0.75
2022-05-06 10:41:51 +02:00
bfredl
e3edcd06e3 Merge pull request #18438 from famiu/feat/api/nvim_parse_cmd
fix(api): make `nvim_parse_cmd` propagate errors
2022-05-06 10:30:48 +02:00
Dundar Goc
544ef994df refactor: upgrade uncrustify configuration to version 0.75 2022-05-06 00:46:30 +02:00
Dundar Goc
eb0cc2a62e refactor: move macro definiton outside of enums
Uncrustify version 0.75 assumes the macro inside the enum is an enum
element, and thus adds a comma after it. This breaks neovim and makes it
impossible to build it.
2022-05-06 00:45:57 +02:00
bfredl
d14d308ce8 Merge pull request #18431 from famiu/feat/api/nvim_get_autocmds/group_name
feat(api): add `group_name` to `nvim_get_autocmds`
2022-05-05 20:17:11 +02:00
Famiu Haque
96289f2416 feat(api): add group_name to nvim_get_autocmds 2022-05-05 23:17:36 +06:00
Famiu Haque
511f06a56e fix(api): make nvim_parse_cmd propagate errors
Makes `nvim_parse_cmd` propagate any errors that occur while parsing to
give the user a better idea of what's wrong with the command.
2022-05-05 23:11:57 +06:00
bfredl
d4f47fe17d Merge pull request #18416 from dundargoc/refactor/remove-char_u
refactor/remove char u
2022-05-05 18:42:00 +02:00
bfredl
7fa8109881 Merge pull request #18314 from tk-shirasaka/global-statusline-on-ext_messages
fix: display global statusline correctly with ext_messages
2022-05-05 18:33:52 +02:00
Dundar Goc
9a671e6a24 refactor: replace char_u variables and functions with char
Work on https://github.com/neovim/neovim/issues/459
2022-05-05 18:10:46 +02:00
bfredl
1eecea8449 Merge pull request #18417 from famiu/feat/api/nvim_parse_cmd
refactor(api): make `range` in `nvim_parse_cmd` an array
2022-05-05 17:31:02 +02:00
Famiu Haque
7aedcd8feb refactor(api): make range in nvim_parse_cmd an array
Changes the `range` value in `nvim_parse_cmd` into an array to describe
range information more concisely. Also makes `range` and `count` be
mutually exclusive by making count `-1` when command takes a range
instead of a count. Additionally corrects the behavior of `count` for
built-in commands by making the default count `0`.
2022-05-05 20:35:14 +06:00
zeertzjq
82c7a82c35 vim-patch:8.2.4868: when closing help window autocmds triggered for wrong window (#18420)
Problem:    When closing help window autocmds triggered for the wrong window.
Solution:   Figure out the new current window earlier. (closes vim/vim#10348)
2a2707d033
2022-05-05 07:26:42 +08:00
zeertzjq
beb8f48489 vim-patch:8.2.4867: listing of mapping with K_SPECIAL is wrong (#18419)
Problem:    Listing of mapping with K_SPECIAL is wrong.
Solution:   Adjust escaping of special characters. (closes vim/vim#10351)
ac402f4d64

Avoid overshadowing.
Cherry-pick Test_list_mapping() from Vim patches 8.2.{0148,2994}.
Fix rhs_is_noop.
2022-05-05 07:23:27 +08:00
zeertzjq
6798f1fab0 vim-patch:8.2.4865: :startinsert right after :stopinsert may not work (#18418)
Problem:    :startinsert right after :stopinsert does not work when popup menu
            is still visible.
Solution:   Use ins_compl_active() instead of pum_visible(). (closes vim/vim#10352)
cd5dbad184
2022-05-05 06:58:20 +08:00
shirasaka
b5957c3c32 fix: display global statusline correctly with ext_messages 2022-05-05 06:15:09 +09:00
bfredl
e6c71574a0 Merge pull request #18386 from ii14/version_dict_prerelease
feat: add "prerelease" to version dict
2022-05-04 18:49:05 +02:00