| Commit message (Collapse) | Author | Age |
... | |
|\
| |
| | |
Dedicated message grid.
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Use shell-test.c to avoid the squishiness of system shells.
- Use screen:expect_unchanged() to avoid hardcoded (brittle) test.
Fails correctly if 5020daa6e5ce is reverted (remove terminal_check(),
restore redraw() in refresh_timer_cb()):
[ ERROR ] test/functional/ui/inccommand_spec.lua @ 2550: :substitute with inccommand during :terminal activity
test/functional/helpers.lua:402:
retry() attempts: 2
test/functional/ui/screen.lua:579: Row 8 did not match.
Expected:
|foo bar baz |
|bar baz fox |
|bar foo baz |
|{15:~ }|
|{15:~ }|
|{15:~ }|
|{11:[No Name] [+] }|
|*26: xxx |
|27: xxx |
|28: xxx |
|29: xxx |
|30: xxx |
| |
|{10:term }|
|:%s/foo/ZZZ^ |
Actual:
|foo bar baz |
|bar baz fox |
|bar foo baz |
|{15:~ }|
|{15:~ }|
|{15:~ }|
|{11:[No Name] [+] }|
|*107: xxx |
|108: xxx |
|109: xxx |
|110: xxx |
|111: xxx |
| |
|{10:term }|
|:%s/foo/ZZZ^ |
|
| |
|
|
|
|
|
|
|
|
|
| |
Otherwise cursor and redraw code for normal and insert mode will not run. The
"tickle" workaround was used for this instead, and can now be removed.
The builtin vim.lua got the name
[string "-- Nvim-Lua stdlib: thevimmodule (:help l..."]
in error messages. Fix it to something reasonable.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Before:
[ ERROR ] test/functional/helpers.lua @ 812: after_each
test/helpers.lua:156: assertion failed!
stack traceback:
test/helpers.lua:156: in function 'check_logs'
test/functional/helpers.lua:816: in function <test/functional/helpers.lua:812>
|
|
|
|
|
|
|
|
|
| |
REP_NODELAY was added because REP delayed too much. This changes REP to
only add a delay on every 100th line instead.
This helps to cover the additional pulse steps with
out_data_decide_throttle, which would have required to change
REP_NODELAY anyway.
|
|
|
|
|
|
| |
Some terminals helpfully translate \n to \r.
fix #10872
ref #10223
|
|
|
|
|
|
| |
Extending the original TAP handler was not working as expected.
This adds a new function for displaying the log.
Ref: https://github.com/neovim/neovim/pull/10876
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is better practice in general, and allows to remove the "helptags
ALL" hacks.
Ref: https://github.com/neovim/neovim/issues/8824
Ref: https://github.com/neovim/neovim/commit/f1b67c3453c
* Makefile: fix dependencies with regard to helptags
- use the file as the main target to avoid unnecessary triggering
- use "make oldtest" on Travis to ensure it gets built
|
|
|
|
|
|
|
|
| |
- Introduce TRY_WRAP() until we have an *architectural* solution.
- TODO: bfredl idea: prepare error-handling at "top level" (nv_event).
- nvim_paste(): Revert luaeval() hack (see parent commit).
- With TRY_WRAP() in nvim_put(), 'nomodifiable' error now correctly
"bubbles up".
|
|
|
|
|
|
|
|
| |
- nvim_paste(): Marshal through luaeval() instead of nvim_execute_lua()
because the latter seems to hide some errors.
- Handle 'nomodifiable' in `nvim_put()` explicitly.
- Require explicit `false` from `vim.paste()` in order to "cancel",
otherwise assume true ("continue").
|
| |
|
|
|
|
|
|
|
|
| |
- Show error only once per "paste stream".
- Drain remaining chunks until phase=3.
- Lay groundwork for "cancel".
- Constrain semantics of "cancel" to mean "client must stop"; it is
unrelated to presence of error(s).
|
|
|
|
|
|
| |
- Normal-mode redo idiom(?): prepend "i" and append ESC.
- Insert-mode only needs AppendToRedobuffLit().
- Cmdline-mode: only paste the first line.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Workaround this failure:
[ ERROR ] test/functional/terminal/tui_spec.lua @ 192: TUI paste: exactly 64 bytes
test/functional/helpers.lua:403:
retry() attempts: 478
test/functional/terminal/tui_spec.lua:201: Expected objects to be the same.
Passed in:
(table: 0x47cd77e8) {
*[1] = 'zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz endz' }
Expected:
(table: 0x47cd7830) {
*[1] = 'zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz end' }
This happens because `curwin->w_cursor.col` is sometimes decremented at
the end of `do_put`... because the editor is in Normal-mode instead of
the expected Insert-mode.
Caused by "typeahead race" (#10826): there may be queued input in the
main thread not yet processed, thus the editor mode (`State` global)
will be "wrong" during paste. Example: input "i" followed immediately by
a paste sequence:
i<start-paste>...<stop-paste>
^
"i" does not get processed in time, so the editor is in
Normal-mode instead of Insert-mode while handling the paste.
Attempted workarounds:
- vim.api.nvim_feedkeys('','x',false) in vim._paste()
- exec_normal() in tinput_wait_enqueue()
- LOOP_PROCESS_EVENTS(&main_loop,…,0) in tinput_wait_enqueue()
ref #10826
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixes strange behavior where sometimes the buffer contents of a series
of paste chunks (vim._paste) would be out-of-order.
Now the tui_spec.lua screen-tests are much more reliable. But they still
sometimes fail because of off-by-one cursor (caused by "typeahead race"
resulting in wrong mode; fixed later in this patch-series).
|
| |
|
|
|
|
| |
This is "readfile()-style", see also ":help channel-lines".
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Flush input before entering, not only when leaving, paste mode. Else
there could be pending input which will erroneously be sent to the paste
handler.
|
| |
|
|
|
|
|
| |
It was increased in dd21cd2a4 to avoid flakiness, but takes 1s then always.
This specifies a shorter timeout again, uisng `load_adjust`.
|
|
|
|
| |
Ref: https://github.com/neovim/neovim/pull/10672#issuecomment-524716824
|
|
|
| |
Fixes #10838
|
|
|
| |
Fixes https://github.com/neovim/neovim/issues/10829.
|
|
|
|
|
|
| |
Problem: The a: dict is not immutable as documented.
Solution: Make the a:dict immutable, add a test. (Ozaki Kiichi, Yasuhiro
Matsumoto, closes vim/vim#3929)
https://github.com/vim/vim/commit/31b816042fca879b11965ddd75287732563ba698
|
|\
| |
| | |
tests: improve escaping of special chars, forward all sanitizer options
|
| | |
|
|/
|
|
|
|
| |
Ref: https://github.com/neovim/neovim/pull/10768#discussion_r315904175
Co-Authored-By: Justin M. Keyes <justinkz@gmail.com>
|
|\
| |
| | |
tests: timer_spec: lower timeout, avoids flakiness
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Inspired by quickbuild failure, where `g:val` was increased already:
20:07:04,227 INFO - not ok 1164 - timers works with repeat two
20:07:04,227 INFO - # test/functional/eval/timer_spec.lua @ 36
20:07:04,227 INFO - # Failure message: test/functional/eval/timer_spec.lua:38: Expected objects to be the same.
20:07:04,227 INFO - # Passed in:
20:07:04,227 INFO - # (number) 1
20:07:04,227 INFO - # Expected:
20:07:04,227 INFO - # (number) 0
20:07:04,227 INFO - # stack traceback:
20:07:04,227 INFO - # test/functional/eval/timer_spec.lua:38: in function <test/functional/eval/timer_spec.lua:36>
Uses a pattern of `eq()`ing `timer_start` and `g:val` in the same `eval`
call, and decreases timeouts in general.
Improves runtime from ~5s to <2s.
|
|\ \
| | |
| | | |
Minor: .gitignore, improve test assertion message
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was overlooked in 8072f085d2ed.
Analogous to 8a782f1699e2.
fix #10668
ref 8072f085d2ed #9884
ref 8a782f1699e2 #2377
|
|/
|
|
| |
Set a shorter `&matchtime` (instead of asserting the default), and do
not sleep - `screen:expect` will do that (wait for it).
|
| |
|
| |
|