| Commit message (Collapse) | Author | Age |
| |
|
|
|
| |
Temporary (?) workaround for currently failing check_alloc_log tests.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Dispense with the FuncUndefined/CmdUndefined quasi-optimization.
If there are no rplugins, plugin/rplugin.vim takes less than 1ms.
Closes #5821
Closes #6250
Helped-by: Qiming zhao <chemzqm@gmail.com>
|
|
|
| |
Regression test coverage for #6070.
|
|\
| |
| | |
vim-patch:7.4.2051,7.4.2068,7.4.2097
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Not all arguments of trunc_string() are tested. Memory access
error when running the message tests.
Solution: Add another test case. (Yegappan Lakshmanan) Make it easy to run
unittests with valgrind. Fix the access error.
https://github.com/vim/vim/commit/b9644433d2728e99fab874e5e33147ad95d23a31
|
| |
| |
| |
| |
| |
| |
| | |
Problem: No proper testing of trunc_string().
Solution: Add a unittest for message.c.
https://github.com/vim/vim/commit/502ae4ba63561c98ac69af26cd9883bfd18d225f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the buffer that nvim_buf_set_lines() is changing is not in any vim
window, fix_cursor() leads to calling ml_get_buf() with an invalid line
number. The condition that fix_cursor() was called on was (buf ==
curbuf), but this is always true because of the call to
switch_to_win_for_buf() earlier in the function.
Instead this should be predicated on (save_curbuf.br_buf == NULL)
|
|/ |
|
|
|
|
|
|
|
|
|
|
| |
After using 'termopen("echo") the current buffer content is changed,
but the cursor position of the current window is not updated.
Because of this, a call to 'mb_adjust_cursor()' can lead to a
heap-buffer-overflow.
Fix this by resetting the cursor for the current window.
Fixes #3161
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix a problem when filtering manually folded lines
When foldMarkAdjustRecurse() is called to adjust folds that start inside
the range of lines that are being moved and end outside that range, it
calculates `amount_after` for its recursive call incorrectly.
The calculation assumes that folds inside the changed range are being
deleted, but this is not always the case.
This means nested folds that start after the changed range of lines are
shifted an incorrect amount.
We fix this by calculating the `amount_after` differently if the folds
inside the changed range are not being deleted.
|
|
|
|
|
| |
We pull luacheck HEAD, so this is a "catch up" commit to fix
newly-discovered errors.
|
|
|
|
|
|
| |
Let the terminal dictate the normal-mode cursor position. This will be
disorienting sometimes, but it is closer to what users expect vs always
going to the last line.
|
|\
| |
| | |
vim-patch:42ebd06,7.4.2098,6f1d9a0,7.4.2095
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Man test fails when run with the GUI.
Solution: Adjust for different behavior of GUI. Add assert_inrange().
https://github.com/vim/vim/commit/61c04493b00f85d0b97436260a9ef9ab82143b78
Only changes related to assert_inrange() were included, since we have a
distinct man plugin.
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Default Vim behavior of i_CTRL-<Space> is to insert the last-inserted
text and exit insert mode. :help i_CTRL-@
Before this commit that did not happen because insert_handle_key()
checks for NUL instead of checking for ' ' with a CTRL `mod_mask`.
I'm leaving the check for NUL despite the fact that at the moment that
key is never seen when using the terminal UI (not for C-Space, nor C-@).
This is because I assume it's still allowed for other front-ends to pass
NUL, but at the moment the terminal UI isn't.
|
|
|
|
|
|
|
|
| |
Problem: Cannot get all information about a quickfix list.
Solution: Add an optional argument to get/set loc/qf list(). (Yegappan
Lakshmanan)
https://github.com/vim/vim/commit/d823fa910cca43fec3c31c030ee908a14c272640
|
|\
| |
| | |
Better b:changedtick support
|
| | |
|
| | |
|
| |
| |
| | |
Fixes #6147
|
| | |
|
| |
| |
| | |
Port of vim-patch:8.0.0343
|
| |
| |
| | |
Port of vim-patch:8.0.0345
|
| | |
|
| | |
|
| | |
|
| |
| |
| | |
If I am not mistaking, this commit should not change any functionality.
|
| |
| |
| | |
It still may be unlocked by `:unlock b:.var`.
|
| |
| |
| | |
Contains a number of FIXMEs.
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Refactor writefile() and create more tests for it
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
1. When calling writefile(list, fname, []) do not show error message twice.
2. Do not allow file name to be overwritten for writefile([1], 2).
3. Do not show “Can’t open file with an empty name” error after error like
“using Float as a String” when type of the second argument is not correct.
4. Do not give multiple error messages and still continue for code like
`writefile(["test", [], [], [], "tset"])`.
Note that to fix 4. ideally I need tv_check_str_or_nr which is currently present
in two PRs: #6114 and #5119. I would want to avoid copying this function into
a yet another PR.
Ref vim/vim#1476.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Make the test work after the "follows cursor" changes.
This "auto-resize" feature is going away soon, anyways.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Closes #2257
Closes #2636
References #2683
|
| | |
| | |
| | |
| | | |
Closes #2637
|
| |/
|/| |
|
| | |
|
|\ \ |
|
| |\ \
| | | |
| | | | |
cmdline: CTRL-R: Omit trailing ^M character
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The "technically correct" interpretation is to execute the first line
that is seen (and this is what happens on middle-click paste in Vim).
^M is only intended to "defuse" the newline, so the user can review it.
The parent commit changed the behavior to insert <Space> between lines,
but that's a higher-risk change: it is arguably possible that some user
*wants* the literal ^M chars when e.g. assigning to a register:
:let @a='<C-R>b'
To avoid that risk, keep the old behavior and only omit the last ^M.
This makes `yy:<C-R>0` nicer at no cost.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
^M isn't any more "correct" than space: the "technically correct"
interpretation is to execute the first line that is seen (and this is
what happens on middle-click paste in Vim). ^M is only intended to
defuse the newline, so that the user can review the command. We can do
that with a space instead, and then the command can be executed without
having to fix it up first.
|
| |/ /
| | |
| | |
| | |
| | | |
Return 1 for UNIX with a functioning clipboard provider.
Closes #6103
|