Commit Graph

17990 Commits

Author SHA1 Message Date
zeertzjq
0a049c322f test: improve mapping tests and docs (#19619) 2022-08-02 11:13:22 +08:00
zeertzjq
50672e3850 vim-patch:8.2.5013: after text formatting cursor may be in an invalid position
Problem:    After text formatting the cursor may be in an invalid position.
Solution:   Correct the cursor position after formatting.
78d52883e1
2022-08-02 05:58:51 +08:00
zeertzjq
4f576be881 vim-patch:8.2.4956: reading past end of line with "gf" in Visual block mode
Problem:    Reading past end of line with "gf" in Visual block mode.
Solution:   Do not include the NUL in the length.
395bd1f6d3

Omit trailing space: removed in patch 9.0.0126.
2022-08-02 05:58:51 +08:00
zeertzjq
c57c25649b vim-patch:8.2.4899: with latin1 encoding CTRL-W might go before the cmdline
Problem:    With latin1 encoding CTRL-W might go before the start of the
            command line.
Solution:   Check already being at the start of the command line.
ef02f16609
2022-08-02 05:58:51 +08:00
jdrouhard
d4b9f8186d vim-patch:9.0.0126 (#19612)
vim-patch:9.0.0126: expanding file names fails in dir with more than 255 entries

Problem:    Expanding file names fails in directory with more than 255
            entries.
Solution:   Use an int instead of char_u to count. (John Drouhard,
            closes vim/vim#10818)
95fca12b0e
2022-08-02 05:39:23 +08:00
zeertzjq
d954e8da62 feat(mapset): support restoring "replace_keycodes" and "desc" 2022-08-01 21:54:18 +08:00
zeertzjq
8a032a6866 vim-patch:8.2.5106: default cmdwin mappings are re-mappable
Problem:    Default cmdwin mappings are re-mappable.
Solution:   Make the default mappings not re-mappable. (closes vim/vim#10580)  Use
            symbols for the first do_map() argument.
44068e97db
2022-08-01 21:54:18 +08:00
zeertzjq
9cebfbe6ab vim-patch:8.2.4831: crash when using maparg() and unmapping simplified keys
Problem:    Crash when using maparg() and unmapping simplified keys.
Solution:   Do not keep a mapblock pointer. (closes vim/vim#10294)
2c8a7ebdad

N/A patches for version.c:

vim-patch:8.2.0832: compiler warning for uninitialized variable

Problem:    Compiler warning for uninitialized variable. (Tony Mechelynck)
Solution:   Add initial value.
a55ba06f69
2022-08-01 21:54:18 +08:00
zeertzjq
34e7dc5d05 vim-patch:8.2.2804: setting buffer local mapping with mapset() changes global
Problem:    Setting buffer local mapping with mapset() changes global mapping.
Solution:   Only set the local mapping. (closes vim/vim#8143)
7ba1e4d363
2022-08-01 21:54:18 +08:00
zeertzjq
7d45f1a5e8 vim-patch:8.2.1773: crash when calling mapset() with a list as first argument
Problem:    Crash when calling mapset() with a list as first argument.
Solution:   Check for NULL. (closes vim/vim#7040)
1b9129809d
2022-08-01 21:54:18 +08:00
zeertzjq
6963c2bdcd vim-patch:8.2.0815: maparg() does not provide enough information for mapset()
Problem:    maparg() does not provide enough information for mapset().
Solution:   Add "lhsraw" and "lhsrawalt" items.  Drop "simplified"
9c65253fe7

vim-patch:9.0.0127: unused variable

Problem:    Unused variable.
Solution:   Remove the variable. (closes vim/vim#10829)
e95f22f63a
2022-08-01 21:54:18 +08:00
zeertzjq
5c72640bc2 vim-patch:8.2.0812: mapset() does not properly handle <> notation
Problem:    mapset() does not properly handle <> notation.
Solution:   Convert <> codes. (closes vim/vim#6116)
c94c1467b9
2022-08-01 21:54:18 +08:00
zeertzjq
083865071b vim-patch:8.2.0807: cannot easily restore a mapping
Problem:    Cannot easily restore a mapping.
Solution:   Add mapset().
4c9243f9fb

Use MapArgument to reduce number of arguments of map_add().

N/A patches for version.c:

vim-patch:8.2.0809: build failure with small features

Problem:    Build failure with small features. (Tony Mechelynck)
Solution:   Move "expr" inside #ifdef.
5a80f8ad5d
2022-08-01 21:54:18 +08:00
ii14
db6e93c48d feat(api): add replace_keycodes to nvim_set_keymap (#19598) 2022-08-01 21:35:08 +08:00
Gustavo Sampaio
ece0850b73 fix(session): respect sessionoptions=terminal #19497
fixes #13078

Co-authored-by: Yuta Katayama <8683947+yutkat@users.noreply.github.com>
2022-08-01 05:13:46 -07:00
Lewis Russell
bcb4186cf6 refactor: replace_makeprg (#19570) 2022-08-01 12:02:53 +01:00
zeertzjq
975a273125 test(old): unskip test that already passes 2022-08-01 06:54:35 +08:00
zeertzjq
c9ca90229b vim-patch:9.0.0124: code has more indent than needed
Problem:    Code has more indent than needed.
Solution:   Use continue and return statements. (closes vim/vim#10824)
101d57b34b
2022-08-01 06:18:52 +08:00
bfredl
68ec497d52 Merge pull request #19437 from dundargoc/refactor/char_u-to-char
refactor: replace char_u with char
2022-07-31 15:55:01 +02:00
Munif Tanjim
86110ec933 fix(highlight): add missing 'nocombine' to nvim_get_hl_* apis (#19586) 2022-07-31 13:38:00 +02:00
zeertzjq
2c522854c7 vim-patch:9.0.0118: no test for what patch 9.0.0155 fixes
Problem:    No test for what patch 9.0.0155 fixes.
Solution:   Add a test. Fix typos.  (closes vim/vim#10822)
750209459c
2022-07-31 18:51:06 +08:00
Shougo Matsushita
63244f68e7 vim-patch:9.0.0115: when 'cmdheight' is zero pressing ':' may scroll a window
Problem:    When 'cmdheight' is zero pressing ':' may scroll a window.
Solution:   Add the made_cmdheight_nonzero flag and set 'scrolloff' to zero.
6747cf1671
2022-07-31 17:15:36 +08:00
Shougo Matsushita
81a1d26c3e vim-patch:9.0.0114: the command line takes up space even when not used
Problem:    The command line takes up space even when not used.
Solution:   Allow for 'cmdheight' to be set to zero. (Shougo Matsushita,
            closes vim/vim#10675, closes vim/vim#940)
f39cfb7262

Omit win_redr_ruler() change: winbar may still need redraw.
Omit win_update() changes: Nvim doesn't use `Rows` there.
Omit redraw_asap(): removed.
2022-07-31 17:15:36 +08:00
dundargoc
abc087f4c6 docs: fix typos (#19024)
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Co-authored-by: Valery Viktorovsky <viktorovsky@gmail.com>
2022-07-31 16:46:38 +08:00
Shougo
c1652bdcb5 cmdheight=0: fix bugs part2 (#19185) 2022-07-31 13:13:19 +08:00
Dundar Goc
824a729628 refactor: replace char_u with char
Work on https://github.com/neovim/neovim/issues/459
2022-07-31 00:52:59 +02:00
Christian Clason
29d5ca7d66 vim-patch:9.0.0111: "nocombine" is missing from synIDattr()
Problem:    "nocombine" is missing from synIDattr().
Solution:   Add "nocombine". (Munif Tanjim, closes vim/vim#10816)
de78632c41
2022-07-31 06:25:57 +08:00
zeertzjq
9511faa819 vim-patch:9.0.0109: writing over the end of a buffer on stack (#19581)
Problem:    Writing over the end of a buffer on stack when making list of
            spell suggestions.
Solution:   Make sure suggested word is not too long. (closes vim/vim#10812)
1eead4cf1d
2022-07-31 05:48:24 +08:00
Dundar Goc
aa9ba05d70 refactor: enable -Wconversion warning for screen.c
Closes https://github.com/neovim/neovim/issues/567
2022-07-30 17:15:27 +02:00
zeertzjq
d36d9be8ff fix(terminal): avoid reading over the end of cell.chars (#19580) 2022-07-30 21:40:30 +08:00
dundargoc
c34d72bf7c refactor: enable -Wconversion warning for spell.c (#19538)
Work on https://github.com/neovim/neovim/issues/567
2022-07-30 20:59:34 +08:00
zeertzjq
e59bc078de fix(screen): check for col instead of vcol when drawing fold (#19572) 2022-07-29 21:47:21 +08:00
zeertzjq
02efdb4d58 refactor: fix clang and PVS warnings (#19569)
The last commit didn't actually disable V1028 because of a typo.
Fix the typo so it is actually disabled.
2022-07-29 14:44:18 +08:00
dundargoc
1ebe7cd160 refactor: enable -Wconversion warning for syntax.c (#19533)
Work on https://github.com/neovim/neovim/issues/567
2022-07-29 10:05:29 +08:00
zeertzjq
88ed33230a vim-patch:9.0.0101: invalid memory access in diff mode with "dp" and undo (#19568)
Problem:    Invalid memory access in diff mode with "dp" and undo.
Solution:   Make sure the line number does not go below one.
4e677b9c40
2022-07-29 07:31:54 +08:00
zeertzjq
352a177dae vim-patch:9.0.0026: accessing freed memory with diff put (#19564)
Problem:    Accessing freed memory with diff put.
Solution:   Bail out when diff pointer is no longer valid.
c5274dd122
2022-07-29 06:53:32 +08:00
Thomas Vigouroux
161efc9ea4 Merge pull request #19486 from dundargoc/refactor/conversion
refactor: enable -Wconversion warning for lua/treesitter.c
2022-07-28 14:31:26 +02:00
zeertzjq
f254fc67a5 vim-patch:9.0.0099: scrollback can be wrong after redrawing the command line (#19562)
Problem:    Scrollback can be wrong after redrawing the command line.
Solution:   Clear unfinished scrollback when redrawing. (closes vim/vim#10807)
46af7bc08d
2022-07-28 20:07:32 +08:00
zeertzjq
9cb8b5f8db vim-patch:9.0.0097: long quickfix line is truncated for :clist (#19561)
Problem:    Long quickfix line is truncated for :clist.
Solution:   Allocate a buffer if needed.
5f30e26f69
2022-07-28 19:49:18 +08:00
dundargoc
b4e12bfa00 refactor: enable -Wconversion warning for spellfile.c (#19527)
Work on https://github.com/neovim/neovim/issues/567
2022-07-28 18:49:46 +08:00
Dundar Goc
7304b7eee3 refactor: enable -Wconversion warning for lua/treesitter.c
Work on https://github.com/neovim/neovim/issues/567
2022-07-28 12:13:06 +02:00
zeertzjq
0134a2cb3e vim-patch:9.0.0094: cursor restored unexpected with nested autocommand
Problem:    Cursor restored unexpected with nested autocommand.
Solution:   Do not restore the cursor when it was moved intentionally.
            (closes vim/vim#10780)
3d6ee8bda0
2022-07-28 11:40:35 +08:00
zeertzjq
394d65494a vim-patch:partial:9.0.0077: wrong restored cursor position when switching window in autocmd
Problem:    When switching window in autocmd the restored cursor position may
            be wrong.
Solution:   Do not restore the cursor if it was not set. (closes vim/vim#10775)
b03950fafa

This patch cannot be fully ported because it depends on patch 8.2.3518.
2022-07-28 11:38:02 +08:00
zeertzjq
8e67af1b20 vim-patch:9.0.0061: ml_get error with nested autocommand
Problem:    ml_get error with nested autocommand.
Solution:   Also check line numbers for a nested autocommand. (closes vim/vim#10761)
5fa9f23a63
2022-07-28 11:38:02 +08:00
zeertzjq
bdbf843031 vim-patch:8.2.3912: the ins_complete() function is much too long (#19555)
Problem:    The ins_complete() function is much too long.
Solution:   Split it up into multiple functions. (Yegappan Lakshmanan,
            closes vim/vim#9414)
bf7ff61af4
2022-07-28 11:35:13 +08:00
zeertzjq
721ea8fab2 vim-patch:9.0.0096: flag "new_value_alloced" is always true
Problem:    Flag "new_value_alloced" is always true.
Solution:   Remove "new_value_alloced". (closes vim/vim#10792)
f6782732ab
2022-07-28 06:48:36 +08:00
zeertzjq
e6b7f70294 vim-patch:9.0.0095: conditions are always true
Problem:    Conditions are always true.
Solution:   Remove useless conditions. (closes vim/vim#10802)
122dea7007
2022-07-28 06:45:22 +08:00
dundargoc
e0eebe3087 refactor: enable -Wconversion warning for window.c (#19537)
Work on https://github.com/neovim/neovim/issues/567
2022-07-27 23:39:52 +01:00
dundargoc
dadb0d6f01 refactor: enable -Wconversion warning for eval/funcs.c (#19541)
Work on https://github.com/neovim/neovim/issues/567
2022-07-27 23:37:39 +01:00
Lewis Russell
d27e4d657b perf(api): optimize nvim_cmd (#19513)
Reduce the amount of string allocations and length calculations.

With the following benchmark:

```lua
total = 0
for _ = 1, loops do
  local start = now()
  vim.api.nvim_cmd({cmd = 'let', args = {'a', '=', '1'}}, {})
  total = total + (now() - start)
end
print('nvim_cmd', total / loops)
```

```
hyperfine 'nvim --clean test.lua +source +q'
```

Before: 234.5ms
After:  173.8ms
2022-07-27 23:35:01 +01:00