| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
| |
Problem: Crash when dumping profiling data.
Solution: Reset flag indicating that initialization was done.
https://github.com/vim/vim/commit/79c2ad50b8069bbb3281bcabe412bd6641756724
|
|\
| |
| | |
screen: disable redrawing inside VimResized
|
| |
| |
| |
| |
| |
| | |
Note: test doesn't fail on master. I cannot reproduce the glitches with
-u NONE, probably it requires interfering events. But add some coverage
for these checks at least.
|
|/
|
|
|
|
|
| |
ext_message doesn't set msg_col. Add a space and let client deal with
wrapping. When using silent redirect show the unwrapped message form.
Removed check is already part of msg_advance()
|
|\
| |
| | |
Improve luacheck integration, fix more issues.
|
| |
| |
| |
| |
| |
| |
| |
| | |
- Move .luacheckrc to root, add read_globals=vim
- Simplify lualint target, run it on all lua files
- Lint preload.lua, but ignore W211
- Remove testlint target, included in lualint (and lint)
- Clean up .luacheckrc
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
| |
Fix issue that increment expression is executable and pointer ext
pointing out of the buffer, if the pointer ext points to the terminating
NUL.
* Change termination condition judgment to one place
* Change first condition judgment
Change to not evaluate *(ext -1) in the first condition judgment.
* Change to use copy_option_part instead of STRLCPY
|
| |
|
|
|
| |
ref #6289
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Revert "oldtests: win: keep set dir=/"
This reverts commit 714e0f8bf05cc6febcbcd8cbcbe5f119c37a14b0.
* test/old: set swap directory to non-existent drive
Appveyor uses Administrator user so it can write anywhere in C:\\.
Neovim creates a directory for the swap file
if the directory does not exist.
D:\\ is the backup/recovery drive so use F:\\ invoke error E303.
|
|\
| |
| | |
api/lua: make nvim_execute_lua use native lua floats, not special tables
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rationale: the purpose of nvim_execute_lua is to simply call lua code with lua
values. If a lua function expects a floating point value, it should be enough
to specify a float as argument to nvim_execute_lua.
However, make sure to preserve the existing roundtripping behavior of
API values when using `vim.api` functions. This is covered by existing
lua/api_spec.lua tests.
|
|/
|
|
|
| |
- position might get invalid with "longest" match
- position might be wrong when completed pattern ends in "/"
|
|\
| |
| | |
luv callbacks: throw error on deferred methods instead of crashing
|
| |
| |
| |
| |
| | |
This avoids initializing libluv a second time if a plugin invokes
require'luv'. It is probably not an issue, but better to be safe.
|
| |
| |
| |
| |
| | |
Disable the use of deferred API functions in a fast lua callback
Correctly display error messages from a fast lua callback
|
| | |
|
|/
|
| |
Introduce os_file_settime(), remove cruft.
|
|
|
| |
No need to do this so frequently.
|
|
|
| |
ref #10278 #10279 #10353
|
|
|
|
|
|
|
|
|
|
|
| |
This matches Vim behavior. From `:help :ls` :
R a terminal buffer with a running job
F a terminal buffer with a finished job
? a terminal buffer without a job: `:terminal NONE`
TODO: implement `:terminal NONE`.
ref #10349
|
|
|
|
|
|
|
|
|
| |
Keeps using add_definitions for compatibility with older CMake.
Newer CMake (3.12) would have `add_compile_definitions`, but it is not
required, since `add_defitions` was meant to be used for
compile/preprocessor definitions initially anyway.
Ref: https://github.com/neovim/neovim/pull/4389
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Performance of high-resolution time (clock_gettime via uv_hrtime) is
expensive on some systems. For profiling VimL, syntax, etc., we don't
care about nanosecond-precision and monotonicity edge-cases, so avoid
uv_hrtime().
closes #10328
From the uv__hrtime() source:
https://github.com/libuv/libuv/blob/0cdb4a5b4b706d0e09413d9270da28f9a88dc083/src/unix/linux-core.c#L442-L462
/* Prefer CLOCK_MONOTONIC_COARSE if available but only when it has
* millisecond granularity or better. CLOCK_MONOTONIC_COARSE is
* serviced entirely from the vDSO, whereas CLOCK_MONOTONIC may
* decide to make a costly system call.
*/
This micro-benchmark (Debug build) shows negligible differences on my
system:
#include <sys/time.h>
...
proftime_T tm = profile_start();
int trials = 999999;
int64_t t = 0;
struct timeval tv;
for (int i = 0; i < trials; i++) {
t += gettimeofday(&tv,NULL);
}
tm = profile_end(tm);
ILOG("%d trials of gettimeofday: %s", trials, profile_msg(tm));
tm = profile_start();
for (int i = 0; i < trials; i++) {
t += os_hrtime();
}
tm = profile_end(tm);
ILOG("%d trials of os_hrtime: %s", trials, profile_msg(tm));
tm = profile_start();
for (int i = 0; i < trials; i++) {
t += os_utime();
}
tm = profile_end(tm);
ILOG("%d trials of os_utime: %s", trials, profile_msg(tm));
ILOG("%zu", t);
|
|
|
|
|
|
|
|
| |
Problem: Search test can be flaky.
Solution: Use WaitFor() instead of a delay. Make it possible to pass a
funcref to WaitFor() to avoid the need for global variables.
(James McCoy, closes vim/vim#2282)
https://github.com/vim/vim/commit/13deab8d08145c1f6e2a3e82cb547bc7f87a3686
|
|
|
|
|
|
|
| |
Problem: Incremental search only shows one match.
Solution: When 'incsearch' and and 'hlsearch' are both set highlight all
matches. (haya14busa, closes vim/vim#2198)
https://github.com/vim/vim/commit/2e51d9a0972080b087d566608472928d5b7b35d7
|
|
|
|
|
|
|
| |
Problem: :wall gives an errof for a terminal window. (Marius Gedminas)
Solution: Don't try writing a buffer that can't be written. (Yasuhiro
Matsumoto, closes vim/vim#2190)
https://github.com/vim/vim/commit/059db5c29ffef283a4b90bab9228708fa32e3dd2
|
|
|
|
|
|
| |
Problem: :tm means :tmap instead of :tmenu. (Taro Muraoka)
Solution: Move the new entry below the old entry. (closes vim/vim#2102)
https://github.com/vim/vim/commit/63c4e8a1986796094e6f15b893f2deccdf482617
|
|
|
|
|
|
|
| |
Problem: Stuck in redraw loop when 'lazyredraw' is set.
Solution: Don't loop on update_screen() when not redrawing. (Yasuhiro
Matsumoto, closes vim/vim#2082)
https://github.com/vim/vim/commit/072412ed45aa20a67aaa7e387d7f6bf59c7d3fbe
|
|
|
|
|
|
|
|
| |
Problem: A terminal window with a running job behaves different from a
window containing a changed buffer.
Solution: Do not set 'bufhidden' to "hide". Fix that a buffer where a
terminal used to run is listed as "[Scratch]".
https://github.com/vim/vim/commit/e561a7e2fa511d643c9692d26f4cf65378fd1983
|
|
|
|
|
|
| |
Problem: Cannot recognize a terminal buffer in :ls output.
Solution: Use R for a running job and F for a finished job.
https://github.com/vim/vim/commit/304b64c9e6957fa3f552e0540ca786139b39a1c4
|
|\
| |
| | |
eval/api: don't allow the API to be called in the sandbox
|
| |
| |
| |
| |
| | |
Identifying and maintaining a "secure" subset of the API would be too
much busywork. So just disable the entire thing.
|
|\ \
| | |
| | | |
vim-patch:8.0.1688,8.1.1593
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Some macros are used without a semicolon, causing auto-indent to be
wrong.
Solution: Use the do-while(0) trick. (Ozaki Kiichi, closes vim/vim#2729)
https://github.com/vim/vim/commit/6f4700233fd925fe122b851f937929fb5e5da707
|
| |/
| |
| |
| |
| |
| |
| | |
Problem: Filetype not detected for C++ header files without extension.
Solution: Recognize the file by the Emacs file mode. (Dmitry Ilyin,
closes vim/vim#4593)
https://github.com/vim/vim/commit/6a7af8e2dbcb768a768831d9e6355c855c215ebc
|
|\ \
| | |
| | | |
cmdline: remove invalid cmdline_show event when aborting mapping
|
| |/ |
|
|/ |
|
| |
|
|
|
|
| |
Also add `hi blend=` attribute to override transparency of indiviual attributes.
|
|
|
|
|
|
| |
Problem: Using freed memory when joining line with text property.
Solution: Use already computed length.
https://github.com/vim/vim/commit/787880a86dbcb79cdf6e8241b1d99ac4a7acbc09
|
|
|
|
|
|
| |
Problem: C syntax test still fails when using gvim.
Solution: Clear Normal cterm highlighting instead of setting it.
https://github.com/vim/vim/commit/6acadda8d60892ddf06449f1cc4286912b0c0c2b
|
|
|
|
|
|
| |
Problem: There is no hint that syntax is disabled for 'redrawtime'.
Solution: Add a message.
https://github.com/vim/vim/commit/0a6efcd27d62935c465b4406c0c0db9be10a0ddb
|
|
|
|
|
|
| |
Problem: May access freed memory when syntax HL times out. (Philipp Gesang)
Solution: Clear b_sst_first when clearing b_sst_array.
https://github.com/vim/vim/commit/95892c27b242cdbc78e622c7a861a4e15aec7a30
|
|\
| |
| | |
vim-patch:8.0.{1479,1480,1482},8.1.1055
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Using feedkeys() does not work to test Insert mode completion.
(Lifepillar)
Solution: Do not check for typed keys when executing :normal or feedkeys().
Fix thesaurus completion not working when 'complete' is empty.
https://github.com/vim/vim/commit/02ae9b4a93deea4993d7abe20485f91f1cce5e36
|
| |
| |
| |
| |
| |
| | |
Problem: Patch missing change.
Solution: Add missing change.
https://github.com/vim/vim/commit/0562532c2eee6205d225aa1dc7e3e89af0dfd990
|
| |
| |
| |
| |
| |
| | |
Problem: Insert mode completion state is confusing.
Solution: Move ctrl_x_mode into edit.c. Add CTRL_X_NORMAL for zero.
https://github.com/vim/vim/commit/bc0e9adae9c253f36803665180e4b576d1e725ab
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: CTRL-G U in Insert mode doesn't work to avoid splitting the undo
sequence for shift-left and shift-right.
Solution: Also check dont_sync_undo for shifted cursor keys. (Christian
Brabandt)
https://github.com/vim/vim/commit/75bf3d22f42684beecd977f3185e98045b5c33d9
|