| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
Problem: :const cannot be followed by "| endif".
Solution: Check following command for :const. (closes vim/vim#5269)
Also fix completion after :const.
https://github.com/vim/vim/commit/8f76e6b12b958f2779444a92234bbaf3f49eeb99
|
|
|
|
| |
Also simplify error messages when calling lua from vimL.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Multiple Debian builds were failing these tests:
Failures:
From test_environ.vim:
Found errors in Test_external_env():
function RunTheTest[37]..Test_external_env line 16: Expected '' but got 'FOO=null\n'
Found errors in Test_getenv():
function RunTheTest[37]..Test_getenv line 2: Expected v:null but got v:false
Found errors in Test_setenv():
function RunTheTest[37]..Test_setenv line 5: Expected v:null but got 'null'
This is because nvim has a separate tag (`v_special`) in `typval_T` for
special variables, whereas vim re-uses the `v_number` tag.
On little-endian architectures, using the incorrect tag is not an issue
because the byte representation is the same. However, on big-endian
systems this caused the `v_number == kSpecialVarNull` checks to fail,
and the non-special code to execute.
|
|
|
|
|
|
| |
Problem: Unpack assignment in function not recognized.
Solution: Skip over "[a, b]". (closes vim/vim#5051)
https://github.com/vim/vim/commit/1e673b9eb686459bd0e7fc3f2199dd077546a18e
|
|
|
|
|
|
| |
Problem: Searchit() has too many arguments.
Solution: Move optional arguments to a struct. Add the "wrapped" argument.
https://github.com/vim/vim/commit/92ea26b925a0835badb0af2d5887238a4198cabb
|
|
|
|
|
|
|
|
| |
Problem: Heredoc assignment not skipped in if block.
Solution: Check if "skip" is set.
https://github.com/vim/vim/commit/b1ba9abcb385b0a5355788a7eefef78ec68d2f65
Fixes https://github.com/neovim/neovim/issues/11264
|
|
|
|
|
|
| |
Problem: Heredoc with trim not properly handled in function.
Solution: Allow for missing indent. (FUJIWARA Takuya, closes vim/vim#4713)
https://github.com/vim/vim/commit/ecaa75b4cea329a3902b8565e028b32279b8322b
|
|
|
|
|
|
|
| |
Problem: Heredoc assignment has no room for new features. (FUJIWARA Takuya)
Solution: Require the marker does not start with a lower case character.
(closes vim/vim#4705)
https://github.com/vim/vim/commit/24582007294b0db3be9669d3b583ea45fc4f19b8
|
|
|
|
|
|
|
| |
Problem: Script line numbers are not exactly right.
Solution: Handle heredoc and continuation lines better. (Ozaki Kiichi,
closes vim/vim#4611, closes vim/vim#4511)
https://github.com/vim/vim/commit/bc2cfe4672d370330b8698d4d025697a9a6ec569
|
|
|
|
|
|
|
| |
Problem: :let-heredoc does not trim enough.
Solution: Trim indent from the contents based on the indent of the first
line. Use let-heredoc in more tests.
https://github.com/vim/vim/commit/e7eb92708ec2092a2fc11e78703b5dcf83844412
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Test fnamemodify()
- Test handling of `expand("%:e:e:r")`.
- Fix :e:e:r on filenames with insufficiently many extensions
During `fnamemodify()`, ensuring that we don't go before the filename's
tail is insufficient in cases where we've already handled a ":e"
modifier, for example:
```
"path/to/this.file.ext" :e:e:r:r
^ ^-------- *fnamep
+------------- tail
```
This means for a ":r", we'll go before `*fnamep`, and outside the bounds
of the filename. This is both incorrect and causes neovim to exit with
an allocation error.
We exit because we attempt to calculate `s - *fnamep` (line 23948).
Since `s` is before `*fnamep`, we caluclate a negative length, which
ends up being interpreted as an amount to allocate, causing neovim to
exit with ENOMEM (`memory.c:xmalloc`).
We must instead ensure we don't go before `*fnamep` nor `tail`.
The check for `tail` is still relevant, for example:
```
"path/to/this.file.ext" :r:r:r
^ ^------------- tail
+--------------------- *fnamep
```
Here we don't want to go before `tail`.
close #11165
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Problem: In :let-heredoc line continuation is recognized.
Solution: Do not consume line continuation. (Ozaki Kiichi, closes vim/vim#4580)
https://github.com/vim/vim/commit/e96a2498f9a2d3e93ac07431f6d4afd77f30afdf
|
| |
| |
| |
| |
| |
| | |
Problem: Some text in heredoc assignment ends the text. (Ozaki Kiichi)
Solution: Recognize "let v =<<" and skip until the end.
https://github.com/vim/vim/commit/8471e57026714c5a0faf89288ceef5231fb88d4f
|
|/
|
|
|
|
| |
Problem: Getting a list of text lines is clumsy.
Solution: Add the =<< assignment. (Yegappan Lakshmanan, closes vim/vim#4386)
https://github.com/vim/vim/commit/f5842c5a533346c4ff41ff666e465c85f1de35d5
|
|
|
|
|
|
|
| |
Problem: Some MB_ macros are more complicated than necessary. (Dominique
Pelle)
Solution: Simplify the macros. Expand inline.
https://github.com/vim/vim/commit/1614a14901558ca091329315d14a7d5e1b53aa47
|
|
|
|
|
|
| |
Problem: Leaking memory when getting item from dict.
Solution: Also free the key when not evaluating.
https://github.com/vim/vim/commit/a893194d91a2942d4d54085d746ed137a9251b69
|
| |
|
|
|
|
|
|
| |
Problem: Not easy to jump to function line from profile.
Solution: Use "file:99" instead of "file line 99" so that "gf" works.
(Daniel Hahler, closes vim/vim#4951)
https://github.com/vim/vim/commit/181d4f58cc421f2e6d3b16333d4cb70d35ad1342
|
|\
| |
| | |
vim-patch:8.0.{1109,1529,1539,1621,1733,1771,1776},8.1.{1783,2054,2058}
|
| |
| |
| |
| |
| |
| | |
Problem: Assert_equalfile() does not close file descriptors. (Coverity)
Solution: Close the file descriptors.
https://github.com/vim/vim/commit/3049418f3dbc571463a04d068069f6c5b7a8ccf1
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Timer causes error on exit from Ex mode. (xtal8)
Solution: save and restore the ex_pressedreturn flag. (Christian Brabandt,
closes vim/vim#2079)
https://github.com/vim/vim/commit/f5291f301e9322545f0621b2157e93050d1d4fb3
|
|/
|
|
|
| |
Problem: assert_fails() does not take a message argument
Solution: Add the argument.
https://github.com/vim/vim/commit/1307d1c003b01b4f67524c95feb07c3d91c7c428
|
|
|
|
|
|
| |
Problem: Assert functions don't return anything.
Solution: Return non-zero when the assertion fails.
https://github.com/vim/vim/commit/65a5464985f980d2bbbf4e14d39d416dce065ec7
|
|
|
|
|
|
|
| |
Problem: Cannot write and read terminal screendumps.
Solution: Add term_dumpwrite(), term_dumpread() and term_dumpdiff().
Also add assert_equalfile().
https://github.com/vim/vim/commit/d96ff165113ce5fe62107add590997660e3d4802
|
|
|
|
|
| |
Given the other type names "jumps", "vars", etc., the name "buflist"
is somewhat unintuitive.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
During a refactor long ago, we changed the `getdigits_*` familiy of
functions to abort on overflow. But this is often wrong, because many
of these codepaths are handling user input.
Solution:
Decide at each call-site whether to use "strict" mode.
fix #5555
|
|
|
|
|
|
| |
fix #3436
Includes:
vim-patch:8.0.1038: strike-through text not supported
|
|
|
|
| |
This avoids getting "stuck". If user actually _wants_ to get stuck
forever, they could use `:sleep` or specify a really big `interval`.
|
|
|
|
|
|
|
|
|
|
|
| |
Vim added more flags for testing yet more dimensions of its Python
situation. Handle those in eval_has_provider().
vim-patch:8.0.1436: not enough information about what Python version may work
Problem: Not enough information about what Python version may work.
Solution: Add "python_compiled", "python3_compiled", "python_dynamic" and
"python3_dynamic" values for has().
ref: https://github.com/neovim/neovim/pull/10942#issuecomment-529479500
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Problem: Memory error when profiling a function without a script ID.
Solution: Check for missing script ID. (closes vim/vim#4877)
https://github.com/vim/vim/commit/163588005da3a240e49416093d0d0251951d60a1
|
| |
| |
| |
| |
| |
| | |
Problem: Reloading a script gives errors for existing functions.
Solution: Allow redefining a function once when reloading a script.
https://github.com/vim/vim/commit/ded5f1bed7ff2d138b3ee0f9610d17290b62692d
|
| |
| |
| |
| |
| |
| | |
Problem: Function profile doesn't specify where it was defined.
Solution: Show the script name and line number.
https://github.com/vim/vim/commit/4c7b08f6409349cf5324a26f7523c438590550ef
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Cannot get the script line number when executing a function.
Solution: Store the line number besides the script ID. (Ozaki Kiichi,
closes vim/vim#3362) Also display the line number with ":verbose set".
https://github.com/vim/vim/commit/f29c1c6aa3f365c025890fab5fb9efbe88eb1761
|
| |
| |
| |
| | |
vim-patch:8.1.1645: cannot use a popup window for a balloon
|
|\ \
| |/
|/| |
Check got_int in msg_multiline_attr with ex_echo
|
| |
| |
| |
| | |
Ref: https://github.com/neovim/neovim/pull/10926#discussion_r320706446
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: If a job exits while waiting on another job, the on_exit
handler is queued but f_jobwait() skips it.
Solution: Always do process_wait(), so that handlers are run during
f_jobwait().
fix #8302
Test case:
$ BUSTED_ARGS="--repeat=2000 --no-keep-going" TEST_FILE=test/functional/core/job_spec.lua TEST_FILTER=waiting make functionaltest
Failure example (macOS CI):
FAILED test/functional/core/job_spec.lua: jobs jobwait will run callbacks while waiting
test/functional/core/job_spec.lua:606: Expected objects to be the same.
Passed in:
(table: 0x1be77c80) {
[1] = 'notification'
[2] = 'wait'
*[3] = {
*[1] = 3 } }
Expected:
(table: 0x1be77d10) {
[1] = 'notification'
[2] = 'wait'
*[3] = {
*[1] = 4 } }
stack traceback:
test/functional/core/job_spec.lua:606: in function <test/functional/core/job_spec.lua:583
|
|
|
|
|
|
|
| |
Problem: No comma after last enum item.
Solution: Add a few commas to check if this works for all compilers. Also
add a few // comments.
https://github.com/vim/vim/commit/ea3ece405ab55f44018257bd2f5021231af8e87f
|
| |
|
|
|
|
| |
closes #10362
|
|
|
|
|
|
|
|
| |
add proper msg_set_pos event, delet win_scroll_over_*
make compositor click through unfocusable grids
add MsgArea attribute for the message/cmdline area, and add docs and tests
|
|
|
|
|
|
| |
Problem: "safe" argument of call_vim_function() is always FALSE.
Solution: Remove the argument.
https://github.com/vim/vim/commit/ded27a1febda3db7447958b60a7d791af514d124
|
|
|
|
|
|
| |
Problem: May crash when out of memory.
Solution: Initialize v_type to VAR_UNKNOWN. (Dominique Pelle, closes vim/vim#4871)
https://github.com/vim/vim/commit/c507a2d164cfa3dcf31a7ba9dad6663a17243bb4
|
|
|
|
|
|
|
|
| |
Problem: Ml_get errors after using append(). (Alex Genco)
Solution: Do not update the cursor twice.
https://github.com/vim/vim/commit/d20070274c47668560e02db184e1f8e456c3c326
fix #10847
|
|\
| |
| | |
vim-patch:7.4.1407,8.1.1111
|