Commit Graph

12028 Commits

Author SHA1 Message Date
Matthieu Coudron
2ea3127697 screen.c: fix display of signcolumn=auto in diffs (#13688)
sign_id was not reset when filler lines were involved, thus causing a
bad alignment between columns.

You could check that before this commit,

    bin/nvim -u NORC  --cmd "setglobal signcolumn=yes:4" --cmd "set diffopt+=foldcolumn:0" -d ../test1.txt ../test2.txt

would result in an irregular column width.
2021-01-05 21:23:35 +01:00
Jan Edmund Lazo
25cb2c722e vim-patch:8.2.0590: no 'backspace' value allows ignoring the insertion point
Problem:    No 'backspace' value allows ignoring the insertion point.
Solution:   Add the "nostop" and 3 values. (Christian Brabandt, closes vim/vim#5940)
aa0489e12d
2021-01-05 09:47:38 -05:00
Jan Edmund Lazo
5b897acfc1 test/old: restore test_backspace_opt.vim
Porting it to test/functional/legacy/backspace_opt_spec.lua
was a mistake.
Tests pass after commenting out some lines for Vi compatibility.

File is copied from Vim as of patch v8.2.0540.
Patch v8.2.0540 cannot be fully ported yet.
This file is a prequisite for future v8.2.x patches.
2021-01-05 09:47:38 -05:00
Jan Edmund Lazo
4f53ebaceb vim-patch:8.2.0050: after deleting a file mark it is still in viminfo
Problem:    After deleting a file mark it is still in viminfo.
Solution:   When a file mark was deleted more recently than the mark in the
            merged viminfo file was updated, do not store the mark. (Pavol
            Juhas, closes vim/vim#5401, closes vim/vim#1339)
8cd6cd8087

Neovim's ShaDa is incompatible with Vim's "viminfo"
so "viminfo" tests fail.

N/A patches for version.c:

vim-patch:8.1.1731: command line history not read from viminfo on startup

Problem:    Command line history not read from viminfo on startup.
Solution:   Get history length after initializing it.
26b654a5df

vim-patch:8.1.1764: ":browse oldfiles" is not tested

Problem:    ":browse oldfiles" is not tested.
Solution:   Add a test.
5328cb8986

vim-patch:8.1.2111: viminfo file not sufficiently tested

Problem:    Viminfo file not sufficiently tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes vim/vim#5009)
2a8d3b8997

vim-patch:8.1.2126: viminfo not sufficiently tested

Problem:    Viminfo not sufficiently tested.
Solution:   Add more test cases.  Clean up comments. (Yegappan Lakshmanan,
            closes vim/vim#5032)
6bd1d77067
2021-01-05 09:47:38 -05:00
chentau
231f75e086 change gravity to be a boolean flag, and add corresponding flag for end position of extmark 2021-01-05 00:28:34 -08:00
erw7
eaab8e494d buffer.c: fix problem of memory allocation 2021-01-05 15:09:43 +09:00
Björn Linse
4cdc8b1efd input: consider "-- more --" state to be blocking, fixes #11899 2021-01-04 09:41:25 +01:00
chentau
10b278bdae allow for extmark gravity to be set through api 2021-01-03 13:59:24 -08:00
Jan Edmund Lazo
a1ed941a78 vim-patch:8.2.0861: cannot easily get all the current marks (#13676)
Problem:    Cannot easily get all the current marks.
Solution:   Add getmarklist(). (Yegappan Lakshmanan, closes #6032)
cfb4b47de0

Cherry-pick the column number fix from patch v8.2.0871
because patch v8.2.0871 cannot be fully ported
without the method patches.

Co-authored-by: Peter Wolf <pwolf2310@gmail.com>
2021-01-03 15:33:21 -05:00
Thomas Vigouroux
fd960a33e4 fix: check for valid buffer handles in modify_keymap (#13543)
Fixes #13541
Neovim would crash when trying to map a key on non existant buffer
2021-01-03 19:14:18 +01:00
Björn Linse
a58d96a7ed buffer updates: mark sorted region as changed.
NB: currently this invalidates all extmarks inside the region.
Later on within-line extmarks could be preserved
2021-01-03 14:47:37 +01:00
Matthieu Coudron
7a81a0c073 Merge pull request #13665 from janlazo/vim-8.2.0917
vim-patch:8.1.{1667,1672,1822},8.2.{407,917}
2021-01-03 10:10:10 +01:00
Jan Edmund Lazo
c3931495b2 vim-patch:8.2.0470: Test_confirm_cmd_cancel() can fail on a slow system
Problem:    Test_confirm_cmd_cancel() can fail on a slow system.
Solution:   Use WaitForAssert(). (Ozaki Kiichi, closes vim/vim#5861)
7b1b36b1cb
2021-01-02 18:49:25 -05:00
Jan Edmund Lazo
30e8c1779f vim-patch:8.2.0461: confirm test fails on amd64 system
Problem:    Confirm test fails on amd64 system. (Alimar Riesebieter)
Solution:   Add an extra WaitForAssert(). (Dominique Pelle)
9207d1f523
2021-01-02 18:48:31 -05:00
Jan Edmund Lazo
d216314e5b vim-patch:8.2.0458: missing feature check in test function
Problem:    Missing feature check in test function.
Solution:   Add check commands.
bea9023d42
2021-01-02 18:47:06 -05:00
Jan Edmund Lazo
df40d973cc vim-patch:8.2.0456: Test_confirm_cmd is flaky
Problem:    Test_confirm_cmd is flaky.
Solution:   Add a term_wait() call. (closes vim/vim#5854)
72749f062f

Cherry-pick Test_confirm_cmd() from patch v8.2.0203
because that patch modifies multiple files.
Copied code is based on Test_confirm_cmd() as of patch v8.2.0456.

N/A patches for version.c:

vim-patch:8.2.2274: badge for Travis is outdated

Problem:    badge for Travis is outdated.
Solution:   Update badge for move from travis-ci.org to travis-ci.com.
2f91e2f8da

vim-patch:8.2.2277: missing backslash

Problem:    Missing backslash.
Solution:   Add backslash.
9281c6cae4
2021-01-02 18:46:31 -05:00
Jan Edmund Lazo
215aa83b2a vim-patch:8.1.1822: confusing error message when range is not allowed
Problem:    Confusing error message when range is not allowed.
Solution:   With ADDR_NONE give e_norange.  Change e_invaddr to e_invrange for
            consistency.
0acae7acc4
2021-01-02 12:20:35 -05:00
Jan Edmund Lazo
cb5ba225f8 vim-patch:8.2.0407: no early check if :find and :sfind have an argument
Problem:    No early check if :find and :sfind have an argument.
Solution:   Add EX_NEEDARG.
2d10cd4780

Cherry-pick Test_find_cmd() from patch v8.2.0270.
Use "exe 'cd ' . save_dir" pattern
because patches v8.1.1291, v8.1.2278 are not ported yet.
Cherry-pick modeline from patch v8.1.1432.
2021-01-02 12:20:35 -05:00
Jan Edmund Lazo
ffc3df51f1 vim-patch:8.1.1667: flags for Ex commands may clash with other symbols
Problem:    Flags for Ex commands may clash with other symbols.
Solution:   Prepend with EX_.
8071cb2c64

N/A patches for version.c:

vim-patch:8.1.1672: "make cmdidxs" doesn't work

Problem:    "make cmdidxs" doesn't work.
Solution:   Update macro names. (Naruhiko Nishino, closes vim/vim#4660)
d94ac0caca

Error message for src/nvim/ex_cmds.lua
which omits the "EX_" prefix for the flags.
2021-01-02 12:20:35 -05:00
Jan Edmund Lazo
01eda00962 vim-patch:8.2.0917: quickfix entries do not suport a "note" type
Problem:    Quickfix entries do not suport a "note" type.
Solution:   Add support for "note". (partly by Yegappan Lakshmanan,
            closes vim/vim#5527, closes vim/vim#6216)
e928366de5
2021-01-02 12:20:34 -05:00
Jan Edmund Lazo
5eccfd2b2e Merge pull request #13655 from janlazo/vim-8.2.2255
vim-patch:8.1.{1241,1261,1275,1281,1549,1590,1881,2079,2322,2360,2411},8.2.{113,388,934,2255,2258,2260,2269}
2021-01-01 17:40:26 -05:00
Jan Edmund Lazo
fc191352e9 vim-patch:8.2.2269: not all :hardcopy code covered by tests
Problem:    Not all :hardcopy code covered by tests.
Solution:   Test more combinations. (Dominique Pellé, closes vim/vim#7595)
edc10b541b
2021-01-01 16:56:25 -05:00
Jan Edmund Lazo
60855116f0 vim-patch:8.2.0388: printmbcharset option not tested
Problem:    Printmbcharset option not tested.
Solution:   Add a test.  Enable PostScript for AppVeyor build. (Dominique
            Pelle, closes vim/vim#5783)
833805a486
2021-01-01 16:56:24 -05:00
Jan Edmund Lazo
85c658e388 vim-patch:8.2.2260: window resize test fails in very wide terminal
Problem:    Window resize test fails in very wide terminal.
Solution:   Resize using the 'columns' option.  (Vladimir Lomov, closes vim/vim#7592)
5efe0e5d16
2021-01-01 16:56:24 -05:00
Jan Edmund Lazo
b580cf83bd vim-patch:8.2.2258: not all OCaml related files are detected
Problem:    Not all OCaml related files are detected.
Solution:   Update OCaml file type detection.  (Markus Mottl, closes vim/vim#7590)
beef4eeda5
2021-01-01 16:56:24 -05:00
Björn Linse
dac3b35ece Merge pull request #11833 from bfredl/set_text
nvim_buf_set_text
2021-01-01 20:21:09 +01:00
Björn Linse
90f619f140 Merge pull request #13592 from bfredl/setmouse
ui: make 'mouse' handling in external UI more consistent
2021-01-01 20:04:09 +01:00
Björn Linse
39d098f9f9 api: set_text: fix some byte count issues
add byte count tests

update documentation
2021-01-01 19:51:58 +01:00
chentau
f7d01a65d5 api: set_text: more tests, and fixing lint
removing pending virtcol tests

Allow passing in empty array as a shorthand for array with empty string; add more documentation

add check for start_row as well
2021-01-01 19:51:58 +01:00
Tony Chen
45b14f88db api: set_text: rebase, update to new api, and add more tests 2021-01-01 19:51:45 +01:00
Blaž Hrastnik
29ad2ebc16 api: set_text: fix validation and some issues
fix double free because intermediary lines weren't xmemdup'd.

NL-for-NUL dance.

Normalize row indices and perform more validation.

Adjust the cursor position if it's on the right side of the replacement.

Tests and documentation.
2021-01-01 19:51:37 +01:00
Björn Linse
9be19b770d api: set_text: first stab at nvim_buf_set_text 2021-01-01 19:51:24 +01:00
Jan Edmund Lazo
86ae394aeb vim-patch:8.2.0934: lhelpgrep twice in help window doesn't jump to the help topic
Problem:    Running lhelpgrep twice in a help window doesn't jump to the help
            topic.
Solution:   Check whether any window with the location list is present.
            (Yegappan Lakshmanan, closes vim/vim#6215)
ec98e93a82
2021-01-01 13:28:35 -05:00
Jan Edmund Lazo
134ea0c935 vim-patch:8.1.2360: quickfix test coverage can still be improved
Problem:    Quickfix test coverage can still be improved.
Solution:   Add more test cases. (Yegappan Lakshmanan, closes vim/vim#5276)
15a7bdcb77
2021-01-01 13:20:27 -05:00
Björn Linse
6db86cb2d3 ui: make 'mouse' handling in external UI more consistent
before the behaviour of 'mouse' was inconsistent in external UI,
as some remapping logic would check has_mouse() and others don't
(no difference in TUI or vim classic). With this change, the behaviour
is consistently up to the UI decide (see ui.txt edit)

Behaviour of tui.c is unaffected by this change.
2021-01-01 15:47:44 +01:00
Jan Edmund Lazo
3847b58a13 vim-patch:8.1.2411: function argument copied unnecessarily
Problem:    Function argument copied unnecessarily.
Solution:   Use the argument directly.
1b03a193b3
2021-01-01 04:58:05 -05:00
Jan Edmund Lazo
d7b577d6ab vim-patch:8.1.1281: cannot specify a count with :chistory
Problem:    Cannot specify a count with :chistory.
Solution:   Add a count to :chistory and :lhistory. (Yegappan Lakshmanan,
            closes vim/vim#4344)
8ffc7c8b5f
2021-01-01 04:58:05 -05:00
Jan Edmund Lazo
d1608f7503 vim-patch:8.1.1275: cannot navigate to errors before/after the cursor
Problem:    Cannot navigate to errors before/after the cursor.
Solution:   Add the :cbefore and :cafter commands. (Yegappan Lakshmanan,
            closes vim/vim#4340)
cf6a55c4b0
2021-01-01 04:58:05 -05:00
erw7
35dc6d6e87 vim-patch:8.1.1261: no error for quickfix commands with negative range
Problem:    No error for quickfix commands with negative range.
Solution:   Add ADDR_UNSIGNED and use it for quickfix commands.  Make
            assert_fails() show the command if the error doesn't match.
25190db225

N/A patches for version.c:

vim-patch:8.2.0113: "make cmdidxs" fails

Problem:    "make cmdidxs" fails.
Solution:   Allow address for ":cquit".  Add --not-a-term to avoid a delay.
9b24dfcb9f
2021-01-01 04:57:50 -05:00
Jan Edmund Lazo
f3c242c13c vim-patch:8.1.1241: Ex command info contains confusing information
Problem:    Ex command info contains confusing information.
Solution:   When using the NOTADR flag use ADDR_OTHER for the address type.
            Cleanup code using NOTADR.  Check for errors in
            create_cmdidxs.vim.  Adjust Makefile to see the errors.
b731689e85

Use Lua's "assert()" to make an invalid command definition
a compilation error.

Misc changes:

Remove 'RESTRICT' flag.
Neovim does not support "restricted" mode
since commit 7777532ceb.

TODO:
Do not generate files before Lua assertions
so that CMake always runs the generator script
if the previous build has an invalid command definition.
2021-01-01 04:30:55 -05:00
Jan Edmund Lazo
cf3a861017 vim-patch:8.1.1549: quickfix test fails
Problem:    Quickfix test fails.
Solution:   Negate result of bt_quickfix().
61eeeea8e6

Patch v8.1.1547 introduces the bug that is fixed by this patch.

N/A patches for version.c:

vim-patch:8.1.1590: popup window test fails

Problem:    Popup window test fails.
Solution:   Add "scrollbar" to expected result.
6c6a603cd2

vim-patch:8.1.1881: popup window test fails in some configurations

Problem:    Popup window test fails in some configurations.
Solution:   Check that screendumps can be made.
f4665e78f2

vim-patch:8.1.2079: popup window test fails without +terminal

Problem:    Popup window test fails without +terminal.
Solution:   Check for the +terminal feature.
d2c1fb476d

vim-patch:8.1.2322: quickfix test fails in very big terminal

Problem:    Quickfix test fails in very big terminal.
Solution:   Adjust the expected result for the width. (Masato Nishihata,
            closes vim/vim#5244)
ffc4fb8fee

Patch v8.1.2339 reverts the change but patch v8.1.2340 restores it.
Port of patch v8.1.2340 was merged and includes changes from patches
v8.1.2320, v8.1.2322, v8.1.2339.

vim-patch:8.2.2255: Tcl test fails

Problem:    Tcl test fails.
Solution:   Change option handling.
1779ff4842
2020-12-31 19:16:30 -05:00
Jan Edmund Lazo
b01a60b1aa Revert "vim-patch:8.1.0822: peeking and flushing output slows down execution"
This reverts commit 0519a75f6e.
2020-12-31 16:44:53 -05:00
Jan Edmund Lazo
27548e3cd0 Revert "vim-patch:8.1.1189: mode is not cleared when leaving Insert mode"
This reverts commit 4afddb8f57.
2020-12-31 16:44:53 -05:00
Jan Edmund Lazo
723e009214 Revert "vim-patch:8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc"
This reverts commit 44bb7147e4.

Avoid regression mentioned in c64cce906e (commitcomment-45554271)
2020-12-31 16:44:53 -05:00
Jan Edmund Lazo
bc8f2fdca4 vim-patch:8.1.1727: code for viminfo support is spread out
Problem:    Code for viminfo support is spread out.
Solution:   Move to code to viminfo.c. (Yegappan Lakshmanan, closes vim/vim#4686)
defa067c54

N/A patches for version.c:

vim-patch:8.1.1230: a lot of code is shared between vim.exe and gvim.exe

Problem:    A lot of code is shared between vim.exe and gvim.exe.
Solution:   Optionally put the shared code in vim.dll. (Ken Takata,
            closes vim/vim#4287)
afde13b62b

vim-patch:8.2.2247: VMS: various smaller problems

Problem:    VMS: various smaller problems.
Solution:   Fix VMS building and other problems. (Zoltan Arpadffy)
467676d468
2020-12-30 15:55:18 -05:00
Jan Edmund Lazo
3ea77f50cb vim-patch:8.1.0172: 'viminfofile' option does not behave like a file name
Problem:    'viminfofile' option does not behave like a file name.
Solution:   Add the P_EXPAND flag. (closes vim/vim#3178)
c229e54a69
2020-12-30 15:55:18 -05:00
Matthieu Coudron
52163c66b9 fix(fold): highlight even in folds (#13643) 2020-12-30 15:17:41 +01:00
Jan Edmund Lazo
d2837d5efc vim-patch:8.1.2100: :mksession is not sufficiently tested
Problem:    :mksession is not sufficiently tested.
Solution:   Add more test cases. (Yegappan Lakshmanan, closes vim/vim#4993)
ee1a2b5a2a
2020-12-29 22:35:25 -05:00
Jan Edmund Lazo
f0a8ccff8f vim-patch:8.1.0790: code for creating tabpages in session is too complex
Problem:    Code for creating tabpages in session is too complex.
Solution:   Simplify the code. (Jason Franklin)
57a6bf0567
2020-12-29 22:31:21 -05:00
Jan Edmund Lazo
c60f7c2064 vim-patch:8.1.0151: mksession test fails on MS-Windows
Problem:    Mksession test fails on MS-Windows.
Solution:   Always use an argument for :lcd.
81e2ac7bb6
2020-12-29 22:31:21 -05:00