| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
| |
We don't want to retry autoload sourcing (slow) for every random has()
query that finds it way to eval_call_provider().
|
|
|
|
|
| |
Value of 1 cannot be used, because users might set that in their vimrc
to _disable_ a provider, which would confuse :checkhealth and has().
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of deciding provider status in eval_has_provider, move the
decision to the provider Vim scripts.
Previously, provider loading worked as follows:
1. eval_has_provider() verified provider availability by searching for
the provider#providername#Call function and cached this verificaion as a static
variable for some providers
2. providers short-circuited on loading to prevent the definition of the
Call function (with the exception of the node provider that did not)
This commit changes the expected interface between nvim and its
providers to facilitate provider reloading, by splitting the
verification of the provider from the availability of the Call function.
eval_has_provider() now checks for a provider#providername#enabled
variable. It is up to the provider script to set this to 0 or 1
accordingly. eval_call_provider() remains unchanged.
All providers hosting a Call function were updated to respect this.
The clipboard provider now has a Reload function to reload the
provider.
|
|
|
|
|
|
|
|
|
|
| |
- process_stop: do not close stdin explicitly. The "close stdin" step was from
aa9cb48, before we fixed/reworked the SIGTERM timing logic. So it's probably
outdated / no longer needed.
- win: jobstop: exit_code 15
GetExitCodeProcess appears to return the used signal.
https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-getexitcodeprocess
ref #10573
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Stopping a job does not work properly on OpenBSD.
Solution: Do not use getpgid() to check the process group of the job
processs ID, always pass the negative process ID to kill().
(George Koehler, closes vim/vim#3656)
https://github.com/vim/vim/commit/76ab4fd61901090e6af3451ca6c5ca0fc370571f
Ref: https://github.com/neovim/neovim/issues/9704
Ref: https://github.com/neovim/neovim/issues/10182#issuecomment-514450069
Closes https://github.com/neovim/neovim/pull/10660
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: When user tries to exit with CTRL-C message is confusing.
Solution: Only mention ":qa!" when there is a changed buffer. (closes vim/vim#4163)
https://github.com/vim/vim/commit/a84a3dd6635fcd2e07f510cba6a999585dcc381a
vim-patch:8.1.1052: test for CTRL-C message sometimes fails
Problem: test for CTRL-C message sometimes fails
Solution: Make sure there are no changed buffers.
https://github.com/vim/vim/commit/553e5a5c568e7d175b65b0472cd6d9843b25f4c8
vim-patch:8.1.1053: warning for missing return statement
Problem: Warning for missing return statement. (Dominique Pelle)
Solution: Add return statement.
https://github.com/vim/vim/commit/d6c3f1fa2b5e1dd7dc87cf608d72b84ad696b58f
|
|
|
|
|
|
| |
Problem: delete-with-register dispatches TextYankPost before updating yank registers
Solution: Add flag to op_yank().
Fixes #10225
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Problem: No mode char for terminal mapping from maparg().
Solution: Check for TERMINAL mode. (closes vim/vim#4735)
https://github.com/vim/vim/commit/14371ed69778107654e39268d0d90982e53ad6e0
|
|/
|
|
|
|
| |
Initially done in 28e59cb22, but does not appear to be necessary
anymore.
Uses UV_EEXIST directly, just like UV_ENOENT.
|
| |
|
| |
|
| |
|
|
|
|
| |
Ref: https://github.com/neovim/neovim/pull/10580#issuecomment-514884092
|
|
|
|
|
|
|
| |
Fixes https://github.com/neovim/neovim/issues/10574.
Keeps 'can be called recursively' pending for now, see
https://github.com/neovim/neovim/pull/10580#issuecomment-515295571.
|
|
|
|
|
|
|
| |
Windows: Using fopen() directly may need UTF-16 filepath conversion. To
achieve that, os_fopen() goes through os_open().
fix #10586
|
|\
| |
| |
| |
| | |
close #9930
close #10051
|
|/ |
|
|
|
|
|
|
| |
This is meant to help with test failures where e.g. `busted` itself might
crash or get killed.
Ref: https://github.com/neovim/neovim/issues/10182#issuecomment-514450069
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For unknown reasons it does not have the trailing space in `:args`
output there anymore:
[ FAILED ] test/functional\ex_cmds\arg_spec.lua @ 11: :argument does not restart :terminal buffer
test/functional\ex_cmds\arg_spec.lua:25: Expected objects to be the same.
Passed in:
(string) '
[term://.//4552:C:\Windows\system32\cmd.exe]'
Expected:
(string) '
[term://.//4552:C:\Windows\system32\cmd.exe] '
stack traceback:
test/functional\ex_cmds\arg_spec.lua:25: in function <test/functional\ex_cmds\arg_spec.lua:11>
The test is not about that though, and this can be made less strict by
using `trim()`. The new test in `test_arglist.vim` for no trailing
newline is OK, and contains trailing spaces. So this is likely due to
the length of it exceeding the column width already.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: ":args" output is hard to read.
Solution: Make columns with the names if the output is more than one line.
https://github.com/vim/vim/commit/5d69da462f584a3aefb3427b127334bf9af3a4b0
vim-patch:8.0.1740: warning for signed-unsigned incompatibility
Problem: Warning for signed-unsigned incompatibility.
Solution: Change type from "char *" to "char_u *". (John Marriott)
https://github.com/vim/vim/commit/405dadb63ea2b7aa4c8c659807506a35a8a9504c
Removes ported legacy test that was re-added later.
Ref: https://github.com/neovim/neovim/pull/10147#issuecomment-512609513
|
|
|
|
|
|
| |
Do not sleep before collecting initial state.
Ref: https://github.com/neovim/neovim/pull/10550#issuecomment-513670205
|
|
|
| |
Ref: https://github.com/neovim/neovim/pull/4874
|
| |
|
|
|
|
| |
Ref: https://github.com/neovim/neovim/issues/10179
Ref: https://github.com/neovim/neovim/pull/9494
|
|
|
|
|
|
| |
Benefits:
- less lines, especially less results when grepping
- makes it clearer what is exported
|
|
|
|
|
|
|
|
|
|
|
|
| |
Windows: In order for jobstart(['foo']), system(['foo']) to find
"foo.cmd", we must replace "foo" with "foo.cmd" before sending `argv` to
process_spawn().
Rationale: jobstart([…]), system([…]) "executable" semantics should be
consistent with the VimL executable() function.
fix #9569
related: #10554
|
|
|
|
|
|
| |
Typically most shell output is the result of non-trivial work, so it
would not blast stdout instantaneously. To more closely simulate that
typical scenario, change `shell-test REP` to wait 1 millisecond between
iterations.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Factor `get_snapshot()` out of `print_snapshot()`, so that callers can
get a table (for use with `expect()`) instead of the string form.
Try to use this to fix indeterminism in `searchhl_spec.lua`.
- Since the screen state is collected by `screen:expect_unchanged()`,
we don't need a deterministic initial state (which would then be
hardcoded into the test). This allows us to check "did anything
change in the last N ms?" rather than "did anything change compared
to a hardcoded screen-state?"
- This may end up fruitless, because `expect_unchanged()` depends on
timing to wait for an initial "current state".
|
|
|
| |
fix #10534
|
|
|
|
|
|
|
|
|
| |
For "backwards" duration, reltimefloat() should return negative value
like its counterpart reltimestr().
ref bab24a88ab48
ref 06af88cd72ea
ref #10521
fix #10452
|
|
|
|
| |
- test/README.md: document luassert `TableFormatLevel`
- CONTRIBUTING.md: absorb parts of the old "Development tips" wiki page
|
|
|
|
|
|
|
|
| |
It would previously fail with `set shell=sh` (no slash).
For the test itself we can just use a non-existing (fake) shell, because
it is only about the verbose output.
Ref: https://github.com/neovim/neovim/issues/9330
|
|
|
|
|
|
|
|
|
|
|
| |
* tests: move "busted" dir to "test"
It is used for outputHandlers only, and clearly belongs to the tests.
Use the full module name with the `-o` option to `busted` then for
clarity.
* luacheck
* test/busted/outputHandlers/TAP.lua: use/extend upstream
|
|
|
|
|
|
|
| |
Also fix V576: use width specification
> Incorrect format. Consider checking the third actual argument of the
> 'sscanf' function. It's dangerous to use string specifier without width
> specification. Buffer overflow is possible.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- reltimestr(): Produce negative value by comparing the unsigned
proftime_T value to INT64_MAX.
https://github.com/neovim/neovim/issues/10452#issuecomment-511155132
1. The interfaces of nearly all platforms return uint64_t. INT64_MAX is
only half of that.
2. Low-level interfaces like this typically define that there is no
fixed starting point. The only guarantees are that it's (a)
monotonically increasing at a rate that (b) matches real time.
ref 06af88cd72ea
fix #10452
|
|\
| |
| | |
highlight: expose builtin highlight groups using hl_group_set event
|
| | |
|
| |
| |
| | |
Fixes https://github.com/neovim/neovim/issues/3757.
|
| |
| |
| |
| |
| |
| |
| |
| | |
* Fix problem that 1byte extra memory was allocated in is_executable_in_path
* Revert "Revert "tests: executable_spec: enable pending test #10443" (#10454)"
This reverts commit 13fbeda0e56db36aeeb865bb5b33d13f69b2fdbc.
|
|\ \
| |/
|/| |
messages: fix missing newlines in execute("syn list").
|
| | |
|
|/
|
|
|
|
|
|
|
| |
The interaction between 'winblend' and doublewidth chars in the background
does not look very good. But check no chars get incorrectly placed
at least.
Also check that hidden EndOfBuffer region (from style="minimal") blends
correctly.
|
|
|
|
|
|
|
| |
The inspect modules is vendored as `vim.inspect`, and therefore it makes
sense to use this in tests also.
Ref: https://github.com/neovim/neovim/issues/6580
Ref: https://github.com/neovim/neovim/commit/bb3aa824b
|
|\
| |
| | |
ui: implement better redrawdebug for the compositor
|
| | |
|
|\ \
| | |
| | | |
compositor: handle float overlapping left half of doublewidth char
|