| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
Neovim already removed `evim` (or any similar flags). The 'insertmode'
option is a weird remnant, so get rid of it.
The 'insertmode' option is replaced with a script that closely emulates
the option. This script is documented at :help 'insertmode'
|
|\
| |
| | |
vim-patch:8.2.{4996.5002}: setbufline(), deletebufline() may change Visual selection
|
| |
| |
| |
| |
| |
| | |
Problem: deletebufline() may change Visual selection.
Solution: Disable Visual mode when using another buffer. (closes vim/vim#10469)
https://github.com/vim/vim/commit/9b2edfd3bf2f14a1faaee9b62930598a2e77a798
|
| |
| |
| |
| |
| |
| | |
Problem: setbufline() may change Visual selection. (Qiming Zhao)
Solution: Disable Visual mode when using another buffer. (closes vim/vim#10466)
https://github.com/vim/vim/commit/0ad00a7fd3e0389f565876521e395c35144d8009
|
|/
|
|
|
|
|
| |
(#18709)
Problem: Checking translations affects the search pattern history.
Solution: Use "keeppatterns". (Doug Kearns)
https://github.com/vim/vim/commit/8a3704723c40779d688ef957dbe5bd8b65c25f95
|
|
|
|
|
|
|
| |
Detaching the process seems to have unintended side effects on Windows,
so only do it by default on non-Windows platforms.
Ref: https://github.com/neovim/nvim-lspconfig/issues/1907
Closes https://github.com/neovim/nvim-lspconfig/pull/1913
|
| |
|
|
|
|
|
| |
Uncrustify is the source of truth where possible.
Remove any redundant checks from clint.py.
See also https://github.com/neovim/neovim/pull/18563
|
|\
| |
| | |
fix(winbar): allow winbar to display a ruler
|
| | |
|
| | |
|
|\ \
| |/
|/| |
docs(extmark): remove message about passing in id=0
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The docs for `nvim_buf_set_extmark` mention that you can create a new
extmark when passing in `id=0`, however if you do this you'll get an
error since the code checks that id is positive.
```
id is not a positive integer
```
This change re-words the sentence to make it clearer.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
If there are floating windows when `:mksession` runs, the session cannot
be properly restored.
Solution:
Change `:mksession` to skip floating windows. This matches Vim's
treatment of popup windows.
An alternative approach could have `:mksession` save floating windows
that can be _properly_ restored (rather than skip them entirely, which
is what this PR does). While that would seemingly be a more complete
fix, that could present additional issues since floating windows are
ordinarily created by plugins, and they may no longer be properly under
a plugin's control when restored.
closes #18432
|
|\ \
| | |
| | | |
fix(tests): fix some issues with ui/inccommand_spec.lua causing slowness
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
from ~30 to ~20 secs with ASAN build
- feedkeys test: the same substitute was repeated, and not even correctly spelled
- don't clear() in a tight loop. "bwipe!" is enough to erase undo history
- error in cnoremap mapping causes a check_for_delay(). <c-c> it away.
|
| | |
| | |
| | |
| | | |
This will prevent a failure for backported PRs as they use a different
commit message.
|
|\ \ \
| |/ /
|/| | |
fix(ci): remove 2000ms blocking wait in many plugin/lsp_spec.lua tests
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Cuts down typical run time for `plugin/lsp_spec.lua`
from 70 secs to 12 secs in ASAN CI build.
This happens in ASAN/EXIT_FREE builds where nvim waits 2000ms due to
unclosed handled. I wasn't able to pin-point the exact cause.
But these tests ran in nested context where two server/client pairs
were setup for no good reason. Moving these tests out so only one client
is being setup fixed the exit hang.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
fold (#18694)
Problem: With 'foldmethod' "indent" some lines are not included in the
fold. (Oleg Koshovetc)
Solution: Fix it. (Brandon Simmons, closes vim/vim#10399, closes vim/vim#3214)
https://github.com/vim/vim/commit/d98e75e23666c159c7e00bcf5b6ad9a933bb0534
|
| | | |
|
|\ \ \
| | | |
| | | | |
fix(tests): fix some screen.lua warnings
|
| | | | |
|
| |/ /
|/| |
| | | |
It's not relevant and clutters the documentation.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: smart/C/lisp indenting is optional, which makes the code more
complex, while it only reduces the executable size a bit.
Solution: Graduate FEAT_CINDENT, FEAT_SMARTINDENT and FEAT_LISP.
https://github.com/vim/vim/commit/8e145b82464a21ee4fdf7948f04e2a1d505f8bfa
|
| | |
| | |
| | |
| | |
| | | |
Problem: After deletion a small fold may be closable.
Solution: Check for a reverse range. (Brandon Simmons, closes vim/vim#10457)
https://github.com/vim/vim/commit/3fcccf94e8bc142d2c79c3b62087145896df6b36
|
|\ \ \
| | | |
| | | | |
vim-patch:8.1.0535,8.2.4991: increment/decrement might get interrupted by updating folds
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: No test for hwat patch 8.1.0535 fixes.
Solution: Add a test. (closes vim/vim#10462)
https://github.com/vim/vim/commit/93c1573dd284dc9cf5ed9265a0143aaf520d2920
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Increment/decrement might get interrupted by updating folds.
Solution: Disable fold updating for a moment. (Christian Brabandt,
closes vim/vim#3599)
https://github.com/vim/vim/commit/6b731886ca94d66b9bdedfb7e603af44a6400399
|
|\ \ \
| |/ /
|/| | |
feat(ui): clear message history explicitly with msg_history_clear event
|
|/ / |
|
| |
| |
| |
| | |
This will fix the `check-single-includes` check which started failing
after https://github.com/neovim/neovim/pull/18663/.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Uncrustify is the source of truth where possible.
Remove any redundant checks from clint.py.
See also https://github.com/neovim/neovim/pull/18563
Closes https://github.com/neovim/neovim/issues/17763
|
| |
| |
| |
| |
| |
| |
| | |
This lint job will ensure that the C codebase is properly formatted at
all times. This helps eliminate most of clint.py.
To save CI time, it's faster to manually compile uncrustify and cache
the binary instead of using homebrew (the apt-get package is too old).
|
| |
| |
| |
| | |
USE_WCHAR_FUNCTIONS is never defined and we don't trust libc wchar
functions anyway.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
fs_init() must be called before early_init() in init/helpers.lua
If I run 'make unittest' on my Mac (macOS 10.14/Mojave or 12/Big Sur, intel
CPU), every test produce a core dump.
Call sequence in the core is:
early_init() main.c:197
set_init_1() option.c:508
runtimepath_default() runtime.c:1205
get_lib_dir() runtime.c:1175
os_isdir() fs.c:137
os_getperm() fs.c:777
os_stat() fs.c:761
fs_loop_lock() fs.c:72
uv_mutex_lock(&fs_loop_mutex) thread.c:352
abort()
.deps/build/src/libuv/src/unix/thread.c:
void uv_mutex_lock(uv_mutex_t* mutex) {
if (pthread_mutex_lock(mutex))
abort(); // line 352
}
So pthread_mutex_lock(&fs_loop_mutex) failed. The reason seems to be simple.
fs_init() was not called and fs_loop_mutex has not been initialized. fs_init()
was moved out from early_init() in main.c by
b87867e69e94d9784468a126f21c721446f080de, but unit/helpers.lua was not updated
accordingly.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
Neovim currently falls in the 100 kLOC - 500 kLOC bucket, which can scan
3x/day.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The earlier vsnprintf() call checks whether str->items is NULL, sets of
the "possible NULL" spidey sense. kv_ensure_space() guarantees
str->items is non-NULL but since it doesn't use NULL checks to decide
whether to alloc, static analyzers can't tell this code path is safe.
|
| | |
| | |
| | |
| | |
| | | |
user is passed in by the caller, which we internally copy. We should be
freeing our copy, not the caller's string.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
register_cfunc allocates a ufunc_T, but doesn't store the pointer
anywhere before returning. The uf_name member variable is stored in a
hashtable and used to lookup the ufunc_T later, but that's too much for
Coverity to track.
Adding the annotation ensures that any new callers to register_cfunc
don't pop up as new "leaks" in the Coverity scans.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Coverity was reporting false positives, particularly around for non-NUL
terminated strings around uses of xmemdupz(). The updated model
ensures Coverity understands xmemdupz allocates an extra byte and sets it
to NUL as well as the main details of our other allocation related
wrappers.
|
|\ \ \
| | | |
| | | | |
fix: prevent crash when statusline expression sets value of 'winbar'
|
| | | |
| | | |
| | | |
| | | | |
Closes #18649
|
| | | | |
|