| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
- 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).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
HACK: The cursor does not get repositioned after the paste completes.
Scheduling a dummy event seems to fix it.
Test case:
0. Revert this commit.
1. Paste some text in Normal-mode.
2. Notice the cursor is still in the cmdline area.
|
| |
| |
| |
| |
| |
| | |
- 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
|
| |
| |
| |
| |
| |
| | |
- Send `phase` parameter to the paste handler.
- Redraw at intervals and when paste terminates.
- Show "..." throbber during paste to indicate activity.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| | |
- Define in Lua so that it is compiled-in (available with `-u NONE`).
TODO: Eventually we will want a 'pastefunc' option or some other way to
override the default paste handler.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| | |
ref #10808
|
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|/ |
|
|
|
|
|
|
|
|
| |
This is required for `CMAKE_CXX_COMPILER` to be set already, not only
after including third-party/cmake/BuildGperf.cmake.
Closes https://github.com/neovim/neovim/pull/10860.
Ref: 31f879983f
|
|\
| |
| | |
vim-patch:8.1.{1930,1931}
|
| |
| |
| |
| |
| |
| | |
Problem: Syntax test fails.
Solution: Add new javascriptreact type to completions.
https://github.com/vim/vim/commit/ea7a08a53ea0e8b4fe1592d9ae4d8f581fef46f8
|
|/
|
|
|
|
|
| |
Problem: Cannot recognize .jsx and .tsx files.
Solution: Recognize them as javascriptreact and typescriptreact.
(closes vim/vim#4830)
https://github.com/vim/vim/commit/92852cee3fcff1dc6ce12387b234634e73267b22
|
|
|
| |
In edit.c insert_execute calls ins_compl_addfrommatch
|
|
|
|
|
| |
It was increased in dd21cd2a4 to avoid flakiness, but takes 1s then always.
This specifies a shorter timeout again, uisng `load_adjust`.
|
|
|
|
|
|
| |
Problem: Some source files are not in a normal encoding.
Solution: Convert hangulin.c from euc-kr to utf-8 and digraph.c from latin1
to utf-8. (Daniel Hahler, closes vim/vim#4731)
https://github.com/vim/vim/commit/4119309d70c7fc32637e77f2e84c185ad1768892
|
| |
|
|\
| |
| | |
findoption_len: treat viminfo/viminfofile as aliases
|
| |
| |
| |
| |
| |
| | |
Problem: :mkvimrc is not tested.
Solution: Add a test.
https://github.com/vim/vim/commit/8750026a7f6b445c43adc990141a3fe92d680b62
|
| |
| |
| |
| | |
Ref: https://github.com/neovim/neovim/pull/10672#issuecomment-524716824
|
| |
| |
| |
| | |
Ref: https://github.com/neovim/neovim/issues/10302
Fixes https://github.com/neovim/neovim/issues/9071.
|
|/
|
|
|
| |
Problem: Cursorline not redrawn when putting a line above the cursor.
Solution: Redraw when the curor line is below a change. (closes vim/vim#4862)
https://github.com/vim/vim/commit/c2b97643a82bb9fbd202312dac4aa995f92e9e5b
|
|\
| |
| | |
vim-patch:7.4.1407,8.1.1111
|
| |
| |
| |
| |
| |
| | |
Problem: It is not easy to check for infinity.
Solution: Add isinf(). (Ozaki Kiichi, closes vim/vim#3787)
https://github.com/vim/vim/commit/fda1bff39f89775b20a2d88ef3903656d52f66ad
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: json_encode() does not handle NaN and inf properly. (David
Barnett)
Solution: For JSON turn them into "null". For JS use "NaN" and "Infinity".
Add isnan().
https://github.com/vim/vim/commit/f1b6ac72293e658bb6e68c5cfd926c405b1b6f34
|
| |
| |
| |
| |
| | |
Problem: Not easy to compute the space on the command line.
Solution: Add v:echospace. (Daniel Hahler, closes vim/vim#4732)
https://github.com/vim/vim/commit/37f4cbd46f5a6f2dd3a48d5fa4324dce37e4bd6c
|
|\ \
| | |
| | | |
vim-patch:8.1.{1757,1924}
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Using empty string for current buffer is unexpected.
Solution: Make the argument optional for bufname() and bufnr().
https://github.com/vim/vim/commit/a8eee21e75324d199acb1663cb5009e03014a13a
|
| |/
| |
| |
| |
| |
| | |
Problem: Text added with appendbufline() to another buffer isn't displayed.
Solution: Update topline. (partly by Christian Brabandt, closes vim/vim#4718)
https://github.com/vim/vim/commit/298466629119eda501cfdf7824797f05045e67ca
|